openstack-kolla-ampere-aio-scripts

Ampere Computing

This repo will be archived in 30 days from 11/22. This is in an effort to keep a clean and timely Github presence for Ampere computing. As a result of the archiving any issues, pull requests, code, labels, milestones, projects, wiki, releases, commits, tags, branches, reactions, code scanning alerts, comments and permissions become read-only.

Please plan accordingly or reach out to repo owner with concerns.

Thank you.

-Ampere Computing

openstack-kolla-ampere-aio-scripts

Scripts and information for reproducing an OpenStack All-In-One deployment on Ampere eMAG systems using OpenStack Kolla and Kolla-Ansible.

License

Description

This repository contains script & file assets to build from source & deploy a containerized OpenStack All-In-One (AIO) on an Ampere eMAG server. The server is installed with standard Debian version 10.1.0 arm64 and OpenStack 8.1.0 Stein. In this configuration, the administrator can create virtual instances using various preloaded aarch64 operating systems (Debian, Fedora, Fedora-Atomic, Ubuntu, K3OS) through the Horizon web interface or via Terraform. OpenStack Kolla is used to build containers from source. Kolla-ansible is used to install OpenStack as an All-In-One deployment scenerio.

Operating System Requirements

Installation Overview

The goal of the included scripts are to provide an easy way to replicate an OpenStack AIO deployment using Kolla and Kolla-ansible on AARCH64. The follow is the basic pattern for deploying using the supplied scripts.

  1. Deploy a minimal operating system with ssh access and git installed.
  2. Download this repository to the deployment target
  3. Make changes to etc/kolla/globals.yml and init-runonce for your deployment needs.
  4. Run scripts from this repository in numerical order on the target host.

Script Assets

Building Kolla Images

Container images can be rebuilt at any time through the use of the kolla-build command. Kolla supports different operating system options for the Docker containers. During the process of building this both Ubuntu and Debian were attempted. Currently Debian was fully funcitonal where at the time this was created Ubuntu 18.04 was unable to sucessfully deploy a virtual machine with Libvirt running containerized. The Debian functionality including AARCH64 support was contributed by Linaro, whom currently still actively contributes to the maintaince of the AARCH64 integration.

Paste Logs from Ubuntu 18.04 Libvirt failures

For those interested the following information was gathered during the troubleshooting of the issues with Livbvirtd containerized in this deployment

Configuration

Configuration is done via the included globals.yml file. The included Kolla globals.yml configuration file used to produce an OpenStack All-In-One. You will need to edit this file and change necessary information prior to the deploy process.

The modifications that were made to the global.yml to produce a working AIO during this process were:

kolla_base_distro: "debian"
openstack_release: "8.1.0"
kolla_internal_vip_address: "10.1.1.88"
network_interface: "enp1s0"
neutron_external_interface: "enx00051bb122ed"
nova_compute_virt_type: "kvm"
enable_haproxy: "no"

** Please note that the neutron_external_interface is actually a USB nic that was used to provide a second interface on the working system. The interfaces and addresses must be changed to the appropriate working and active network interfaces for the deployment to be successful. **

Additionally init-runonce is executed during the script processes. Modifications will be necessary to ensure a proper functioning OpenStack deployment after installation.

Theses changes represent the Network information of the subnet of the active interface with a range of IP addresses that can be used for assigning floating-ips to the virtual machine instances. The changes used in the this example are the following:

EXT_NET_CIDR='10.1.1.0/24'
EXT_NET_RANGE='start=10.1.1.210,end=10.1.1.240'
EXT_NET_GATEWAY='10.1.1.1'

References

The following information assets were acquired during the research process of this endeavour.

Ironic

Horizon

Kolla-Ansible Neutron/Networking