Add cinder control package with kubernetes entrypoint

PS adds cinder control package deployment with kubernetes entrypoint.
Control package includes cinder api and scheduler. Backup microservice
is not included.

Change-Id: I9f0f4c294aaa727b025f4eb1f74a1b1690c6e541
This commit is contained in:
Serguei Bezverkhi 2017-01-24 10:19:13 -05:00
parent 47198e19ac
commit 6f1e940269
6 changed files with 181 additions and 63 deletions

View File

@ -6,7 +6,7 @@
{{- $serviceType := "volume" }}
{{- $description := "Openstack Block Storage" }}
{{- $postfix := "v2" }}
{{- with $env := dict "netHostTrue" $netHostTrue "podTypeBootstrap" $podTypeBootstrap "resourceName" $resourceName "serviceName" $serviceName "serviceType" $serviceType "description" $description "postfix" $postfix "Values" .Values "searchPath" $searchPath }}
{{- with $env := dict "netHostTrue" $netHostTrue "podTypeBootstrap" $podTypeBootstrap "resourceName" $resourceName "serviceName" $serviceName "serviceType" $serviceType "description" $description "postfix" $postfix "Values" .Values "Release" .Release "searchPath" $searchPath }}
{{- include "common_create_keystone_service" $env }}
{{- end }}

View File

@ -0,0 +1,13 @@
name: cinder-control
version: 0.4.0-1
description: Helm chart for cinder control package
keywords:
- openstack
- cinder
- cinder-api
- cinder-scheduler
- cinder-backup
sources:
- http://github.com/openstack
engine: gotpl
#icon: A URL to an SVG or PNG image to be used as an icon (optional). make this point to the new project icons when ready

View File

@ -0,0 +1,43 @@
dependencies:
- name: cinder-api-svc
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-db-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-manage-db-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-service-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-servicev2-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-user-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-endpoint-public-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-endpoint-internal-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-endpoint-admin-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-endpoint-publicv2-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-endpoint-internalv2-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-create-keystone-endpoint-adminv2-job
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-api-deployment
repository: http://localhost:10191
version: 0.4.0-1
- name: cinder-scheduler-statefulset
repository: http://localhost:10191
version: 0.4.0-1

View File

@ -0,0 +1,113 @@
global:
kolla:
all:
kubernetes_entrypoint: true
cinder:
create_db:
job:
dependencies:
service:
- mariadb
manage_db:
job:
dependencies:
service:
- mariadb
jobs:
- cinder-create-db
create_keystone_user:
job:
dependencies:
jobs:
- cinder-create-keystone-service
service:
- keystone-admin
create_keystone_service:
job:
dependencies:
service:
- keystone-admin
create_keystone_servicev2:
job:
dependencies:
service:
- keystone-admin
create_keystone_endpoint:
all:
external_vip: 172.18.0.1
public:
job:
dependencies:
jobs:
- cinder-create-keystone-service
- cinder-create-keystone-user
- cinder-create-keystone-endpoint-internal
- cinder-create-keystone-endpoint-admin
service:
- keystone-admin
internal:
job:
dependencies:
jobs:
- cinder-create-keystone-service
- cinder-create-keystone-user
- cinder-create-keystone-endpoint-admin
service:
- keystone-admin
admin:
job:
dependencies:
jobs:
- cinder-create-keystone-service
- cinder-create-keystone-user
service:
- keystone-admin
publicv2:
job:
dependencies:
jobs:
- cinder-create-keystone-servicev2
- cinder-create-keystone-user
- cinder-create-keystone-endpoint-internalv2
- cinder-create-keystone-endpoint-adminv2
service:
- keystone-admin
internalv2:
job:
dependencies:
jobs:
- cinder-create-keystone-servicev2
- cinder-create-keystone-user
- cinder-create-keystone-endpoint-adminv2
service:
- keystone-admin
adminv2:
job:
dependencies:
jobs:
- cinder-create-keystone-servicev2
- cinder-create-keystone-user
service:
- keystone-admin
api:
deployment:
dependencies:
jobs:
- cinder-create-keystone-endpoint-public
- cinder-create-keystone-endpoint-internal
- cinder-create-keystone-endpoint-admin
- cinder-create-keystone-endpoint-publicv2
- cinder-create-keystone-endpoint-internalv2
- cinder-create-keystone-endpoint-adminv2
- cinder-create-db
- cinder-manage-db
service:
- mariadb
- keystone-admin
svc:
port_external: true
scheduler:
statefulset:
dependencies:
service:
- cinder-api

View File

@ -0,0 +1,4 @@
---
features:
- |
cinder control service package for deployment with kubernetes entrypoint.

View File

@ -80,10 +80,6 @@ helm install kolla/rabbitmq --version $VERSION \
--namespace kolla --name rabbitmq --set "$common_vars" \
--values <(helm_entrypoint_general $1)
helm install kolla/cinder-api-svc --version $VERSION \
--namespace kolla --name cinder-api-svc \
--set "element_name=cinder,port_external=true,external_vip=$IP"
helm install kolla/nova-api-svc --version $VERSION \
--namespace kolla --name nova-api-svc \
--set "element_name=nova,port_external=true,external_vip=$IP"
@ -107,60 +103,25 @@ $DIR/tools/wait_for_pods.sh kolla
$DIR/tools/build_local_admin_keystonerc.sh
. ~/keystonerc_admin
helm install kolla/cinder-create-keystone-service-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-service --set "$common_vars"
helm install kolla/cinder-create-keystone-servicev2-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-servicev2 --set "$common_vars"
helm install kolla/cinder-create-keystone-user-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-user --set "$common_vars"
helm install kolla/nova-create-keystone-user-job --version $VERSION \
--namespace kolla --name nova-create-keystone-user --set "$common_vars"
kollakube res create bootstrap \
nova-create-keystone-endpoint-public
helm install kolla/cinder-create-keystone-endpoint-public-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-endpoint-public --set "$common_vars,external_vip=172.18.0.1"
helm install kolla/cinder-create-keystone-endpoint-publicv2-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-endpoint-publicv2 --set "$common_vars,external_vip=172.18.0.1"
$DIR/tools/wait_for_pods.sh kolla
kollakube res delete bootstrap \
nova-create-keystone-endpoint-public
for x in cinder nova; do
for x in nova; do
helm delete --purge $x-create-keystone-user
done
helm install kolla/cinder-create-db-job --version $VERSION \
--set $common_vars,element_name=cinder \
--namespace kolla \
--name cinder-create-db
helm install kolla/cinder-manage-db-job --version $VERSION \
--set $common_vars,element_name=cinder \
--namespace kolla \
--name cinder-manage-db
kollakube res create bootstrap nova-create-keystone-endpoint-internal \
nova-create-keystone-endpoint-admin
helm install kolla/cinder-create-keystone-endpoint-internal-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-endpoint-internal --set "$common_vars"
helm install kolla/cinder-create-keystone-endpoint-internalv2-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-endpoint-internalv2 --set "$common_vars"
helm install kolla/cinder-create-keystone-endpoint-admin-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-endpoint-admin --set "$common_vars"
helm install kolla/cinder-create-keystone-endpoint-adminv2-job --version $VERSION \
--namespace kolla --name cinder-create-keystone-endpoint-adminv2 --set "$common_vars"
for x in nova nova-api; do
helm install kolla/$x-create-db-job --version $VERSION \
--set $common_vars,element_name=$x --namespace kolla \
@ -188,11 +149,11 @@ $DIR/tests/bin/endpoint_test.sh
[ -d "$WORKSPACE/logs" ] && openstack catalog list > \
$WORKSPACE/logs/openstack-catalog-after-bootstrap.json || true
for x in nova nova-api cinder; do
for x in nova nova-api; do
helm delete --purge $x-create-db
done
for x in nova-api cinder; do
for x in nova-api; do
helm delete --purge $x-manage-db
done
@ -200,36 +161,20 @@ kollakube res delete bootstrap \
nova-create-keystone-endpoint-internal \
nova-create-keystone-endpoint-admin \
for x in cinder; do
helm delete --purge $x-create-keystone-service
helm delete --purge $x-create-keystone-endpoint-public
helm delete --purge $x-create-keystone-endpoint-internal
helm delete --purge $x-create-keystone-endpoint-admin
done
helm delete --purge cinder-create-keystone-servicev2
helm delete --purge cinder-create-keystone-endpoint-publicv2
helm delete --purge cinder-create-keystone-endpoint-internalv2
helm delete --purge cinder-create-keystone-endpoint-adminv2
helm install kolla/cinder-volume-ceph-statefulset --version $VERSION \
--set "$common_vars,element_name=cinder" --namespace kolla \
--name cinder-volume-ceph-statefulset
helm install kolla/cinder-api-deployment --version $VERSION \
--set "$common_vars" --namespace kolla \
--name cinder-api
helm install kolla/cinder-scheduler-statefulset --version $VERSION \
--set "$common_vars,element_name=cinder-scheduler" \
--namespace kolla --name cinder-scheduler
helm install kolla/cinder-control --version $VERSION \
--namespace kolla --name cinder --set "$common_vars,element_name=cinder" \
--values <(helm_entrypoint_general $1)
helm install kolla/glance --version $VERSION \
--namespace kolla --name glance --set "$common_vars,element_name=glance" \
--values <(helm_entrypoint_general $1)
helm install kolla/openvswitch --version $VERSION \
--namespace kolla --name openvswitch --values <(helm_entrypoint_general)
--namespace kolla --name openvswitch --values <(helm_entrypoint_general $1)
$DIR/tools/pull_containers.sh kolla
$DIR/tools/wait_for_pods.sh kolla