Skip to main content

Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting us. A member of our team will be in touch shortly. Close

Deployment manifest

A deployment manifest allows a user to override MicroStack’s default configurations.

Manifests are supported by the following commands:

  • sunbeam cluster bootstrap
  • sunbeam cluster refresh
  • sunbeam configure
  • sunbeam enable

Note: This feature is currently only supported in channel 2023.2/edge of the openstack snap.

Note: For a how-to on using manifests see Managing deployment manifests.

A manifest file

A manifest is a YAML file that consists of two sections: core and features. It has the following structure:

core:
  config: <core configuration>
  software: <core software override>
features:
  <feature name>:
    config: <feature configuration>
    software: <feature software override>

See the Manifest file reference page for details on the structure and possible contents of this file.

Core configuration

Any infrastructure related configuration like hardware and networking are specified in this section. If a key’s value is deemed necessary for your deployment and it has not been provided by means of a manifest file, you will be asked to enter it via an interactive prompt (see the Interactive configuration prompts page).

Here is an example deployment configuration:

core:
  config:

    proxy:
      proxy_required: false

    bootstrap:
      management_cidr: 192.168.123.0/24

    addons:
      metallb: 192.168.123.81-192.168.123.90

    microceph_config:
      sunbeam-1.localdomain:
        osd_devices: /dev/vdc
  software:

    juju:
      bootstrap_args:
      - --debug
      - --agent-version=3.2.4

    charms:
      glance-k8s:
        channel: 2023.2/candidate
        revision: 66
        config:
          debug: True
          pool-type: replicated

    terraform:
      hypervisor-plan:
        source: /home/ubuntu/deploy-openstack-hypervisor

juju section

This section allows users to pass bootstrap arguments to Juju.

Option Description
bootstrap_args list of arguments that will be passed to the juju bootstrap command

charms section

This section allows users to set specific versions of charm to be deployed and the charm configurations. This section is a dictionary of charm and its options. The options that can be set for each charm are described below.

Option Description
channel charm channel to use
revision charm revision to use
config charm configuration to set

Charm channel/revision and their configuration are set by default and are known to work together. Use all default values in production and introduce a new setting only when necessary. For example, only change the channel/revision to get a possible hot fix or change a configuration setting as per the local environment (e.g. Keystone LDAP URL).

It is recommended to test any customisation in a staging environment before applying them in production.

Note: Available charms and their configuration options are listed on the Underlying projects and charms page.

terraform section

This section allows users to set local Terraform plans. This section is a dictionary of Terraform plans and their options. The options that can be set for each plan are described below.

Option Description
source Local path of the Terraform plan

This section is for demonstration and development purposes only.

Caution: There is significant risk of misconfiguration when using a local Terraform plan due to the fact that MicroStack depends heavily on the plan variables.

Last updated 2 months ago. Help improve this document in the forum.