Add Kubernetes Images for Kolla-Kubernetes
These images are intended to be used with standard Kubernetes deployment tooling. They are included with Kolla to allow operators to chose the OS Base image that is used in their environments, and provides Ceph PV support. Implements: blueprint add-kubernetes-images Change-Id: Ifb84a2b9458d071679e1e55679653d702624d702
This commit is contained in:
parent
26fb747b0a
commit
d3565b426e
12
docker/kube/kube-apiserver/Dockerfile.j2
Normal file
12
docker/kube/kube-apiserver/Dockerfile.j2
Normal file
@ -0,0 +1,12 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
|
||||
MAINTAINER {{ maintainer }}
|
||||
|
||||
ENV KUBERNETES_COMPONENT=kube-apiserver
|
||||
|
||||
RUN true \
|
||||
&& curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
|
||||
&& chmod +x /usr/bin/${KUBERNETES_COMPONENT}
|
||||
|
||||
# Clear any customisation by Kolla to entrypoint & command
|
||||
ENTRYPOINT []
|
||||
CMD []
|
6
docker/kube/kube-base/Dockerfile.j2
Normal file
6
docker/kube/kube-base/Dockerfile.j2
Normal file
@ -0,0 +1,6 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
|
||||
MAINTAINER {{ maintainer }}
|
||||
|
||||
ENV KUBERNETES_VERSION=v1.5.1
|
||||
|
||||
ENV KUBERNETES_DOWNLOAD_ROOT=https://storage.googleapis.com/kubernetes-release/release/${KUBERNETES_VERSION}/bin/linux/amd64
|
25
docker/kube/kube-controller-manager/Dockerfile.j2
Normal file
25
docker/kube/kube-controller-manager/Dockerfile.j2
Normal file
@ -0,0 +1,25 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
|
||||
MAINTAINER {{ maintainer }}
|
||||
|
||||
ENV KUBERNETES_COMPONENT=kube-controller-manager
|
||||
|
||||
{% import "macros.j2" as macros with context %}
|
||||
|
||||
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
|
||||
{% set ceph_support_packages = [
|
||||
'ceph-common'
|
||||
] %}
|
||||
{% elif base_distro in ['ubuntu', 'debian'] %}
|
||||
{% set ceph_support_packages = [
|
||||
'ceph-common'
|
||||
] %}
|
||||
{% endif %}
|
||||
{{ macros.install_packages(ceph_support_packages | customizable("packages")) }}
|
||||
|
||||
RUN true \
|
||||
&& curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
|
||||
&& chmod +x /usr/bin/${KUBERNETES_COMPONENT}
|
||||
|
||||
# Clear any customisation by Kolla to entrypoint & command
|
||||
ENTRYPOINT []
|
||||
CMD []
|
13
docker/kube/kube-discovery/Dockerfile.j2
Normal file
13
docker/kube/kube-discovery/Dockerfile.j2
Normal file
@ -0,0 +1,13 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
|
||||
MAINTAINER {{ maintainer }}
|
||||
|
||||
ENV KUBERNETES_COMPONENT=kube-discovery
|
||||
|
||||
# To match upstream we load the binary to /usr/local/bin
|
||||
RUN true \
|
||||
&& curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/local/bin/${KUBERNETES_COMPONENT} \
|
||||
&& chmod +x /usr/local/bin/${KUBERNETES_COMPONENT}
|
||||
|
||||
# Clear any customisation by Kolla to entrypoint & command
|
||||
ENTRYPOINT []
|
||||
CMD []
|
12
docker/kube/kube-proxy/Dockerfile.j2
Normal file
12
docker/kube/kube-proxy/Dockerfile.j2
Normal file
@ -0,0 +1,12 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
|
||||
MAINTAINER {{ maintainer }}
|
||||
|
||||
ENV KUBERNETES_COMPONENT=kube-proxy
|
||||
|
||||
RUN true \
|
||||
&& curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
|
||||
&& chmod +x /usr/bin/${KUBERNETES_COMPONENT}
|
||||
|
||||
# Clear any customisation by Kolla to entrypoint & command
|
||||
ENTRYPOINT []
|
||||
CMD []
|
12
docker/kube/kube-scheduler/Dockerfile.j2
Normal file
12
docker/kube/kube-scheduler/Dockerfile.j2
Normal file
@ -0,0 +1,12 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
|
||||
MAINTAINER {{ maintainer }}
|
||||
|
||||
ENV KUBERNETES_COMPONENT=kube-scheduler
|
||||
|
||||
RUN true \
|
||||
&& curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
|
||||
&& chmod +x /usr/bin/${KUBERNETES_COMPONENT}
|
||||
|
||||
# Clear any customisation by Kolla to entrypoint & command
|
||||
ENTRYPOINT []
|
||||
CMD []
|
@ -0,0 +1,12 @@
|
||||
---
|
||||
prelude: |
|
||||
Kolla-Kubernetes by default uses Ceph for stateful storage. With
|
||||
Kubernetes 1.5 support was added for Ceph dynamic volume provisioning as
|
||||
requested by claims made against the API server. The images supplied
|
||||
by Google do not include the RBD binary that is required to support this
|
||||
feature.
|
||||
features:
|
||||
- Add Kubernetes control pane images with Ceph RBD support.
|
||||
issues: |
|
||||
These images will need to be retagged by operators to use with standard
|
||||
Kubernetes deployment tooling such as kubeadm.
|
Loading…
Reference in New Issue
Block a user