Devstack je kolekce skriptů, které nasazují nejnovější verzi prostředí openstack na virtuální stroj, osobní laptop nebo desktop. Jak název napovídá, používá se pro vývojové prostředí a může být použit pro funkční testování Openstack Project a někdy openstack prostředí nasazené devstackem může být také použito pro účely demonstrace a pro některé základní PoC.
V tomto článku ukážu, jak nainstalovat Openstack na CentOS 7 / RHEL 7 System pomocí Devstack. Níže jsou uvedeny minimální systémové požadavky
- Dvoujádrový procesor
- Minimálně 8 GB RAM
- 60 GB pevný disk
- Připojení k internetu
Níže jsou uvedeny podrobnosti o mém nastavení laboratoře pro nasazení Openstack pomocí devstack
- Minimálně nainstalovaný CentOS 7 / RHEL 7 (VM)
- Název hostitele – devstack-linuxtechi
- IP adresa – 169.144.104.230
- 10 vCPU
- 14 GB RAM
- 60 GB pevný disk
Začněme kroky nasazení, přihlaste se k systému CentOS 7 nebo RHEL 7
Krok:1 Aktualizujte svůj systém a nastavte název hostitele
Spuštěním následujícího příkazu yum použijte nejnovější aktualizace systému a poté proveďte restart. Také po restartu nastavte název hostitele
~]# yum update -y && reboot ~]# hostnamectl set-hostname "devstack-linuxtechi" ~]# exec bash
Krok:2) Vytvořte uživatele zásobníku a přidělte mu práva sudo
Všechny kroky instalace musí být prováděny pod uživatelským jménem „zásobník “, použijte níže uvedené příkazy k vytvoření a přiřazení práv sudo.
[[email protected] ~]# useradd -s /bin/bash -d /opt/stack -m stack [[email protected] ~]# echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack stack ALL=(ALL) NOPASSWD: ALL [[email protected] ~]#
Krok:3) Nainstalujte git a stáhněte si devstack
Přepněte na uživatele zásobníku a nainstalujte balíček git pomocí příkazu yum
[[email protected] ~]# su - stack [[email protected] ~]$ sudo yum install git -y
Stáhněte si devstack pomocí níže uvedeného příkazu git,
[[email protected] ~]$ git clone https://git.openstack.org/openstack-dev/devstack Cloning into 'devstack'... remote: Counting objects: 42729, done. remote: Compressing objects: 100% (21438/21438), done. remote: Total 42729 (delta 30283), reused 32549 (delta 20625) Receiving objects: 100% (42729/42729), 8.93 MiB | 3.77 MiB/s, done. Resolving deltas: 100% (30283/30283), done. [[email protected] ~]$
Krok:4) Vytvořte soubor local.conf a spusťte instalaci openstacku
Chcete-li zahájit instalaci openstacku pomocí skriptu devstack (stack.sh), musíme nejprve připravit soubor local.conf, který vyhovuje našemu nastavení.
Přejděte do složky devstack a vytvořte soubor local.conf s níže uvedeným obsahem
[[email protected] ~]$ cd devstack/ [[email protected] devstack]$ vi local.conf [[local|localrc]] #Specify the IP Address of your VM / Server in front of HOST_IP Parameter HOST_IP=169.144.104.230 #Specify the name of interface of your Server or VM in front of FLAT_INTERFACE FLAT_INTERFACE=eth0 #Specify the Tenants Private Network and its Size FIXED_RANGE=10.4.128.0/20 FIXED_NETWORK_SIZE=4096 #Specify the range of external IPs that will be used in Openstack for floating IPs FLOATING_RANGE=172.24.10.0/24 #Number Host on which Openstack will be deployed MULTI_HOST=1 #Installation Logs file LOGFILE=/opt/stack/logs/stack.sh.log #KeyStone Admin Password / Database / RabbitMQ / Service Password ADMIN_PASSWORD=openstack DATABASE_PASSWORD=db-secret RABBIT_PASSWORD=rb-secret SERVICE_PASSWORD=sr-secret #Additionally installing Heat Service enable_plugin heat https://git.openstack.org/openstack/heat master enable_service h-eng h-api h-api-cfn h-api-cw
Uložte a ukončete soubor.
Nastavte oprávnění na /opt/stack
[[email protected] devstack]$ sudo chmod 755 /opt/stack
Nyní spusťte nasazení nebo instalaci spuštěním skriptu (stack.sh)
[[email protected] devstack]$ ./stack.sh
Bude to trvat 30 až 45 minut v závislosti na vašem internetovém připojení.
Pokud se při spuštění výše uvedeného příkazu zobrazí níže uvedené chyby
+functions-common:git_timed:607 timeout -s SIGINT 0 git clone git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master fatal: unable to connect to git.openstack.org: git.openstack.org[0: 104.130.246.85]: errno=Connection timed out git.openstack.org[1: 2001:4800:7819:103:be76:4eff:fe04:77e6]: errno=Network is unreachable Cloning into '/opt/stack/requirements'... +functions-common:git_timed:610 [[ 128 -ne 124 ]] +functions-common:git_timed:611 die 611 'git call failed: [git clone' git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch 'master]' +functions-common:die:195 local exitcode=0 [Call Trace] ./stack.sh:758:git_clone /opt/stack/devstack/functions-common:547:git_timed /opt/stack/devstack/functions-common:611:die [ERROR] /opt/stack/devstack/functions-common:611 git call failed: [git clone git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master] Error on exit /bin/sh: brctl: command not found [[email protected] devstack]$
Chcete-li tyto chyby vyřešit, proveďte následující kroky
Nainstalujte bridge-utils balíček a změňte parametr z „GIT_BASE=${GIT_BASE:-git://git.openstack.org} “ na „GIT_BASE=${GIT_BASE:-https://www.github.com} ” v souboru stackrc
[[email protected] devstack]$ sudo yum install bridge-utils -y [[email protected] devstack]$ vi stackrc …… #GIT_BASE=${GIT_BASE:-git://git.openstack.org} GIT_BASE=${GIT_BASE:-https://www.github.com} ……
Nyní znovu spusťte skript stack.sh,
[[email protected] devstack]$ ./stack.sh
Jakmile je skript úspěšně proveden, dostaneme výstup něco jako níže,
To potvrzuje, že openstack byl úspěšně nasazen,
Krok:5 Přístup k OpenStack buď přes Openstack CLI nebo Horizon Dashboard
pokud chcete provést jakoukoli úlohu z openstack cli, musíte nejprve získat zdrojový soubor openrc, který obsahuje pověření správce.
[[email protected] devstack]$ source openrc WARNING: setting legacy OS_TENANT_NAME to support cli tools. [[email protected] devstack]$ openstack network list +--------------------------------------+---------+----------------------------------------------------------------------------+ | ID | Name | Subnets | +--------------------------------------+---------+----------------------------------------------------------------------------+ | 5ae5a9e3-01ac-4cd2-86e3-83d079753457 | private | 9caa54cc-f5a4-4763-a79e-6927999db1a1, a5028df6-4208-45f3-8044-a7476c6cf3e7 | | f9354f80-4d38-42fc-a51e-d3e6386b0c4c | public | 0202c2f3-f6fd-4eae-8aa6-9bd784f7b27d, 18050a8c-41e5-4bae-8ab8-b500bc694f0c | +--------------------------------------+---------+----------------------------------------------------------------------------+ [[email protected] devstack]$ openstack image list +--------------------------------------+--------------------------+--------+ | ID | Name | Status | +--------------------------------------+--------------------------+--------+ | 5197ed8e-39d2-4eca-b36a-d38381b57adc | cirros-0.3.6-x86_64-disk | active | +--------------------------------------+--------------------------+--------+ [[email protected] devstack]$
Nyní zkuste vstoupit do Horizon Dashboard, podrobnosti o adrese URL a pověření jsou již ve výstupu příkazu zásobníku.
http://{IP-adresa-vašeho-serveru}/dashboard
Odebrat/odinstalovat OpenStack pomocí skriptů devstack
Pokud jste skončili s testováním a demonstracemi a chcete openstack odstranit ze svého systému, spusťte následující skripty prostřednictvím uživatele Stack,
[[email protected] ~]$ cd devstack [[email protected] devstack]$ ./clean.sh [[email protected] devstack]$ ./unstack.sh [[email protected] devstack]$ rm -rf /opt/stack/ [[email protected] ~]$ sudo rm -rf devstack [[email protected] ~]$ sudo rm -rf /usr/local/bin/
To je vše z tohoto tutoriálu, pokud se vám kroky líbí, podělte se o své cenné názory a komentáře.