Oggigiorno la maggior parte delle aziende sta cercando di migrare la propria infrastruttura IT e Telco Infra nel cloud privato, ad esempio OpenStack. Se hai intenzione di rilasciare interviste sul profilo amministratore di Openstack, l'elenco di domande del colloquio di seguito potrebbe aiutarti a risolvere il colloquio.
D:1 Definire OpenStack e i suoi componenti chiave?
Risposta:è un pacchetto di software opensource, che insieme formano un software cloud di fornitura noto come OpenStack. OpenStack è noto come Stack di software o progetti open source.
Di seguito sono riportati i componenti chiave di OpenStack
- Nova – Gestisce le macchine virtuali a livello di elaborazione ed esegue altre attività di elaborazione a livello di elaborazione o hypervisor.
- Neutrone – Fornisce la funzionalità di rete a VM, nodi di elaborazione e controller.
- Pietra di volta – Fornisce il servizio di identità per tutti gli utenti cloud e i servizi openstack. In altre parole, possiamo dire Keystone un metodo per fornire l'accesso a utenti e servizi cloud.
- Orizzonte – Fornisce una GUI (Graphical User Interface), utilizzando la GUI Admin può svolgere tutte le attività quotidiane a proprio agio.
- cenere – Fornisce la funzionalità di archiviazione a blocchi, generalmente in OpenStack Cinder è integrato con Chef e ScaleIO per fornire servizi di archiviazione a blocchi ai nodi Compute &Controller.
- Veloce – Fornisce la funzionalità di archiviazione degli oggetti. In genere, le immagini Glance si trovano nell'archivio oggetti. Lo storage esterno come ScaleIO può funzionare anche come Object storage e può essere facilmente integrato con Glance Service.
- Sguardo – Fornisce servizi di immagini cloud, utilizzando l'amministratore di sguardo utilizzato per caricare e scaricare immagini cloud.
- Calore – Fornisce un servizio o una funzionalità di orchestrazione. Utilizzando Heat l'amministratore può facilmente VM come stack e in base ai requisiti, le VM nello stack possono essere scale-in e scale-out
- Ceilometro – Fornisce i servizi di telemetria e fatturazione.
D:2 Quali sono i servizi generalmente eseguiti su un nodo controller?
Risposta:i seguenti servizi vengono eseguiti su un nodo controller:
- Servizio di identità (KeyStone)
- Servizio immagini (Sguardo)
- Servizi Nova come Nova API, Nova Scheduler e Nova DB
- Servizio di blocco e oggetto
- Servizio massimale
- Servizio MariaDB / MySQL e RabbitMQ
- Servizi di gestione di Networking (Neutron) e agenti di Networking
- Servizio di orchestrazione (calore)
D:3 Quali sono i servizi generalmente eseguiti su un nodo di calcolo?
Risposta:i seguenti servizi vengono eseguiti su un nodo di calcolo,
- Nova-Compute
- Servizi di rete come OVS
D:4 Qual è la posizione predefinita delle VM sui nodi di calcolo?
Risposta:le macchine virtuali nel nodo Compute sono archiviate in "/var/lib/nova/instances ”
D:5 Qual è la posizione predefinita delle immagini di colpo d'occhio?
Risposta:poiché il servizio Glance viene eseguito su un nodo controller, tutte le immagini di sguardo vengono archiviate nella cartella "/var/lib/glance/images ” su un nodo controller.
Ulteriori informazioni:Come creare ed eliminare una macchina virtuale (VM) dalla riga di comando in OpenStack
D:6 Dimmi il comando come far girare una VM dalla riga di comando?
Ris:Possiamo facilmente girare una nuova VM usando il seguente comando openstack,
# openstack server create --flavor {flavor-name} --image {Image-Name-Or-Image-ID} --nic net-id={Network-ID} --security-group {Security_Group_ID} –key-name {Keypair-Name} <VM_Name>
D:7 Come elencare lo spazio dei nomi di rete di un tenant in OpenStack?
Risposta:lo spazio dei nomi di rete di un tenant può essere elencato utilizzando il comando "ip net ns"
~# ip netns list qdhcp-a51635b1-d023-419a-93b5-39de47755d2d haproxy vrouter
D:8 Come eseguire il comando all'interno dello spazio dei nomi di rete in openstack?
Risposta:supponiamo di voler eseguire il comando "ifconfig" all'interno dello spazio dei nomi di rete "qdhcp-a51635b1-d023-419a-93b5-39de47755d2d", quindi eseguire il comando sottostante,
Sintassi :ip netns exec {spazio di rete}
~# ip netns exec qdhcp-a51635b1-d023-419a-93b5-39de47755d2d "ifconfig"
D:9 Come caricare e scaricare un'immagine cloud in Glance dalla riga di comando?
Risposta:un'immagine Cloud può essere caricata a colpo d'occhio dal comando utilizzando il comando openstack,
~# openstack image create --disk-format qcow2 --container-format bare --public --file {Name-Cloud-Image}.qcow2 <Cloud-Image-Name>
Usa il comando openstack di seguito per scaricare un'immagine cloud dalla riga di comando,
~# glance image-download --file <Cloud-Image-Name> --progress <Image-ID>
D:10 Come ripristinare lo stato di errore di una VM in attivo in OpenStack env?
Risposta:ci sono alcuni scenari in cui alcune macchine virtuali sono andate in stato di errore e questo stato di errore può essere modificato in stato attivo utilizzando i comandi seguenti,
~# nova reset-state --active {Instance_id}
D:11 Come ottenere l'elenco degli IP mobili disponibili dalla riga di comando?
Risposta:gli IP mobili disponibili possono essere elencati utilizzando il comando seguente,
~]# openstack ip floating list | grep None | head -10
D:12 Come eseguire il provisioning di una macchina virtuale in una zona di disponibilità specifica e un host di calcolo?
Risposta:supponiamo di voler eseguire il provisioning di una macchina virtuale nella zona di disponibilità NonProduction in compute-02, utilizzare il comando sottostante per eseguire questa operazione,
~]# openstack server create --flavor m1.tiny --image cirros --nic net-id=e0be93b8-728b-4d4d-a272-7d672b2560a6 --security-group NonProd_SG --key-name linuxtec --availability-zone NonProduction:compute-02 nonprod_testvm
D:13 Come ottenere l'elenco delle macchine virtuali di cui è stato eseguito il provisioning su un nodo di calcolo specifico?
Risposta:supponiamo di voler elencare le macchine virtuali di cui è stato eseguito il provisioning su compute-0-19, utilizzare di seguito
Sintassi:elenco server openstack –all-projects –long -c Nome -c Host | grep -i {Compute-Node-Name}
~# openstack server list --all-projects --long -c Name -c Host | grep -i compute-0-19
D:14 Come visualizzare il registro della console di un'istanza openstack dalla riga di comando?
Risposta:i registri della console di un'istanza possono essere visualizzati dalla riga di comando utilizzando i seguenti comandi,
Ottenere prima l'ID di un'istanza e quindi utilizzare il comando seguente,
~# openstack console log show {Instance-id}
D:15 Come ottenere l'URL della console di un'istanza openstack?
Risposta:l'URL della console di un'istanza può essere recuperato dalla riga di comando utilizzando il comando openstack di seguito,
~# openstack console url show {Instance-id}
D:16 Come creare un volume di archiviazione cenere/blocchi avviabile dalla riga di comando?
Risposta:per creare un volume di memoria di avvio o blocco di archiviazione (presuppone 8 GB), fare riferimento ai passaggi seguenti:
- Ottieni l'elenco delle immagini utilizzando di seguito
~# openstack image list | grep -i cirros | 89254d46-a54b-4bc8-8e4d-658287c7ee92 | cirros | active |
- Crea un volume avviabile di 8 GB utilizzando l'immagine cirros
~# cinder create --image-id 89254d46-a54b-4bc8-8e4d-658287c7ee92 --display-name cirros-bootable-vol 8
D:17 Come elencare tutti i progetti o tenant che sono stati creati nel tuo opentstack?
Risposta:i progetti o l'elenco dei tenant possono essere recuperati dal comando utilizzando il comando openstack sottostante,
~# openstack project list --long
D:18 Come elencare gli endpoint dei servizi openstack?
Risposta:gli endpoint del servizio Openstack sono classificati in tre categorie,
- Pubblico Endpoint
- Endpoint interno
- Terminale amministrativo
Usa il comando openstack sotto per visualizzare gli endpoint di ogni servizio openstack,
~# openstack catalog list
Per elencare l'endpoint di un servizio specifico come keystone usa di seguito,
~# openstack catalog show keystone
Ulteriori informazioni :Flusso di creazione dell'istanza passo dopo passo in OpenStack
D:19 In quale ordine dovremmo riavviare i servizi nova su un nodo controller?
Risposta:È necessario seguire il seguente ordine per riavviare i servizi nova sul nodo controller openstack,
- riavvio del servizio nova-api
- riavvio del servizio nova-cert
- riavvio del servizio nova-conductor
- riavvio del servizio nova-consoleauth
- riavvio del servizio nova-scheduler
D:20 Supponiamo che le porte DPDK siano configurate sul nodo di elaborazione per il traffico dati, ora come controllerai lo stato delle porte dpdk?
Ris:Poiché le porte DPDK sono configurate tramite openvSwitch (OVS), utilizza i comandi seguenti per verificare lo stato,
[email protected]:~# ovs-appctl bond/show | grep dpdk active slave mac: 90:38:09:ac:7a:99(dpdk0) slave dpdk0: enabled slave dpdk1: enabled [email protected]:~# [email protected]:~# dpdk-devbind.py --status
D:21 Come aggiungere nuove regole all'SG(Security Group) esistente dalla riga di comando in openstack?
Ris:Nuove regole all'SG esistente in openstack possono essere aggiunte usando il comando neutron,
~# neutron security-group-rule-create --protocol <tcp or udp> --port-range-min <port-number> --port-range-max <port-number> --direction <ingress or egress> --remote-ip-prefix <IP-address-or-range> Security-Group-Name
D:22 Come visualizzare i bridge OVS configurati su Controller e Compute Nodes?
Ris:i bridge OVS sui nodi Controller e Compute possono essere visualizzati utilizzando il comando seguente,
~]# ovs-vsctl show
D:23 Qual è il ruolo di Integration Bridge(br-int) sul nodo di calcolo?
Risposta:Il bridge di integrazione (br-int) esegue il tagging e l'annullamento dei tag VLAN per il traffico proveniente da e verso l'istanza in esecuzione sul nodo di calcolo.
I pacchetti che lasciano l'interfaccia n/n di un'istanza passano attraverso il bridge linux (qbr) usando l'interfaccia virtuale qvo. L'interfaccia qvb è collegata al ponte Linux e l'interfaccia qvo è collegata al bridge di integrazione (br-int). La porta qvo sul bridge di integrazione ha un tag VLAN interno che viene aggiunto all'intestazione del pacchetto quando un pacchetto raggiunge il bridge di integrazione.
D:24 Qual è il ruolo di Tunnel Bridge (br-tun) sul nodo di calcolo?
Risposta:Il tunnel bridge (br-tun) traduce il traffico con tag VLAN dal bridge di integrazione agli ID tunnel utilizzando le regole OpenFlow.
br-tun (tunnel bridge) consente la comunicazione tra le istanze su reti diverse. Il tunneling aiuta a incapsulare il traffico che viaggia su reti non sicure, br-tun supporta due reti overlay, ovvero GRE e VXLAN
D:25 Qual è il ruolo del bridge OVS esterno (br-ex)?
Ris:Come suggerisce il nome, questo bridge inoltra il traffico in entrata e in uscita dalla rete per consentire l'accesso esterno alle istanze. br-ex si connette all'interfaccia fisica come eth2, in modo che il traffico IP mobile per le reti dei tenant venga ricevuto dalla rete fisica e instradato alle porte di rete dei tenant.
D:26 Qual è la funzione delle regole OpenFlow in OpenStack Networking?
Ris:Le regole di OpenFlow sono un meccanismo che definisce come un pacchetto raggiunge la destinazione a partire dalla sua origine. Le regole OpenFlow risiedono nelle tabelle di flusso. Le tabelle di flusso fanno parte di OpenFlow switch.
Quando un pacchetto arriva a uno switch, viene elaborato dalla prima tabella di flusso, se non corrisponde a nessuna voce di flusso nella tabella, il pacchetto viene eliminato o inoltrato a un'altra tabella.
D:27 Come visualizzare le informazioni su uno switch OpenFlow (come porte, n. di tabelle, n. di buffer)?
Risposta:supponiamo di voler visualizzare le informazioni su OpenFlow switch (br-int), eseguire il comando seguente,
[[email protected] ~]# ovs-ofctl show br-int OFPT_FEATURES_REPLY (xid=0x2): dpid:0000fe981785c443 n_tables:254, n_buffers:256 capabilities: FLOW_STATS TABLE_STATS PORT_STATS QUEUE_STATS ARP_MATCH_IP actions: output enqueue set_vlan_vid set_vlan_pcp strip_vlan mod_dl_src mod_dl_dst mod_nw_src mod_nw_dst mod_nw_tos mod_tp_src mod_tp_dst 1(patch-tun): addr:3a:c6:4f:bd:3e:3b config: 0 state: 0 speed: 0 Mbps now, 0 Mbps max 2(qvob35d2d65-f3): addr:b2:83:c4:0b:42:3a config: 0 state: 0 current: 10GB-FD COPPER speed: 10000 Mbps now, 0 Mbps max ………………………………………
D:28 Come visualizzare le voci per tutti i flussi in uno switch?
Risposta:le voci dei flussi di uno switch possono essere visualizzate utilizzando il comando 'ovs-ofctl dump-flows '
Supponiamo di voler visualizzare le voci di flusso del bridge di integrazione OVS (br-int),
[[email protected] ~]# ovs-ofctl dump-flows br-int
D:29 Cosa sono gli agenti neutronici e come elencare tutti gli agenti neutronici?
Risposta:il server di neutroni OpenStack funge da controller centralizzato, le configurazioni di rete effettive vengono eseguite sui nodi di calcolo e di rete. Gli agenti neutroni sono entità software che eseguono modifiche alla configurazione sui nodi di calcolo o di rete. Gli agenti neutronici comunicano con il servizio principale di neutroni tramite l'API Neuron e la coda dei messaggi.
Gli agenti neutronici possono essere elencati utilizzando il seguente comando,
~# openstack network agent list -c ‘Agent type’ -c Host -c Alive -c State
D:30 Che cos'è il blocco della CPU?
Risposta:il blocco della CPU si riferisce alla prenotazione dei core fisici per una macchina virtuale specifica. È anche noto come isolamento della CPU o affinità del processore. La configurazione è in due parti:
- assicura che la macchina virtuale possa essere eseguita solo su core dedicati
- assicura inoltre che i processi host comuni non vengano eseguiti su quei core
In altre parole, possiamo dire che il pinning è una mappatura uno a uno di un core fisico su una vCPU guest.