Schița de curs
1. Introducere în OpenStack - 2h
● Istoria cloud-ului și OpenStack
● Caracteristicile cloud-ului
● Modele de cloud
○ privat, public, hibrid
○ on-premise, IaaS, PaaS, SaaS
● Implementări de cloud public și privat bazate pe OpenStack
● Distribuții OpenStack open source și comerciale
● Modele de implementare OpenStack
● Ecosistemul OpenStack
○ Module
○ Instrumente de bază
○ Integrări
● Ciclul de viață OpenStack
● Certificarea OpenStack
● Laborator OpenStack (VM) pentru acest curs
2. Atelier practic de administrare OpenStack
● Cunoașterea OpenStack ~0.5h
○ Componente OpenStack (Keystone, Glance, Nova, Neutron, Cinder, Swift, Heat)
○ Interacțiunea cu cloud-ul OpenStack
○ Daemonii OpenStack și fluxul de comunicare API
● Keystone - Serviciu de gestionare a identităților ~1h
○ Arhitectura Keystone
○ Autentificare și backend-uri disponibile
○ Tipuri de token și gestionarea token-urilor
○ Autorizare în OpenStack - roluri și oslo.policy
○ Resurse Keystone - domenii, proiecte, utilizatori
○ Openrc și clouds.yaml - Configurarea clienților CLI
○ Catalogul de servicii OpenStack
○ Adăugarea unui nou serviciu OpenStack
○ Sistemul de cote în OpenStack
● Glance - Serviciu de imagini ~1.5h
○ Imagini adaptate la cloud
○ Caracteristici ale imaginilor (proprietăți, metadate, format, container)
○ Încărcarea și descărcarea imaginilor
○ Partajarea imaginilor
○ Depozite de imagini Glance
○ Imagini protejate
○ Gestionarea cotelor pentru serviciul de imagini
○ Verificarea serviciilor Glance
● Neutron - Rețea ~2-3h
○ Arhitectura și serviciile Neutron
○ Plugin-ul ML2
○ Rețeaua în nodul de calcul - analiză
○ Concepte de rețea și instrumente folosite de Neutron
○ Tipuri de resurse de rețea de bază în Neutron
○ Gestionarea rețelelor, subrețelelor și a tenantilor
○ Gestionarea grupurilor de securitate și regulilor
○ Rutare East-West
○ Namespace-uri de rețea
○ Gestionarea rețelelor externe/provider
○ Rutare North-South
○ Gestionarea IP-urilor flotante
○ Gestionarea cotelor de rețea
○ Depanare de bază a rețelei (namespace-uri, tcpdump, etc.)
○ Cote de rețea
○ Verificarea serviciilor Neutron
● Nova - Serviciu de calcul ~2-3h
○ Interfețe către hypervisors
○ Gestionarea perechilor de chei
○ Gestionarea flavor-urilor
○ Flavor-uri și topologia CPU
○ Parametrii instanțelor
○ Crearea unei instanțe
○ Verificarea instanțelor create
○ Snapshot-uri
○ Gestionarea instanțelor
○ Redimensionarea instanțelor
○ Atribuirea IP-urilor flotante
○ Consolă interactivă și jurnal de consolă
○ Atribuirea grupurilor de securitate
○ Cote de calcul
○ Obținerea statisticilor din Nova
○ API Placement și Nova Cells v2
○ API Placement și planificarea instanțelor
○ Comenzi client API Placement
○ Verificarea serviciilor Nova
● Cinder - Stocare pe blocuri ~2-3h
○ Parametrii volumelor
○ Crearea volumelor
○ Gestionarea volumelor
○ Atașarea volumelor la instanțe Nova
○ Gestionarea snapshot-urilor de volum
○ Gestionarea backup-urilor de volum
○ Detalii interne despre snapshot-uri și backup-uri în Cinder
○ Transferul volumelor între proiecte
○ Restaurarea backup-urilor
○ Gestionarea cotelor de volum
○ Adăugarea unui nou backend de stocare
○ QoS (limite) în Cinder
○ Backend-uri de stocare LVM, array și Ceph
○ Ceph în OpenStack
○ Integrarea Ceph și Cinder
○ Practici bune pentru implementări Ceph
○ Verificarea serviciilor Cinder
● Barbican - Serviciu de gestionare a cheilor - ~2h
○ Arhitectura Barbican
○ Stocarea parolelor
○ Generarea și stocarea cheilor de criptare simetrice
○ Mecanisme de criptare a volumelor
○ Configurarea tipului de stocare Cinder pentru criptarea volumelor
○ Limitări ale criptării volumelor
○ Stocarea pachetelor de certificate X.509
● Swift - Stocare pe obiecte (screening rapid pentru examenul COA) <1h
○ Componente și procese Swift
○ Gestionarea containerelor și obiectelor
○ Gestionarea listelor de control al accesului
○ Configurarea expirării obiectelor
○ Inelul și politicile de stocare
○ Monitorizarea spațiului de stocare disponibil
○ Configurarea cotelor
○ Verificarea serviciilor Swift
● Octavia - Serviciu de echilibrare a sarcinii ~2-3h
○ Arhitectura
○ Obiecte și flux de cereri
○ Flavor-uri Octavia
○ Zone de disponibilitate Octavia
○ Crearea echilibratorului de sarcină HTTP
○ Crearea echilibratorului de sarcină TCP
○ Crearea echilibratorului de sarcină HTTPS passthrough
○ Listenere, Pool-uri și Monitorizări de sănătate
○ Echilibrarea sarcinii la nivelul 7 în Octavia
○ Construirea imaginii Amphora
○ Failover LB
○ Detalii de rețea și monitorizare
○ Depanarea Octavia
● Heat - Orchestrare ~1-2h
○ Șablonul de orchestrere Heat și componentele sale
○ Crearea stivei Heat
○ Verificarea stivei Heat
○ Actualizarea stivei Heat
○ Verificarea serviciilor Heat
● Depanare de bază ~2h
○ Analiza fișierelor de jurnal
○ Jurnalizare centralizată
○ Depanarea interogărilor clientului OpenStack
○ Gestionarea bazei de date OpenStack
○ Backup-ul OpenStack
○ Analiza stării nodului de calcul
○ Analiza stării instanțelor
○ Analiza broker-ului AMQP (RabbitMQ)
○ Servicii de metadate
○ Metodă generală de diagnosticare a problemelor OpenStack
○ Depanarea problemelor de rețea
○ Depanarea performanței rețelei
○ Backup și recuperare a instanțelor
3. Subiecte avansate
● Considerații hardware și planificarea capacității ~2h
○ Hardware de calcul
○ Designul rețelei
○ Designul stocării
○ Dimensionarea flavor-urilor
○ Supracomiterea resurselor
● Sistemul de roluri - autorizare în OpenStack ~2h
○ Crearea unui nou rol ca extensie a rolului de membru
○ policy.yaml - Autorizarea apelurilor API
● Plan de control cu disponibilitate ridicată ~1h
○ HA în serviciile OpenStack
○ Baza de date HA
○ Coadă de mesaje HA
● Partiționarea cloud-ului și filtrele de planificare ~1h
○ De ce și cum să implementați partiții cloud (agregate de gazde)
○ Filtrele de planificare Nova
● Migrarea sarcinilor ~1h
○ Migrare rece și live
○ Optimizarea migrării live
● Monitorizarea și telemetria OpenStack <1h
○ Serviciul Ceilometer
○ Monitorizare externă
● Funcții avansate ale cloud-ului/hypervisorului <1h
○ Fixarea CPU / Arhitectura NUMA
○ SR-IOV
● Cloud-init și personalizarea imaginilor <1h
○ Serviciul de metadate
● Backend-uri de stocare pe blocuri <1h
○ LVM
○ Ceph RBD
○ Aparate fizice
○ Considerații de rețea de stocare
● Actualizarea OpenStack <1h
○ Strategii și proceduri de actualizare
○ Actualizare fără timp de nefuncționare
● Provizionarea hardware-ului gol cu OpenStack <1h
○ Modulul Ironic
○ Conceptele de undercloud și overcloud
● Viitorul OpenStack
4. Explorare aprofundată a Neutron și a backend-ului OVN - ~6-8h
● Arhitectura OVN
● Componentele OVN
● ML2 - Driver OVN vs OvS
● Rețea OVN de sus în jos
○ Logica OpenStack (baza de date Neutron)
○ Baza de date Northbound
○ Baza de date Southbound
○ Pipeline-uri de fluxuri logice
○ Fluxuri logice
○ Fluxuri OpenFlow
● Rețea Neutron și comutator logic OVN
○ Porturi logice și tipurile lor
○ Fluxuri de comutare
● Router Neutron și router logic OVN
○ Tipuri de NAT
○ Fluxuri de rutare
● Subrețea Neutron și DHCP nativ
○ Fluxuri DHCP
● Grupuri de securitate în OVN
○ ACL-uri și Grupuri de porturi
○ Fluxuri de grupuri de securitate
○ Securitatea porturilor în OVN
● Rezumatul tabelelor Northbound OVN
● Fluxul de informații în OVN
○ Baza de date Neutron, bazele de date OVN NB și SB, OpenFlow la OvS
● Trasarea fluxurilor logice
○ Definirea microfluxurilor
○ Trasare L2
○ Trasare L3
○ Trasare DHCP
● Fluxuri fizice - OpenFlow
○ Ciclul de viață fizic al pachetului inițiat de VM
● Trasare fizică
○ Trasare pentru pachete ipotetice
○ Trasare pentru pachete reale
● Afișarea bazei de date și a resurselor Open vSwitch
Mărturii (3)
Am descoperit lucruri noi.
Cristian
Curs - OpenStack Security
Tradus de catre o masina
comunicare, cunoștințe din experiență, rezolva probleme,
Marcin Walewski - Intel Technology Poland Sp. z o.o.
Curs - OpenStack Bootcamp
Tradus de catre o masina
Subiectele diverse
Daniel Lindh - Tele 2 Sverige AB
Curs - OpenStack for Telecom
Tradus de catre o masina