aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-01-03 19:24:48 +0000
committerGerrit Code Review <review@openstack.org>2017-01-03 19:24:48 +0000
commitcc0487bf01d2969e354f5b10e9106cb9ec975a42 (patch)
tree556a39c0d55c476d4e1e8c6c891b5b0171d84128
parentabc92ba50bc92bb128d8074286258da17b675347 (diff)
parentd3565b426e5fdf576f2fe8e8cbf1b03533880787 (diff)
downloadkolla-cc0487bf01d2969e354f5b10e9106cb9ec975a42.tar.gz
kolla-cc0487bf01d2969e354f5b10e9106cb9ec975a42.zip
Merge "Add Kubernetes Images for Kolla-Kubernetes"
-rw-r--r--docker/kube/kube-apiserver/Dockerfile.j212
-rw-r--r--docker/kube/kube-base/Dockerfile.j26
-rw-r--r--docker/kube/kube-controller-manager/Dockerfile.j225
-rw-r--r--docker/kube/kube-discovery/Dockerfile.j213
-rw-r--r--docker/kube/kube-proxy/Dockerfile.j212
-rw-r--r--docker/kube/kube-scheduler/Dockerfile.j212
-rw-r--r--releasenotes/notes/add-kubernetes-images-76f5a60e98d09eb7.yaml12
7 files changed, 92 insertions, 0 deletions
diff --git a/docker/kube/kube-apiserver/Dockerfile.j2 b/docker/kube/kube-apiserver/Dockerfile.j2
new file mode 100644
index 000000000..9edd42a5e
--- /dev/null
+++ b/docker/kube/kube-apiserver/Dockerfile.j2
@@ -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 []
diff --git a/docker/kube/kube-base/Dockerfile.j2 b/docker/kube/kube-base/Dockerfile.j2
new file mode 100644
index 000000000..db183171b
--- /dev/null
+++ b/docker/kube/kube-base/Dockerfile.j2
@@ -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
diff --git a/docker/kube/kube-controller-manager/Dockerfile.j2 b/docker/kube/kube-controller-manager/Dockerfile.j2
new file mode 100644
index 000000000..713778c8e
--- /dev/null
+++ b/docker/kube/kube-controller-manager/Dockerfile.j2
@@ -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 []
diff --git a/docker/kube/kube-discovery/Dockerfile.j2 b/docker/kube/kube-discovery/Dockerfile.j2
new file mode 100644
index 000000000..37e5d14dc
--- /dev/null
+++ b/docker/kube/kube-discovery/Dockerfile.j2
@@ -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 []
diff --git a/docker/kube/kube-proxy/Dockerfile.j2 b/docker/kube/kube-proxy/Dockerfile.j2
new file mode 100644
index 000000000..7eafe8fcd
--- /dev/null
+++ b/docker/kube/kube-proxy/Dockerfile.j2
@@ -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 []
diff --git a/docker/kube/kube-scheduler/Dockerfile.j2 b/docker/kube/kube-scheduler/Dockerfile.j2
new file mode 100644
index 000000000..7009b396f
--- /dev/null
+++ b/docker/kube/kube-scheduler/Dockerfile.j2
@@ -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 []
diff --git a/releasenotes/notes/add-kubernetes-images-76f5a60e98d09eb7.yaml b/releasenotes/notes/add-kubernetes-images-76f5a60e98d09eb7.yaml
new file mode 100644
index 000000000..1b25581cc
--- /dev/null
+++ b/releasenotes/notes/add-kubernetes-images-76f5a60e98d09eb7.yaml
@@ -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.