Pular para o conteúdo principal

Instalação DevStack

Acredito que essa é a instalação por onde podemos começar a explorar o OpenStack e entender os componentes.

A instalação com o DevStack é para ambientes de testes. No nosso projeto vamos criar somente uma máquina que será responsável por todos os recursos necessários. Vamos utilizar o Vagrant com o VirtualBox para criar uma máquina onde instalaremos o OpenStack.

É necessário ter o VirtualBox que será o nosso provisionador e o Vagrant que fará as configurações da VM.

sudo apt-get install virtualbox
sudo apt-get install vagrant
vagrant --version
Vagrant 2.4.0

Vamos subir uma máquina virtual usando o Vagrant, e para isso é necessário Vagrant instalado e VirtualBox para ser o provisioner do Vagrant. É importante observar que a minha placa de rede que eu estou recebendo endereço IP é wlo1, veja a sua com o comando ip addr show.

A máquina que estamos criando será um Ubuntu 22.04 LTS com 10 processadores, 10GB de RAM e 60GB de HD.

Depois de criada, o Vagrant acessará essa máquina via SSH e rodará o script requirements.sh que irá criar um usuário OpenStack e sua home em /opt e baixar o projeto DevStack na versão específica estável dentro dessa pasta.

Depois disso iremos rodar o start.sh que criará o arquivo local.conf com as configurações passadas ao DevStack de nossa preferência dentro do projeto clonado e executar o stack.

O projeto se encontra em https://gitlab.com/davidpuziol/study-openstack/-/tree/main/environment-devstack

Vagrant.require_version ">= 2.4.0"

Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/jammy64"
config.vm.hostname = "devstack"
# Mude a sua interface de rede
config.vagrant.plugins = "vagrant-disksize"
config.disksize.size = '60GB'
config.vm.network "public_network", bridge: "wlo1"
config.vm.provider "virtualbox" do |vb|
vb.name = "devstack"
vb.memory = 10240
vb.cpus = 10
end
config.vm.provision "shell", path: "requirements.sh"
config.vm.provision "shell", path: "start.sh"
end

Uma vez que a máquina subiu vamos iniciar a instalação rodando o script stack.sh que usará as configurações de local.conf para instalar o OpenStack. Esse passo manual não foi colocado no script start.sh para evitar que façamos a instalação toda vez que subirmos a máquina.

vagrant ssh
sudo -u stack -i
cd devstack
./stack.sh
...
...
...
This is your host IP address: 10.0.0.249
This is your host IPv6 address: ::1
Horizon is now available at http://10.0.0.249/dashboard
Keystone is serving at http://10.0.0.249/identity/
The default users are: admin and demo
The password: admin

Services are running under systemd unit files.
For more information see:
https://docs.openstack.org/devstack/latest/systemd.html

DevStack Version: 2023.2
Change: b082d3fed3fe05228dabaab31bff592dbbaccbd9 Make multiple attempts to download image 2023-12-12 08:07:39 +0000
OS Version: Ubuntu 22.04 jammy

Para desligar a máquina poderíamos fazer o comando vagrant halt e para subir novamente poderíamos usar o comando vagrant up --no-provision para não rodar os scripts.