sunbeam-charms/charms/nova-k8s
Guillaume Boutry 943c9fd988
Migrate database interface
data_platform_libs.v0.database_requires was deprecated on January 4th,
2023 and has not received updates since then.
This change migrates to data_platform_libs.v0.data_interfaces which the
preferred way to interact with MySQL.

Most notable changes:
- User/password in a secret
- Keystone test 'test_on_peer_data_changed_with_fernet_keys_and_fernet_secret_different'
  is no longer mocking secrets to make sure it's using database secrets.

Change-Id: Ia1908c0828689458c6ff3fa8d9640c8debfc0a73
2024-01-27 14:29:40 +01:00
..
src Add zuuljobs 2023-11-30 15:32:39 +05:30
tests Migrate database interface 2024-01-27 14:29:40 +01: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 Add cloud-compute relation for relating to compute nodes 2022-04-17 19:25:47 -07:00
CONTRIBUTING.md Switch charm to Bobcat 2023-10-05 06:17:16 +00:00
LICENSE Initial Cut 2022-01-13 13:38:15 +00:00
metadata.yaml Switch charm to Bobcat 2023-10-05 06:17:16 +00:00
README.md Switch charm to Bobcat 2023-10-05 06:17:16 +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:2023.2`
`ghcr.io/canonical/nova-scheduler:2023.2`
`ghcr.io/canonical/nova-conductor:2023.2`

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.