sunbeam-charms/charms/nova-k8s
Guillaume Boutry 16a65cf4e4
Refactor monorepo build-system
Introduce a per-charm configuration file `.sunbeam-build.yaml`,
containing information about needed external libraries, internal
libraries, and configuration templates.

Introduce new management script `repository.py`, responsible for
preparing, cleaning and updating libs.

Move all internal libraries back to their original charms. Each charm is
responsible of its own libraries.

Change-Id: I9edabed1c252cae60fcd945b931952aeaef12481
Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
2024-07-08 21:51:09 +02:00
..
lib/charms/nova_k8s/v0 Refactor monorepo build-system 2024-07-08 21:51:09 +02:00
src [all] reduce mysql-pooling to sensible defaults 2024-06-17 18:24:41 +02:00
tests Remove bundles in the charms 2024-06-12 08:26:25 +05:30
.gitignore Refactor monorepo build-system 2024-07-08 21:51:09 +02:00
.sunbeam-build.yaml Refactor monorepo build-system 2024-07-08 21:51:09 +02:00
actions.yaml Initial Cut 2022-01-13 13:38:15 +00:00
charmcraft.yaml Add zuuljobs 2023-11-30 15:32:39 +05:30
config.yaml Merge "Remove os-*-hostname variables" into main 2024-05-13 04:15:03 +00:00
CONTRIBUTING.md Update for 2024.1 2024-04-18 23:21:03 +00:00
LICENSE Initial Cut 2022-01-13 13:38:15 +00:00
metadata.yaml [*-k8s] implement log forwarder 2024-07-07 21:04:11 +02:00
README.md Update for 2024.1 2024-04-18 23:21:03 +00:00
rebuild Allow rebuild charms on modifying a rebuild file 2023-12-06 18:58:50 +01:00
requirements.txt Add zuuljobs 2023-11-30 15:32:39 +05:30

nova-k8s

Description

nova-k8s is an operator to manage the Nova API, Conductor and Scheduler services on a Kubernetes based environment.

Usage

Deployment

nova-k8s is deployed using below command:

juju deploy nova-k8s nova --trust

Now connect the nova operator to existing database, messaging and keystone identity operators:

juju relate mysql:database nova:database
juju relate mysql:database nova:api-database
juju relate mysql:database nova:cell-database
juju relate rabbitmq:amqp nova:amqp
juju relate keystone:identity-service nova:identity-service

Configuration

This section covers common and/or important configuration options. See file config.yaml for the full list of options, along with their descriptions and default values. See the Juju documentation for details on configuring applications.

Actions

This section covers Juju actions supported by the charm. Actions allow specific operations to be performed on a per-unit basis. To display action descriptions run juju actions nova. If the charm is not deployed then see file actions.yaml.

Relations

nova-k8s requires the following relations:

database, api-database, cell-database: To connect to MySQL (nova requires 3 databases) amqp: To connect to RabbitMQ identity-service: To register endpoints in Keystone ingress-internal: To expose service on underlying internal network ingress-public: To expose service on public network

OCI Images

The charm by default uses following images:

`ghcr.io/canonical/nova-api:2024.1`
`ghcr.io/canonical/nova-scheduler:2024.1`
`ghcr.io/canonical/nova-conductor:2024.1`

Contributing

Please see the Juju SDK docs for guidelines on enhancements to this charm following best practice guidelines, and CONTRIBUTING.md for developer guidance.

Bugs

Please report bugs on Launchpad.