Update and add reference bundles for sunbeam

Change-Id: Ifb4c95fc30b49107322e09229d81de13ebd0650f
This commit is contained in:
Samuel Walladge 2022-09-12 10:41:01 +09:30
parent 21c09bcd1f
commit 74c5c98d0a
3 changed files with 222 additions and 7 deletions

192
doc/bundles/full.yaml Normal file
View File

@ -0,0 +1,192 @@
bundle: kubernetes
applications:
traefik:
charm: ch:traefik-k8s
channel: edge
scale: 1
trust: true
traefik-public:
charm: ch:traefik-k8s
channel: edge
scale: 1
trust: true
options:
kubernetes-service-annotations: metallb.universe.tf/address-pool=public
mysql:
charm: ch:mysql-k8s
channel: edge
scale: 1
trust: false
rabbitmq:
charm: ch:sunbeam-rabbitmq-operator
channel: edge
scale: 1
trust: true
keystone:
charm: ch:keystone-k8s
channel: edge
scale: 1
trust: true
options:
admin-role: admin
storage:
fernet-keys: 5M
credential-keys: 5M
glance:
charm: ch:glance-k8s
channel: edge
scale: 1
trust: true
storage:
local-repository: 5G
nova:
charm: ch:nova-k8s
channel: edge
scale: 1
trust: true
placement:
charm: ch:placement-k8s
channel: edge
scale: 1
trust: true
neutron:
charm: ch:neutron-k8s
channel: edge
scale: 1
trust: true
options:
os-public-hostname:
ovn-central:
charm: ch:ovn-central-k8s
channel: edge
scale: 1
trust: true
nova-compute:
charm: ch:sunbeam-nova-compute-operator
channel: edge
scale: 1
trust: true
vault:
charm: ch:icey-vault-k8s
channel: stable
scale: 1
resources:
vault-image: vault
horizon:
charm: ch:horizon-k8s
channel: edge
scale: 1
trust: true
cinder:
charm: ch:cinder-k8s
channel: edge
scale: 1
trust: true
ovn-relay:
charm: ch:ovn-relay-k8s
channel: edge
scale: 1
trust: true
cinder-ceph:
charm: ch:cinder-ceph-k8s
channel: edge
scale: 1
trust: true
relations:
- - mysql:database
- keystone:database
- - traefik:ingress
- keystone:ingress-internal
- - traefik-public:ingress
- keystone:ingress-public
- - mysql:database
- glance:database
- - rabbitmq:amqp
- glance:amqp
- - keystone:identity-service
- glance:identity-service
- - traefik:ingress
- glance:ingress-internal
- - traefik-public:ingress
- glance:ingress-public
- - mysql:database
- nova:database
- - mysql:database
- nova:api-database
- - mysql:database
- nova:cell-database
- - rabbitmq:amqp
- nova:amqp
- - keystone:identity-service
- nova:identity-service
- - traefik:ingress
- nova:ingress-internal
- - traefik-public:ingress
- nova:ingress-public
- - mysql:database
- placement:database
- - keystone:identity-service
- placement:identity-service
- - traefik:ingress
- placement:ingress-internal
- - traefik-public:ingress
- placement:ingress-public
- - mysql:database
- neutron:database
- - rabbitmq:amqp
- neutron:amqp
- - keystone:identity-service
- neutron:identity-service
- - traefik:ingress
- neutron:ingress-internal
- - traefik-public:ingress
- neutron:ingress-public
- - vault:insecure-certificates
- neutron:certificates
- - neutron:ovsdb-cms
- ovn-central:ovsdb-cms
- - vault:insecure-certificates
- ovn-central:certificates
- - rabbitmq:amqp
- nova-compute:amqp
- - keystone:identity-credentials
- nova-compute:cloud-credentials
- - nova:cloud-compute
- nova-compute:cloud-compute
- - mysql:database
- horizon:database
- - keystone:identity-credentials
- horizon:cloud-credentials
- - traefik:ingress
- horizon:ingress-internal
- - traefik-public:ingress
- horizon:ingress-public
- - mysql:database
- cinder:database
- - rabbitmq:amqp
- cinder:amqp
- - keystone:identity-service
- cinder:identity-service
- - traefik:ingress
- cinder:ingress-internal
- - traefik-public:ingress
- cinder:ingress-public
- - vault:insecure-certificates
- ovn-relay:certificates
- - mysql:database
- cinder-ceph:database
- - rabbitmq:amqp
- cinder-ceph:amqp
# cinder-ceph must also be related to ceph-mon, but this is a cross-model relation, and untested.
# This will most likely involve https://github.com/canonical/microceph in the future.

View File

@ -1,24 +1,25 @@
bundle: kubernetes
applications:
traefik:
charm: traefik-k8s
channel: beta
charm: ch:traefik-k8s
channel: edge
scale: 1
trust: true
traefik-public:
charm: traefik-k8s
channel: beta
charm: ch:traefik-k8s
channel: edge
scale: 1
trust: true
options:
kubernetes-service-annotations: metallb.universe.tf/address-pool=public
mysql:
charm: mysql-k8s
charm: ch:mysql-k8s
channel: edge
scale: 1
trust: false
rabbitmq:
charm: sunbeam-rabbitmq-operator
charm: ch:sunbeam-rabbitmq-operator
channel: edge
scale: 1
trust: true
@ -67,11 +68,12 @@ applications:
scale: 1
trust: true
vault:
charm: icey-vault-k8s
charm: ch:icey-vault-k8s
channel: stable
scale: 1
resources:
vault-image: vault
relations:
- - mysql:database
- keystone:database

21
doc/reference-bundles.rst Normal file
View File

@ -0,0 +1,21 @@
=================
Reference Bundles
=================
There are some official reference bundles in `./bundles/`:
`minimal.yaml`
~~~~~~~~~~~~~~
The baseline "here's a barebones OpenStack" that can be deployed on a k8s cloud.
`full.yaml`
~~~~~~~~~~~
All the things that can be deployed on a k8s cloud.
As-is, `cinder-ceph` will not come up active
because it requires a relation to a `ceph-mon`.
However this may be replaced with some configuration
to connect to https://github.com/canonical/microceph in the future.