Programa do Curso
1. Introdução a OpenStack - 2h
História da nuvem e OpenStack
● Caraterísticas da nuvem
Modelos de nuvem
Privado, público, híbrido
No local, IaaS, PaaS, SaaS
● Implementações de nuvem pública e privada baseadas em OpenStack
Distribuições de código aberto e comerciais OpenStack
● Modelos de implantação OpenStack
● Ecossistema OpenStack
Módulos
Ferramentas subjacentes
○ Integrações
● OpenStack ciclo de vida
● OpenStack certificação
OpenStack laboratório (VM) para este curso
2. Workshop prático de administração OpenStack
● Conhecer OpenStack ~0.5h
Componentes de OpenStack (Keystone, Glance, Nova, Neutron, Cinder, Swift,
Calor)
Interação com a nuvem OpenStack
Daemons OpenStack e fluxo de comunicação API
Keystone - Serviço de gestão de identidades ~1h
Arquitetura do Keystone
Autenticação e backends disponíveis
Tipos de tokens e gestão de tokens
Autorização em OpenStack - funções e oslo.policy
Recursos-chave - domínios, projectos, utilizadores
Openrc e clouds.yaml - configuração de clientes CLI
OpenStack Catálogo de serviços
Adição de um novo serviço OpenStack
Sistema de quotas em OpenStack
● Serviço Glance - Imagem ~1,5h
Imagens ajustadas para a nuvem
Caraterísticas da imagem (propriedades, metadados, formato, contentor)
Carregamento e descarregamento de imagens
Partilha de imagens
Armazenamento de imagens de relance
Imagens protegidas
Gerir quotas para o serviço de imagens
Verificação dos serviços do Glance
Neutron - Networking ~2-3h
Arquitetura e serviços Neutron
O plugin ML2
Networking no nó de computação - análise
Conceitos e ferramentas usados pelo Neutron
Tipos básicos de recursos de rede do Neutron
Gerir redes de inquilinos, sub-redes,
Gerir grupos e regras de segurança
Encaminhamento Este-Oeste
Espaços de nomes de rede
Gerir redes externas/fornecedoras
Encaminhamento Norte-Sul
Gestão de IPs flutuantes
Gestão de quotas de rede
Resolução básica de problemas de rede (namespaces, tcpdump, etc.)
Networking quotas
Verificação dos serviços Neutron
Nova - Serviço de computação ~2-3h
Interfaces para hipervisores
Gestão de pares de chaves
Gestão de sabores
Topologia de sabores e CPU
Parâmetros de instância
○ Criação de uma instância
Verificação de instâncias geradas
Captura de imagens
Gestão de instâncias
Redimensionamento de instâncias
Atribuição de IPs flutuantes
Consola interactiva e registo da consola
Atribuição de grupos de segurança
Quotas de computação
Obtenção de estatísticas da Nova
API de colocação e Nova Cells v2
API de colocação e agendamento de instâncias
Comandos do cliente da API de posicionamento
Verificação dos serviços Nova
Cinder - Armazenamento em bloco ~2-3h
Parâmetros de volume
Criação de volume
Gerir o volume
Anexar o volume à instância Nova
Gerir instantâneos do volume
Gerir cópias de segurança do volume
Internos de instantâneos e backups no Cinder
Transferência de volumes entre projectos
Restaurar cópias de segurança
Gerir quotas de volume
Adicionar um novo backend de armazenamento
QoS (limites) no Cinder
LVM, matriz de armazenamento e back-ends de armazenamento Ceph
Ceph em OpenStack
Integração do Ceph e do Cinder
Práticas recomendadas para implantações do Ceph
Verificação dos serviços Cinder
● Barbacã - Serviço de chave Management - ~2h
Arquitetura do Barbican
Armazenamento de frases-passe
Geração e armazenamento de chaves de encriptação simétrica
Mecanismos de encriptação de volumes
Configuração do tipo de armazenamento Cinder para encriptação de volumes
Limitações da encriptação de volumes
Armazenamento de pacotes de certificados X.509
● Swift - Armazenamento de objetos (triagem rápida para o exame COA) <1h
○ Swift componentes e processos
Gerir contentores e objetos
Gerir listas de controlo de acesso
Configurar a expiração de objectos
O anel e as políticas de armazenamento
Monitorizar o espaço de armazenamento disponível
Configuração de quotas
Verificação dos serviços Swift
● Octavia - Balanceamento de carga como serviço ~2-3h
Arquitetura
Objectos e fluxo de pedidos
Sabores do Octavia
Zonas de disponibilidade do Octavia
Criando o balanceador de carga HTTP
Criando o balanceador de carga TCP
Criando o balanceador de carga de passagem HTTPS
Ouvintes, pools e monitores de integridade
Balanceamento de carga da camada 7 no Octavia
Construindo a imagem do Amphora
Failover LB
Networking e detalhes de monitorização
Solução de problemas do Octavia
Heat - Orquestração ~1-2h
Modelo de orquestração do Heat e seus componentes
Criação de pilha de calor
Verificação da pilha de calor
Atualização da pilha de calor
Verificação dos serviços Heat
Resolução de problemas básicos ~2h
Análise de ficheiros de registo
Registo centralizado
Depuração de consultas de clientes OpenStack
Gestão da base de dados OpenStack
Cópia de segurança OpenStack
Analisar o estado do nó de computação
Analisar o estado da instância
Analisar o corretor AMQP (RabbitMQ)
Serviços de metadados
Forma geral de diagnosticar problemas OpenStack
Resolução de problemas de rede
Resolução de problemas de desempenho da rede
Cópia de segurança e recuperação da instância
3. Tópicos avançados
Considerações sobre hardware e planejamento de capacidade ~2h
Hardware de computação
Projeto de rede
Design de armazenamento
Dimensionamento de sabores
Sobrecompromisso de recursos
● Sistema de funções - autorização em OpenStack ~2h
Criação de uma nova função como extensão da função de membro
policy.yaml - API chama autorização
● Plano de controlo altamente disponível ~1h
HA em serviços OpenStack
Base de dados HA
Fila de mensagens HA
Particionamento de nuvem e filtros de agendamento ~1h
Por que e como implementar partições de nuvem (host-agregados)
Filtros de agendamento Nova
● Migração da carga de trabalho ~1h
Migração a frio e em tempo real
Ajustes na migração em direto
● OpenStack monitorização e telemetria <1h
Serviço de ceilómetro
Monitorização externa
● Recursos avançados de nuvem/hipervisor <1h
Fixação da CPU / arquitetura NUMA
SR-IOV
● Personalização da imagem e da instalação na nuvem <1h
Serviço de metadados
● Back-ends de armazenamento em bloco <1h
LVM
Ceph RBD
Dispositivos físicos
Considerações sobre a rede de armazenamento
● Atualização OpenStack <1h
Estratégias e procedimentos de atualização
Atualização com tempo de inatividade zero
● Provisionamento bare-metal com OpenStack <1h
Módulo irónico
Conceitos de subnuvem e sobrenuvem
● Futuro de OpenStack
4. Mergulho profundo no Neutron e no backend OVN - ~6-8h
● Arquitetura OVN
● Componentes da OVN
ML2 - driver OVN vs OvS
● Rede OVN de cima para baixo
Lógica OpenStack (base de dados Neutron)
Base de dados de ligação norte
Base de dados do Sul
Condutas lógicas do percurso de dados
Fluxos lógicos
Fluxos OpenFlow
Rede Neutron e comutador lógico OVN
Portas lógicas e seus tipos
Fluxos de comutação
● Router Neutron e router lógico OVN
Tipos de NAT
Fluxos de encaminhamento
● Sub-rede Neutron e DHCP nativo
Fluxos de DHCP
Grupos de segurança na OVN
ACLs e grupos de portas
Fluxos de grupos de segurança
Segurança de portas na OVN
Resumo das tabelas de ligação norte da OVN
● Fluxo de informação na OVN
Neutron DB, OVN NB e SB DB, OpenFlow na OvS
Rastreio do fluxo lógico
Definição de microfluxos
Rastreio L2
Rastreio L3
Rastreio DHCP
Fluxos físicos - OpenFlow
Ciclo de vida físico do pacote originado pela VM
Rastreio físico
Rastreio de pacotes hipotéticos
Rastreio de pacotes reais
Exibição da base de dados e dos recursos do Open vSwitch