Undercloud è un singolo nodo OpenStack installazione distribuita in una macchina virtuale o in un server bare metal. L'obiettivo di undercloud è installare, testare, gestire e aggiornare i suoi server overcloud (nodi Controller, Compute &Storage). Nella terminologia di Red Hat, undercloud è noto come "Director “. Undercloud contiene fondamentalmente tutte le immagini necessarie per distribuire Overcloud Controller , Calcola , Veloce e Archiviazione .
Overcloud è il vero e proprio cloud funzionale per qualsiasi organizzazione in cui tutte le Macchine Virtuali vengono create su nodi di calcolo e gestiscono tutti i carichi di lavoro. In altre parole, possiamo dire che l'overcloud fornisce i servizi openstack come Nova, Keystone, Horizon, Neutron, Cinder, Glance, Heat &Ceilometer Services.
In questo articolo dimostreremo come installare TripleO undercloud o Director su CentOS 7 VM.
Di seguito sono riportati i requisiti minimi di sistema per undercloud:
- 16 GB di RAM
- 1 CPU Quad Core
- 80 GB di spazio su disco
- 2 Nic
- CentOS 7.x/RHEL 7.x
Di seguito sono riportati i dettagli sulla configurazione del mio laboratorio:
- CentOS 7 VM (Installazione minima) è ospitato all'interno dell'hypervisor KVM.
- Due interfacce sono collegate alla VM (Provisioning e NAT)
- Rete di fornitura:192.168.126.0/24
- Rete NAT:192.168.122.0/24
- L'indirizzo IP su eth0 è 192.168.122.90 e l'indirizzo IP su eth1 è 192.168.126.1
Per installare correttamente undercloud all'interno di una macchina virtuale, devi abilitare Nested Virtualization nell'hypervisor KVM, se non sei sicuro di come abilitarlo, fai riferimento a quanto segue:
- Come abilitare la virtualizzazione nidificata nell'hypervisor KVM su CentOS 7 / RHEL 7
Entriamo nella VM CentOS 7 e segui i passaggi seguenti:
Passo:1) Imposta il nome host e aggiorna il file /etc/hosts
Esegui il comando hostnamectl per impostare il nome host,
[[email protected] ~]# hostnamectl set-hostname "undercloud.example.com" [[email protected] ~]# exec bash [[email protected] ~]#
Aggiungi le seguenti voci usando il comando sottostante:
[[email protected] ~]# echo "192.168.126.1 undercloud.example.com" >> /etc/hosts
Aggiorna il tuo sistema usando il comando sotto yum e riavvia una volta.
[[email protected] ~]# yum update -y && reboot
Passaggio:2) Crea un utente non root (stack)
Esegui i comandi sotto uno dopo l'altro per creare l'utente dello stack e assegnargli i diritti sudo. Installeremo undercloud utilizzando solo l'utente dello stack.
[[email protected] ~]# useradd stack [[email protected] ~]# echo "enter_password_here" | passwd --stdin stack [[email protected] ~]# echo "stack ALL=(root) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/stack stack ALL=(root) NOPASSWD:ALL [[email protected] ~]# chmod 0440 /etc/sudoers.d/stack [[email protected] ~]# su - stack [[email protected] ~]$
Passaggio:3) Abilita i repository richiesti per undercloud
Esegui i comandi seguenti per abilitare e configurare i repository richiesti per l'installazione sotto il cloud.
[[email protected] ~]$ wget https://trunk.rdoproject.org/centos7/current/python2-tripleo-repos-0.0.1-0.20190328140951.a7bc8dc.el7.noarch.rpm [[email protected] ~]$ rpm -ivh python2-tripleo-repos-0.0.1-0.20190328140951.a7bc8dc.el7.noarch.rpm [[email protected] ~]$ sudo -E tripleo-repos -b rocky current [[email protected] ~]$ sudo yum -y install yum-plugin-priorities [[email protected] ~]$ sudo yum install epel-release -y
Nota : Possiamo controllare l'ultima versione di python2-tripleo-repos dal repository RDO
Passaggio:4) Installa il pacchetto TripleO CLI usando il comando yum
[[email protected] ~]$ sudo yum install python-tripleoclient -y
Passaggio:5) Copia e modifica il file di esempio "undercloud.conf" adatto al tuo ambiente
[[email protected] ~]$ cp /usr/share/instack-undercloud/undercloud.conf.sample ~/undercloud.conf
Ora modifica "undercloud.conf ' che si adatta al tuo ambiente, nel mio caso aggiungo i seguenti contenuti in "Predefinito Sezione
[[email protected] ~]$ vi undercloud.conf [DEFAULT] local_ip = 192.168.126.1/24 undercloud_public_vip = 192.168.126.2 undercloud_admin_vip = 192.168.126.3 local_interface = eth1 masquerade_network = 192.168.126.0/24 dhcp_start = 192.168.126.100 dhcp_end = 192.168.126.150 network_cidr = 192.168.126.0/24 network_gateway = 192.168.126.1 inspection_iprange = 192.168.126.160,192.168.126.199 generate_service_certificate = true certificate_generation_ca = local ………………………………
Salva ed esci dal file.
Passaggio:6) Avvia l'installazione sottocloud utilizzando il comando openstack
Ora avvia l'installazione sotto il cloud usando il comando openstack sotto,
[[email protected] ~]$ openstack undercloud install
Una volta completata l'installazione, otterremo un output simile a quello riportato di seguito
Verifica l'elenco dei servizi OpenStack
[[email protected] ~]$ source stackrc (undercloud) [[email protected] ~]$ openstack service list +----------------------------------+------------------+-------------------------+ | ID | Name | Type | +----------------------------------+------------------+-------------------------+ | 19f1261745004b31bc77dcb17a5ed4f5 | heat-cfn | cloudformation | | 1bdd5dfbc36f444ebe62580d71f1a7ec | heat | orchestration | | 2b39423f188b412d85bed43f112b35d7 | zaqar-websocket | messaging-websocket | | 46f64d65be874718a1b2c123f588371b | keystone | identity | | 605261da43d64395b72acc5309a22096 | mistral | workflowv2 | | 6f50fb704b224c1abc3c2a1a163eb73a | neutron | network | | 7110b7d7711a4aa1af6a3c13566be28f | zaqar | messaging | | 7e41468745724ecfa8ed339137e8b700 | placement | placement | | 853efa8a8acf403b827617725c3b7322 | ironic-inspector | baremetal-introspection | | a5522e5df77343b99a0e47812323a17b | swift | object-store | | b9bbb1a771704b57a0833d738bfb86e5 | glance | image | | d50fdfa25fb64c3e865c172754452ab1 | ironic | baremetal | | e2ea283690c742d3a98bd1eae6f9b830 | nova | compute | +----------------------------------+------------------+-------------------------+ (undercloud) [[email protected] ~]$
Ciò conferma che undercloud è stato installato correttamente. Nel prossimo articolo dimostreremo come importare immagini overcloud in undercloud e come creare file di inventario per server overcloud e poi vedremo come possiamo distribuire server overcloud tramite undercloud.
Ulteriori informazioni su:Come distribuire TripleO Overcloud (controller, calcolo) su macchine virtuali CentOS 7
Nel caso in cui questo articolo ti aiuti a capire come installare undercloud su CentOS 7 VM, condividi il tuo feedback e commenti.