Merge remote-tracking branch 'upstream/master' into maas-region-cleanup
This commit is contained in:
commit
705650c7d3
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -10,7 +10,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -10,7 +10,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -11,7 +11,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -21,35 +21,3 @@
|
||||
{{- $wtf := $context.Template.Name | replace $last $name -}}
|
||||
{{- include $wtf $context | sha256sum | quote -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- define "dep-check-init-cont" -}}
|
||||
{{- $envAll := index . 0 -}}
|
||||
{{- $deps := index . 1 -}}
|
||||
{
|
||||
"name": "init",
|
||||
"image": {{ $envAll.Values.images.dep_check | quote }},
|
||||
"imagePullPolicy": {{ $envAll.Values.images.pull_policy | quote }},
|
||||
"env": [
|
||||
{
|
||||
"name": "NAMESPACE",
|
||||
"value": "{{ $envAll.Release.Namespace }}"
|
||||
},
|
||||
{
|
||||
"name": "INTERFACE_NAME",
|
||||
"value": "eth0"
|
||||
},
|
||||
{
|
||||
"name": "DEPENDENCY_SERVICE",
|
||||
"value": "{{ include "joinListWithColon" $deps.service }}"
|
||||
},
|
||||
{
|
||||
"name": "DEPENDENCY_JOBS",
|
||||
"value": "{{ include "joinListWithColon" $deps.jobs }}"
|
||||
},
|
||||
{
|
||||
"name": "COMMAND",
|
||||
"value": "echo done"
|
||||
}
|
||||
]
|
||||
}
|
||||
{{- end -}}
|
||||
|
49
common/templates/snippets/_k8s_init_dep_check.tpl
Normal file
49
common/templates/snippets/_k8s_init_dep_check.tpl
Normal file
@ -0,0 +1,49 @@
|
||||
{{- define "dep_check_init_cont" -}}
|
||||
{{- $envAll := index . 0 -}}
|
||||
{{- $deps := index . 1 -}}
|
||||
{
|
||||
"name": "init",
|
||||
"image": {{ $envAll.Values.images.dep_check | quote }},
|
||||
"imagePullPolicy": {{ $envAll.Values.images.pull_policy | quote }},
|
||||
"env": [
|
||||
{
|
||||
"name": "POD_NAME",
|
||||
"valueFrom": {
|
||||
"fieldRef": {
|
||||
"APIVersion": "v1",
|
||||
"fieldPath": "metadata.name"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "NAMESPACE",
|
||||
"valueFrom": {
|
||||
"fieldRef": {
|
||||
"APIVersion": "v1",
|
||||
"fieldPath": "metadata.namespace"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "INTERFACE_NAME",
|
||||
"value": "eth0"
|
||||
},
|
||||
{
|
||||
"name": "DEPENDENCY_SERVICE",
|
||||
"value": "{{ include "joinListWithColon" $deps.service }}"
|
||||
},
|
||||
{
|
||||
"name": "DEPENDENCY_JOBS",
|
||||
"value": "{{ include "joinListWithColon" $deps.jobs }}"
|
||||
},
|
||||
{
|
||||
"name": "DEPENDENCY_DAEMONSET",
|
||||
"value": "{{ include "joinListWithColon" $deps.daemonset }}"
|
||||
},
|
||||
{
|
||||
"name": "COMMAND",
|
||||
"value": "echo done"
|
||||
}
|
||||
]
|
||||
}
|
||||
{{- end -}}
|
51
docs/README.md
Normal file
51
docs/README.md
Normal file
@ -0,0 +1,51 @@
|
||||
# Openstack-Helm Documentation
|
||||
|
||||
|
||||
## Table of Contents
|
||||
|
||||
## 1. [Openstack-Helm Design Principals]()
|
||||
### 1.1 [Mission]()
|
||||
##### 1.1.1 [Resiliency]()
|
||||
##### 1.1.2 [Scaling]()
|
||||
### 1.2 [Helm Overrides]()
|
||||
##### 1.2.1 [Resource Limits]()
|
||||
##### 1.2.2 [Conditionals]()
|
||||
### 1.3 [Init-Containers]()
|
||||
##### 1.3.1 [Dependency Checking]()
|
||||
### 1.4 [Kubernetes Jobs]()
|
||||
##### 1.4.1 [Service Registration]()
|
||||
##### 1.4.2 [User Registration]()
|
||||
##### 1.4.3 [Database Creation]()
|
||||
##### 1.4.4 [Database Migration]()
|
||||
### 1.5 [Complimentary Efforts]()
|
||||
#### 1.5.1 [Image-Based Project Considerations]()
|
||||
### 1.6 [Kubernetes State]()
|
||||
#### 1.6.1 [Third Party Resources]()
|
||||
#### 1.6.2 [Add-Ons]()
|
||||
## 2. [Repository Structure]()
|
||||
### 2.1 [Infrastructure Components]()
|
||||
### 2.2 [Openstack-Helm Core Services]()
|
||||
### 2.3 [Openstack-Helm Add-Ons]()
|
||||
## 3. [Operator Resources]()
|
||||
### 3.1 [Installation](https://github.com/att-comdev/openstack-helm/blob/master/docs/installation/getting-started.md)
|
||||
### 3.2 [Openstack-Helm Chart Definition Overrides]()
|
||||
### 3.2 [Openstacak-Helm Upgrades]()
|
||||
## 4. [Openstack-Helm Networking]()
|
||||
### 4.1 [Kubernetes Control Plane]()
|
||||
#### 4.1.1 [CNI SDN Considerations]()
|
||||
#### 4.1.2 [Calico Networking]()
|
||||
### 4.2 [Ingress Philosophy]()
|
||||
### 4.3 [Openstack Networking]()
|
||||
#### 4.3.1 [Flat Networking]()
|
||||
#### 4.3.1 [L2 Networking]()
|
||||
## 5. [Security Guidelines]()
|
||||
### 5.1 [Network Policies]()
|
||||
### 5.2 [Advanced Network Policies]()
|
||||
### 5.3 [Role-Based Access Controls]()
|
||||
### 5.4 [Security Contexts]()
|
||||
### 5.5 [Security Add-Ons]()
|
||||
## 6. [Developer Resources](https://github.com/att-comdev/openstack-helm/tree/master/docs/developer)
|
||||
### 6.1 [Contributions and Guidelines]()
|
||||
### 6.2 [Development Tools]()
|
||||
#### 6.2.1 [Minikube Development](https://github.com/att-comdev/openstack-helm/blob/master/docs/developer/minikube.md)
|
||||
### 6.3 [Tips and Considerations]()
|
@ -3,7 +3,9 @@
|
||||
Community development is extremely important to us. As an open source development team, we want the development of Openstack-Helm to be an easy experience. Please evaluate, and make recommendations. We want developers to feel welcome to contribute to this project. Below are some instructions and suggestions to help you get started.
|
||||
|
||||
# Requirements
|
||||
We've tried to minimize the number of prerequisites required in order to get started. The main prerequisite is to install the most recent versions of Minikube and Helm.
|
||||
We've tried to minimize the number of prerequisites required in order to get started. For most users, the main prerequisites are to install the most recent versions of Minikube and Helm. For fresh installations, you may also need to install a Hypervisor that works for your system (that is supported by [Minikube](https://kubernetes.io/docs/getting-started-guides/minikube/#requirements)).
|
||||
|
||||
**Kubectl:** Download and install the version of [`kubectl`](https://kubernetes.io/docs/getting-started-guides/kubectl/) that matches your Kubernetes deployment.
|
||||
|
||||
**Kubernetes Minikube:**
|
||||
Ensure that you have installed a recent version of [Kubernetes/Minikube](http://kubernetes.io/docs/getting-started-guides/minikube/).
|
||||
@ -19,6 +21,58 @@ $ chmod 700 get_helm.sh
|
||||
$ ./get_helm.sh
|
||||
```
|
||||
|
||||
# TLDR;
|
||||
|
||||
If your environment meets all of the prerequisites above, you can simply use the following commands:
|
||||
|
||||
```
|
||||
# Clone the project:
|
||||
$ git clone https://github.com/att-comdev/openstack-helm.git && cd openstack-helm
|
||||
|
||||
# Get a list of the current tags:
|
||||
$ git tag -l
|
||||
0.1.0
|
||||
|
||||
# Checkout the tag you want to work with (if desired, or use master for development):
|
||||
$ git checkout 0.1.0
|
||||
|
||||
# Start a local Helm Server:
|
||||
$ helm serve &
|
||||
|
||||
# You may need to change these params for your environment. Look up use of --iso-url if needed:
|
||||
$ minikube start \
|
||||
--network-plugin=cni \
|
||||
--kubernetes-version v1.5.1 \
|
||||
--disk-size 40g \
|
||||
--memory 16384 \
|
||||
--cpus 4 \
|
||||
--vm-driver kvm \
|
||||
--iso-url=https://storage.googleapis.com/minikube/iso/minikube-v1.0.4.iso
|
||||
|
||||
# Deploy a CNI/SDN:
|
||||
kubectl create -f http://docs.projectcalico.org/v2.0/getting-started/kubernetes/installation/hosted/calico.yaml
|
||||
|
||||
# Initialize Helm/Deploy Tiller:
|
||||
$ helm init
|
||||
|
||||
# Package the Openstack-Helm Charts, and push them to your local Helm repository:
|
||||
$ make
|
||||
|
||||
# Label the Minikube as an Openstack Control Plane node:
|
||||
$ kubectl label nodes openstack-control-plane=enabled --all --namespace=openstack
|
||||
|
||||
# Deploy each chart:
|
||||
$ helm install --name mariadb --set development.enabled=true local/mariadb --namespace=openstack
|
||||
$ helm install --name=memcached local/memcached --namespace=openstack
|
||||
$ helm install --name=rabbitmq local/rabbitmq --namespace=openstack
|
||||
$ helm install --name=keystone local/keystone --namespace=openstack
|
||||
$ helm install --name=cinder local/cinder --namespace=openstack
|
||||
$ helm install --name=glance local/glance --namespace=openstack
|
||||
$ helm install --name=heat local/heat --namespace=openstack
|
||||
$ helm install --name=nova local/nova --namespace=openstack
|
||||
$ helm install --name=neutron local/neutron --namespace=openstack
|
||||
$ helm install --name=horizon local/horizon --namespace=openstack
|
||||
```
|
||||
|
||||
# Getting Started
|
||||
|
||||
|
@ -26,7 +26,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -18,7 +18,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -3,21 +3,21 @@
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: glance-init
|
||||
name: glance-db-init
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
{{ .Values.labels.node_selector_key }}: {{ .Values.labels.node_selector_value }}
|
||||
containers:
|
||||
- name: glance-init
|
||||
image: {{ .Values.images.init }}
|
||||
- name: glance-db-init
|
||||
image: {{ .Values.images.db_init }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
env:
|
||||
- name: ANSIBLE_LIBRARY
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -16,9 +16,9 @@ labels:
|
||||
node_selector_value: enabled
|
||||
|
||||
images:
|
||||
db_init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
db_sync: quay.io/stackanetes/stackanetes-glance-api:newton
|
||||
api: quay.io/stackanetes/stackanetes-glance-api:newton
|
||||
init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
registry: quay.io/stackanetes/stackanetes-glance-registry:newton
|
||||
post: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.1.0
|
||||
@ -75,7 +75,7 @@ misc:
|
||||
dependencies:
|
||||
api:
|
||||
jobs:
|
||||
- glance-init
|
||||
- glance-db-init
|
||||
- glance-db-sync
|
||||
- keystone-db-sync
|
||||
service:
|
||||
@ -83,7 +83,7 @@ dependencies:
|
||||
- mariadb
|
||||
registry:
|
||||
jobs:
|
||||
- glance-init
|
||||
- glance-db-init
|
||||
- glance-db-sync
|
||||
- keystone-db-sync
|
||||
service:
|
||||
@ -92,9 +92,9 @@ dependencies:
|
||||
- glance-api
|
||||
db_sync:
|
||||
jobs:
|
||||
- keystone-init
|
||||
- keystone-db-init
|
||||
- keystone-db-sync
|
||||
- glance-init
|
||||
- glance-db-init
|
||||
- mariadb-seed
|
||||
service:
|
||||
- mariadb
|
||||
@ -105,10 +105,10 @@ dependencies:
|
||||
- mariadb
|
||||
post:
|
||||
jobs:
|
||||
- glance-init
|
||||
- glance-db-init
|
||||
- glance-db-sync
|
||||
- keystone-db-sync
|
||||
- keystone-init
|
||||
- keystone-db-init
|
||||
- mariadb-seed
|
||||
service:
|
||||
- mariadb
|
||||
@ -116,7 +116,7 @@ dependencies:
|
||||
- glance-api
|
||||
- glance-registry
|
||||
|
||||
# typically overriden by environmental
|
||||
# typically overriden by environmental
|
||||
# values, but should include all endpoints
|
||||
# required by this chart
|
||||
endpoints:
|
||||
@ -138,4 +138,3 @@ endpoints:
|
||||
port:
|
||||
admin: 35357
|
||||
public: 5000
|
||||
|
||||
|
@ -12,7 +12,7 @@ spec:
|
||||
app: heat-api
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -12,7 +12,7 @@ spec:
|
||||
app: heat-cfn
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -12,7 +12,7 @@ spec:
|
||||
app: heat-cloudwatch
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -10,7 +10,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -10,7 +10,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -14,7 +14,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -13,7 +13,7 @@ spec:
|
||||
app: heat-engine
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependecies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependecies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -3,21 +3,21 @@
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: keystone-init
|
||||
name: keystone-db-init
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
{{ .Values.labels.node_selector_key }}: {{ .Values.labels.node_selector_value }}
|
||||
containers:
|
||||
- name: keystone-init
|
||||
image: {{ .Values.images.init }}
|
||||
- name: keystone-db-init
|
||||
image: {{ .Values.images.db_init }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
command:
|
||||
- bash
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependecies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependecies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -10,9 +10,9 @@ labels:
|
||||
node_selector_value: enabled
|
||||
|
||||
images:
|
||||
db_init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
db_sync: quay.io/stackanetes/stackanetes-keystone-api:newton
|
||||
api: quay.io/stackanetes/stackanetes-keystone-api:newton
|
||||
init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.1.0
|
||||
pull_policy: "IfNotPresent"
|
||||
|
||||
@ -67,7 +67,7 @@ dependencies:
|
||||
- mariadb
|
||||
db_sync:
|
||||
jobs:
|
||||
- keystone-init
|
||||
- keystone-db-init
|
||||
- mariadb-seed
|
||||
service:
|
||||
- mariadb
|
||||
|
@ -1,3 +1,5 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.dhcp }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: DaemonSet
|
||||
metadata:
|
||||
@ -9,7 +11,10 @@ spec:
|
||||
app: neutron-dhcp-agent
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.agent.dhcp.node_selector_key }}: {{ .Values.labels.agent.dhcp.node_selector_value }}
|
||||
@ -23,25 +28,12 @@ spec:
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
securityContext:
|
||||
privileged: true
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: {{ .Values.network.interface.dhcp | default .Values.network.interface.default }}
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "neutron-dhcp-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/dhcp-agent.ini"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.dhcp.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.dhcp.service }}"
|
||||
- name: DEPENDENCY_DAEMONSET
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.dhcp.daemonset }}"
|
||||
command:
|
||||
- neutron-dhcp-agent
|
||||
- --config-file
|
||||
- /etc/neutron/neutron.conf
|
||||
- --config-file
|
||||
- /etc/neutron/dhcp-agent.ini
|
||||
volumeMounts:
|
||||
- name: neutronconf
|
||||
mountPath: /etc/neutron/neutron.conf
|
||||
@ -61,7 +53,7 @@ spec:
|
||||
mountPath: /var/lib/neutron/openstack-helm
|
||||
- name: resolvconf
|
||||
mountPath: /etc/resolv.conf
|
||||
subPath: resolv.conf
|
||||
subPath: resolv.conf
|
||||
volumes:
|
||||
- name: neutronconf
|
||||
configMap:
|
||||
|
@ -1,3 +1,5 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.l3 }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: DaemonSet
|
||||
metadata:
|
||||
@ -9,7 +11,10 @@ spec:
|
||||
app: neutron-l3-agent
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.agent.l3.node_selector_key }}: {{ .Values.labels.agent.l3.node_selector_value }}
|
||||
@ -23,25 +28,14 @@ spec:
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
securityContext:
|
||||
privileged: true
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: {{ .Values.network.interface.l3 | default .Values.network.interface.default }}
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "neutron-l3-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/l3-agent.ini --config-file /etc/neutron/plugins/ml2/ml2-conf.ini"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.l3.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.l3.service }}"
|
||||
- name: DEPENDENCY_DAEMONSET
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.l3.daemonset }}"
|
||||
command:
|
||||
- neutron-l3-agent
|
||||
- --config-file
|
||||
- /etc/neutron/neutron.conf
|
||||
- --config-file
|
||||
- /etc/neutron/l3-agent.ini
|
||||
- --config-file
|
||||
- /etc/neutron/plugins/ml2/ml2-conf.ini
|
||||
volumeMounts:
|
||||
- name: neutronconf
|
||||
mountPath: /etc/neutron/neutron.conf
|
||||
@ -54,7 +48,7 @@ spec:
|
||||
subPath: l3-agent.ini
|
||||
- name: resolvconf
|
||||
mountPath: /etc/resolv.conf
|
||||
subPath: resolv.conf
|
||||
subPath: resolv.conf
|
||||
- name: runopenvswitch
|
||||
mountPath: /run/openvswitch
|
||||
- name: socket
|
||||
|
@ -1,3 +1,5 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.metadata }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: DaemonSet
|
||||
metadata:
|
||||
@ -9,7 +11,10 @@ spec:
|
||||
app: neutron-metadata-agent
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.agent.metadata.node_selector_key }}: {{ .Values.labels.agent.metadata.node_selector_value }}
|
||||
@ -23,27 +28,14 @@ spec:
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
securityContext:
|
||||
privileged: true
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: {{ .Values.network.interface.metadata | default .Values.network.interface.default }}
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "neutron-metadata-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/metadata-agent.ini"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.metadata.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.metadata.service }}"
|
||||
- name: DEPENDENCY_DAEMONSET
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.metadata.daemonset }}"
|
||||
command:
|
||||
- neutron-metadata-agent
|
||||
- --config-file
|
||||
- /etc/neutron/neutron.conf
|
||||
- --config-file
|
||||
- /etc/neutron/metadata-agent.ini
|
||||
ports:
|
||||
- containerPort: {{ .Values.network.port.metadata }}
|
||||
- containerPort: {{ .Values.network.port.metadata }}
|
||||
volumeMounts:
|
||||
- name: neutronconf
|
||||
mountPath: /etc/neutron/neutron.conf
|
||||
@ -56,7 +48,7 @@ spec:
|
||||
subPath: metadata-agent.ini
|
||||
- name: resolvconf
|
||||
mountPath: /etc/resolv.conf
|
||||
subPath: resolv.conf
|
||||
subPath: resolv.conf
|
||||
- name: runopenvswitch
|
||||
mountPath: /run/openvswitch
|
||||
- name: socket
|
||||
@ -73,10 +65,10 @@ spec:
|
||||
name: neutron-etc
|
||||
- name: resolvconf
|
||||
configMap:
|
||||
name: neutron-etc
|
||||
name: neutron-etc
|
||||
- name: runopenvswitch
|
||||
hostPath:
|
||||
path: /run/openvswitch
|
||||
- name: socket
|
||||
hostPath:
|
||||
path: /var/lib/neutron/openstack-helm
|
||||
path: /var/lib/neutron/openstack-helm
|
||||
|
@ -1,3 +1,5 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.ovs_agent }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: DaemonSet
|
||||
metadata:
|
||||
@ -9,10 +11,13 @@ spec:
|
||||
app: ovs-agent
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.ovs.node_selector_key }}: {{ .Values.labels.ovs.node_selector_value }}
|
||||
{{ .Values.labels.ovs.node_selector_key }}: {{ .Values.labels.ovs.node_selector_value }}
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
dnsPolicy: ClusterFirst
|
||||
@ -23,6 +28,9 @@ spec:
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
securityContext:
|
||||
privileged: true
|
||||
command:
|
||||
- bash
|
||||
- /tmp/neutron-openvswitch-agent.sh
|
||||
# ensures this container can can see a br-int
|
||||
# bridge before its marked as ready
|
||||
readinessProbe:
|
||||
@ -31,23 +39,6 @@ spec:
|
||||
- bash
|
||||
- -c
|
||||
- 'ovs-vsctl list-br | grep -q br-int'
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: {{ .Values.network.interface.openvswitch | default .Values.network.interface.default }}
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "bash /tmp/neutron-openvswitch-agent.sh"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.ovs_agent.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.ovs_agent.service }}"
|
||||
volumeMounts:
|
||||
- name: neutronopenvswitchagentsh
|
||||
mountPath: /tmp/neutron-openvswitch-agent.sh
|
||||
@ -86,4 +77,4 @@ spec:
|
||||
path: /lib/modules
|
||||
- name: run
|
||||
hostPath:
|
||||
path: /run
|
||||
path: /run
|
||||
|
@ -9,10 +9,10 @@ spec:
|
||||
app: ovs-db
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.ovs.node_selector_key }}: {{ .Values.labels.ovs.node_selector_value }}
|
||||
{{ .Values.labels.ovs.node_selector_key }}: {{ .Values.labels.ovs.node_selector_value }}
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
dnsPolicy: ClusterFirst
|
||||
@ -23,19 +23,9 @@ spec:
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
securityContext:
|
||||
privileged: true
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: {{ .Values.network.interface.openvswitch | default .Values.network.interface.default }}
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "bash /tmp/openvswitch-db-server.sh"
|
||||
command:
|
||||
- bash
|
||||
- /tmp/openvswitch-db-server.sh
|
||||
volumeMounts:
|
||||
- name: openvswitchdbserversh
|
||||
mountPath: /tmp/openvswitch-db-server.sh
|
||||
@ -62,4 +52,3 @@ spec:
|
||||
- name: run
|
||||
hostPath:
|
||||
path: /run
|
||||
|
||||
|
@ -9,10 +9,10 @@ spec:
|
||||
app: ovs-vswitchd
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.ovs.node_selector_key }}: {{ .Values.labels.ovs.node_selector_value }}
|
||||
{{ .Values.labels.ovs.node_selector_key }}: {{ .Values.labels.ovs.node_selector_value }}
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
dnsPolicy: ClusterFirst
|
||||
@ -30,19 +30,9 @@ spec:
|
||||
command:
|
||||
- /usr/bin/ovs-vsctl
|
||||
- show
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: {{ .Values.network.interface.openvswitch | default .Values.network.interface.default }}
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "bash /tmp/openvswitch-vswitchd.sh"
|
||||
command:
|
||||
- bash
|
||||
- /tmp/openvswitch-vswitchd.sh
|
||||
volumeMounts:
|
||||
- name: openvswitchvswitchdsh
|
||||
mountPath: /tmp/openvswitch-vswitchd.sh
|
||||
|
@ -1,3 +1,5 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.server }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
@ -11,14 +13,17 @@ spec:
|
||||
rollingUpdate:
|
||||
maxUnavailable: {{ .Values.upgrades.rolling_update.max_unavailable }}
|
||||
maxSurge: {{ .Values.upgrades.rolling_update.max_surge }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: neutron-server
|
||||
annotations:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
{{ .Values.labels.server.node_selector_key }}: {{ .Values.labels.server.node_selector_value }}
|
||||
@ -26,23 +31,12 @@ spec:
|
||||
- name: neutron-server
|
||||
image: {{ .Values.images.server }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: "eth0"
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "neutron-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2-conf.ini"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.server.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.server.service }}"
|
||||
command:
|
||||
- neutron-server
|
||||
- --config-file
|
||||
- /etc/neutron/neutron.conf
|
||||
- --config-file
|
||||
- /etc/neutron/plugins/ml2/ml2-conf.ini
|
||||
ports:
|
||||
- containerPort: {{ .Values.network.port.server }}
|
||||
readinessProbe:
|
||||
|
32
neutron/templates/job-db-init.yaml
Normal file
32
neutron/templates/job-db-init.yaml
Normal file
@ -0,0 +1,32 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.db_init }}
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: neutron-db-init
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
{{ .Values.labels.server.node_selector_key }}: {{ .Values.labels.server.node_selector_value }}
|
||||
containers:
|
||||
- name: neutron-db-init
|
||||
image: {{ .Values.images.db_init }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
command:
|
||||
- bash
|
||||
- /tmp/init.sh
|
||||
volumeMounts:
|
||||
- name: initsh
|
||||
mountPath: /tmp/init.sh
|
||||
subPath: init.sh
|
||||
volumes:
|
||||
- name: initsh
|
||||
configMap:
|
||||
name: neutron-bin
|
@ -1,9 +1,16 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.db_sync }}
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: neutron-db-sync
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
@ -12,24 +19,17 @@ spec:
|
||||
- name: neutron-db-sync
|
||||
image: {{ .Values.images.db_sync }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: "eth0"
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2-conf.ini upgrade head"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.db_sync.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.db_sync.service }}"
|
||||
command:
|
||||
- neutron-db-manage
|
||||
- --config-file
|
||||
- /etc/neutron/neutron.conf
|
||||
- --config-file
|
||||
- /etc/neutron/plugins/ml2/ml2-conf.ini
|
||||
- upgrade
|
||||
- head
|
||||
volumeMounts:
|
||||
- name: pod-etc-neutron
|
||||
mountPath: /etc/neutron
|
||||
- name: neutronconf
|
||||
mountPath: /etc/neutron/neutron.conf
|
||||
subPath: neutron.conf
|
||||
@ -37,6 +37,8 @@ spec:
|
||||
mountPath: /etc/neutron/plugins/ml2/ml2-conf.ini
|
||||
subPath: ml2-conf.ini
|
||||
volumes:
|
||||
- name: pod-etc-neutron
|
||||
emptyDir: {}
|
||||
- name: neutronconf
|
||||
configMap:
|
||||
name: neutron-etc
|
||||
|
@ -1,39 +0,0 @@
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: neutron-init
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
{{ .Values.labels.server.node_selector_key }}: {{ .Values.labels.server.node_selector_value }}
|
||||
containers:
|
||||
- name: neutron-init
|
||||
image: {{ .Values.images.init }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: "eth0"
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "bash /tmp/init.sh"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.init.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.init.service }}"
|
||||
volumeMounts:
|
||||
- name: initsh
|
||||
mountPath: /tmp/init.sh
|
||||
subPath: init.sh
|
||||
volumes:
|
||||
- name: initsh
|
||||
configMap:
|
||||
name: neutron-bin
|
@ -1,9 +1,16 @@
|
||||
{{- $envAll := . }}
|
||||
{{- $dependencies := .Values.dependencies.db_sync }}
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: neutron-post
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
@ -12,23 +19,10 @@ spec:
|
||||
- name: neutron-post
|
||||
image: {{ .Values.images.post }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
command:
|
||||
- bash
|
||||
- /tmp/post.sh
|
||||
env:
|
||||
- name: INTERFACE_NAME
|
||||
value: "eth0"
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: COMMAND
|
||||
value: "bash /tmp/post.sh"
|
||||
- name: DEPENDENCY_JOBS
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.post.jobs }}"
|
||||
- name: DEPENDENCY_SERVICE
|
||||
value: "{{ include "joinListWithColon" .Values.dependencies.post.service }}"
|
||||
- name: ANSIBLE_LIBRARY
|
||||
value: /usr/share/ansible/
|
||||
volumeMounts:
|
||||
|
@ -7,7 +7,7 @@ replicas:
|
||||
server: 1
|
||||
|
||||
images:
|
||||
init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
db_init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
db_sync: quay.io/stackanetes/stackanetes-neutron-server:newton
|
||||
server: quay.io/stackanetes/stackanetes-neutron-server:newton
|
||||
dhcp: quay.io/stackanetes/stackanetes-neutron-dhcp-agent:newton
|
||||
@ -17,7 +17,7 @@ images:
|
||||
openvswitch_db_server: quay.io/attcomdev/openvswitch-vswitchd:latest
|
||||
openvswitch_vswitchd: quay.io/attcomdev/openvswitch-vswitchd:latest
|
||||
post: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
entrypoint: quay.io/stackanetes/kubernetes-entrypoint:v0.1.0
|
||||
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.1.0
|
||||
pull_policy: "IfNotPresent"
|
||||
|
||||
upgrades:
|
||||
@ -39,7 +39,7 @@ labels:
|
||||
dhcp:
|
||||
node_selector_key: openstack-control-plane
|
||||
node_selector_value: enabled
|
||||
l3:
|
||||
l3:
|
||||
node_selector_key: openstack-control-plane
|
||||
node_selector_value: enabled
|
||||
metadata:
|
||||
@ -54,7 +54,7 @@ network:
|
||||
kubernetes_domain: cluster.local
|
||||
# this must list the skydns server first, and in calico
|
||||
# this is consistently 10.96.0.10
|
||||
servers:
|
||||
servers:
|
||||
- 10.96.0.10
|
||||
- 8.8.8.8
|
||||
external_bridge: br-ex
|
||||
@ -62,14 +62,14 @@ network:
|
||||
interface:
|
||||
external: enp12s0f0
|
||||
default: enp11s0f0
|
||||
port:
|
||||
port:
|
||||
server: 9696
|
||||
metadata: 8775
|
||||
|
||||
memcached:
|
||||
memcached:
|
||||
address: "memcached:11211"
|
||||
|
||||
rabbitmq:
|
||||
rabbitmq:
|
||||
address: rabbitmq
|
||||
admin_user: rabbitmq
|
||||
admin_password: password
|
||||
@ -136,7 +136,7 @@ ml2:
|
||||
bridge_mappings:
|
||||
- "physnet1:br-physnet1"
|
||||
|
||||
dependencies:
|
||||
dependencies:
|
||||
server:
|
||||
jobs:
|
||||
- neutron-db-sync
|
||||
@ -151,7 +151,7 @@ dependencies:
|
||||
- rabbitmq
|
||||
- nova-api
|
||||
jobs:
|
||||
- neutron-init
|
||||
- neutron-db-init
|
||||
- nova-post
|
||||
daemonset:
|
||||
- ovs-agent
|
||||
@ -160,7 +160,7 @@ dependencies:
|
||||
- rabbitmq
|
||||
- nova-api
|
||||
jobs:
|
||||
- neutron-init
|
||||
- neutron-db-init
|
||||
- nova-post
|
||||
daemonset:
|
||||
- ovs-agent
|
||||
@ -178,17 +178,17 @@ dependencies:
|
||||
- rabbitmq
|
||||
- nova-api
|
||||
jobs:
|
||||
- nova-init
|
||||
- neutron-init
|
||||
- nova-db-init
|
||||
- neutron-db-init
|
||||
- nova-post
|
||||
daemonset:
|
||||
- ovs-agent
|
||||
db_sync:
|
||||
jobs:
|
||||
- neutron-init
|
||||
- neutron-db-init
|
||||
service:
|
||||
- mariadb
|
||||
init:
|
||||
db_init:
|
||||
jobs:
|
||||
- mariadb-seed
|
||||
service:
|
||||
@ -199,7 +199,7 @@ dependencies:
|
||||
jobs:
|
||||
- neutron-db-sync
|
||||
|
||||
# typically overriden by environmental
|
||||
# typically overriden by environmental
|
||||
# values, but should include all endpoints
|
||||
# required by this chart
|
||||
endpoints:
|
||||
|
@ -13,7 +13,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -13,7 +13,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -22,7 +22,7 @@ spec:
|
||||
configmap-bin-hash: {{ tuple "configmap-bin.yaml" . | include "hash" }}
|
||||
configmap-etc-hash: {{ tuple "configmap-etc.yaml" . | include "hash" }}
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
nodeSelector:
|
||||
|
@ -3,21 +3,21 @@
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: nova-init
|
||||
name: nova-db-init
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
nodeSelector:
|
||||
{{ .Values.labels.control_node_selector_key }}: {{ .Values.labels.control_node_selector_value }}
|
||||
containers:
|
||||
- name: nova-init
|
||||
image: {{ .Values.images.init }}
|
||||
- name: nova-db-init
|
||||
image: {{ .Values.images.db_init }}
|
||||
imagePullPolicy: {{ .Values.images.pull_policy }}
|
||||
command:
|
||||
- bash
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -9,7 +9,7 @@ spec:
|
||||
metadata:
|
||||
annotations:
|
||||
pod.beta.kubernetes.io/init-containers: '[
|
||||
{{ tuple $envAll $dependencies | include "dep-check-init-cont" | indent 10 }}
|
||||
{{ tuple $envAll $dependencies | include "dep_check_init_cont" | indent 10 }}
|
||||
]'
|
||||
spec:
|
||||
restartPolicy: OnFailure
|
||||
|
@ -13,7 +13,7 @@ control_replicas: 1
|
||||
compute_replicas: 1
|
||||
|
||||
images:
|
||||
init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
db_init: quay.io/stackanetes/stackanetes-kolla-toolbox:newton
|
||||
db_sync: quay.io/stackanetes/stackanetes-nova-api:newton
|
||||
api: quay.io/stackanetes/stackanetes-nova-api:newton
|
||||
conductor: quay.io/stackanetes/stackanetes-nova-conductor:newton
|
||||
@ -108,31 +108,31 @@ memcached:
|
||||
|
||||
dependencies:
|
||||
api:
|
||||
jobs:
|
||||
jobs:
|
||||
- keystone-db-sync
|
||||
- nova-init
|
||||
- nova-db-init
|
||||
- nova-db-sync
|
||||
service:
|
||||
- mariadb
|
||||
db_sync:
|
||||
jobs:
|
||||
- nova-init
|
||||
- keystone-init
|
||||
- nova-db-init
|
||||
- keystone-db-init
|
||||
- mariadb-seed
|
||||
service:
|
||||
- mariadb
|
||||
db_sync:
|
||||
jobs:
|
||||
- nova-init
|
||||
- keystone-init
|
||||
- nova-db-init
|
||||
- keystone-db-init
|
||||
- mariadb-seed
|
||||
- keystone-db-sync
|
||||
service:
|
||||
- mariadb
|
||||
post:
|
||||
jobs:
|
||||
- nova-init
|
||||
- keystone-init
|
||||
- nova-db-init
|
||||
- keystone-db-init
|
||||
- mariadb-seed
|
||||
service:
|
||||
- mariadb
|
||||
@ -152,7 +152,7 @@ dependencies:
|
||||
- ovs-agent
|
||||
libvirt:
|
||||
jobs:
|
||||
- nova-init
|
||||
- nova-db-init
|
||||
- nova-post
|
||||
- nova-db-sync
|
||||
service:
|
||||
@ -162,7 +162,7 @@ dependencies:
|
||||
jobs:
|
||||
- mariadb-seed
|
||||
- keystone-db-sync
|
||||
- nova-init
|
||||
- nova-db-init
|
||||
- nova-db-sync
|
||||
service:
|
||||
- mariadb
|
||||
@ -177,7 +177,7 @@ dependencies:
|
||||
service:
|
||||
- mariadb
|
||||
|
||||
# typically overriden by environmental
|
||||
# typically overriden by environmental
|
||||
# values, but should include all endpoints
|
||||
# required by this chart
|
||||
endpoints:
|
||||
|
Loading…
Reference in New Issue
Block a user