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

How to deploy on Sunbeam

Duration : Up to 60 minutes depending on internet download speed.

This guide goes through the steps for setting up Sunbeam and deploying Charmed MySQL.

Prerequisites

  • A physical or virtual machine running Ubuntu 22.04+
    • If you’d like to follow this guide in an isolated test environment, you can launch a Multipass instance.
  • Hardware requirements depend on planned deployment size.
    • Recommended: 8 CPU cores, 32GB RAM, 100GB of storage
    • Minimum: See the requirements listed in the Sunbeam documentation

Steps


Install and bootstrap Sunbeam

Follow the official OpenStack guide: Single-node deployment.

Pay attention to the Caution and Note sections - the /etc/hosts will require a manual fqdn fix.

Enable OpenStack Images Auto-sync

Follow the official Images Sync guide to enable auto-sync and wait for the image 22.04 to be downloaded.

Set up Juju inside an OpenStack bastion

Follow the MicroStack guide Manage workloads with Juju from the beginning, and stop after the section “Create a Juju controller”.

To summarize, the relevant sections are:

  • Set up the bastion
  • Install and configure the Juju client
  • Create a Juju controller

Deploy Charmed MySQL

Add a model if you don’t have one already, and deploy a MySQL cluster. Use the -n flag to specify number of units.

juju add-model mysql
juju deploy mysql --base [email protected] -n 3

Sample output of juju status --watch 1s:

Model  Controller     Cloud/Region       Version  SLA          Timestamp
mysql  my-controller  sunbeam/RegionOne  3.5.4    unsupported  20:22:42Z

App    Version   Status  Scale  Charm  Channel     Rev  Exposed  Message
mysql  8.0.36    active      3  mysql  8.0/stable  240  no       

Unit      Workload  Agent  Machine  Public address   Ports           Message
mysql/0*  active    idle   0        192.168.122.211  3306,33060/tcp  Primary
mysql/1   active    idle   1        192.168.122.226  3306,33060/tcp  
mysql/2   active    idle   2        192.168.122.14   3306,33060/tcp  

Machine  State    Address          Inst id                               Base          AZ    Message
0        started  192.168.122.211  3f0a331c-bc08-4bae-af22-44087a7b74d6  [email protected]  nova  ACTIVE
1        started  192.168.122.226  e6e908f8-0da1-4440-9bbd-9f1c1bc780df  [email protected]  nova  ACTIVE
2        started  192.168.122.14   6f9ad7cd-2a9d-435e-a6d8-3e39bf2218cd  [email protected]  nova  ACTIVE

(Optional) Access the OpenStack dashboard

Follow the official guide: Accessing the OpenStack dashboard.

When using a Multipass VM, you may need to manually route OpenStack IPs. For example:

sudo ip route add 10.10.10.0/24 via 10.76.203.210 

where 10.76.203.210 is the IP of the Multipass VM and 10.10.10.0 is the network returned by sunbeam dashboard-url.

The image below is an example of the OpenStack dashboard view (bastion + juju controller + 3 mysql nodes):

To learn more about deploying and operating MySQL, see the Charmed MySQL tutorial.

Last updated 8 days ago. Help improve this document in the forum.