osm #26

Supports: None
Add to new model

Description

Basic OSM cluster suitable for testing, development and PoC deployments.

Charmed OSM

Charmed OSM is an OSM distribution, developed and maintained by Canonical, which uses Juju charms to simplify its deployments and operations. Charmed OSM enables TSPs to easily deploy pure upstream OSM in highly available, production-grade and scalable clusters.

  • Industry‚Äźaligned and fully compliant with upstream
  • Predictable release cadence and upgrade path
  • Simplified deployments and operations
  • Stable and secure
  • Highly Available and resilient against failures
  • Supported with Ubuntu Advantage
  • Availability of managed services

Quick start

Follow these steps to install Charmed OSM on top of Microk8s:

Before you start

Install juju and osmclient snaps:

sudo snap install juju --classic
sudo snap install osmclient --edge
sudo snap connect osmclient:juju-client-observe

Bootstrap juju controller on LXD:

juju bootstrap localhost osm-lxd
osmclient.overlay

Configure Microk8s

sudo snap install microk8s --classic
sudo usermod -a -G microk8s $USER
newgrp microk8s
microk8s.status --wait-ready
microk8s.enable storage dns

Wait until the plugins are deployed successully with this command: watch microk8s.kubectl get pods -A

Bootstrap a juju k8s controller on Microk8s.

juju bootstrap microk8s osm-k8s
juju add-model osm

Deploy Charmed OSM

juju deploy osm --overlay vca-overlay.yaml

Review the installation process with the command watch -c juju status --color

Interact with OSM

Once all the charms are in a ready state, you can prepare your environment to be ready to interact with OSM:

export OSM_HOSTNAME=`juju status nbi-k8s | grep kubernetes | awk '{print $8}'`
echo "export OSM_HOSTNAME=$OSM_HOSTNAME" >> ~/.bashrc

Then the osmclient.osm command will be available for you to start playing with OSM. Example:

$ osmclient.osm ns-list
+------------------+----+--------------------+---------------+-----------------+
| ns instance name | id | operational status | config status | detailed status |
+------------------+----+--------------------+---------------+-----------------+
+------------------+----+--------------------+---------------+-----------------+

For more information, visit the following tutorial

Found a bug? Report it here

Get in touch

Bundle configuration

Embed this bundle

Add this card to your website by copying the code below. Learn more.

Preview