Programa do Curso
1. Detalhes de virtualização
a. Visão geral dos conceitos do Sistema Operacional
i. CPU, Memória, Rede, Armazenamento
b. Hipervisor
i. Supervisor dos Supervisores
ii. Máquina "host" e SO "guest"
iii. Hipervisor Tipo-1 & Tipo-2
iv. Citrix XEN, VMware ESX/ESXi, MS Hyper-V, IBM LPAR.
c. Virtualização de Rede
i. Breve introdução ao Modelo OSI de 7 Camadas
1. Foco na camada de rede
ii. Modelo TCP/IP ou Protocolo da Internet
1. Foco em uma única vertical
a. Camada de Aplicação: SSL
b. Camada de Rede: TCP
c. Camada de Internet: IPv4/IPv6
d. Camada de Link: Ethernet
2. Estrutura do pacote
iii. Endereçamento: Endereço IP e Nomes de Domínio
iv. Firewall, Balanceador de Carga, Roteador, Adaptador
v. Rede Virtualizada
1. Abstrações de ordem superior: Sub-redes, Zonas.
d. Exercício Prático:
i. Familiarização com o cluster ESXi e cliente vSphere.
ii. Criar/atualizar redes no cluster ESXi, implantar guests a partir de pacotes VMDK,
habilitando interconectividade entre os guests em um cluster ESXi.
iii. Make modificações em uma instância VM em execução e captura de snapshot.
iv. Atualizar regras do firewall no ESXi usando o cliente vSphere.
2. Cloud Computing: Uma mudança de paradigma
a. Um caminho rápido e econômico para tornar um produto/solução disponível ao mundo
b. Compartilhamento de recursos
i. Virtualização do ambiente virtualizado
c. Benefícios principais:
i. Elasticidade de recursos sob demanda
1. Ideia->Código->Implantação sem a necessidade de infraestrutura
2. Pipelines CI/CD rápidos
ii. Isolamento e autonomia vertical do ambiente
iii. Segurança através da camadação
iv. Otimização de custos
d. Nuvem On-premise e Provedores de Nuvem
e. Nuvem como uma abstração conceitual eficaz para computação distribuída
3. Introdução às camadas de solução em nuvem:
a. IaaS (Infraestrutura como Serviço)
i. AWS, Azure, Google
ii. Escolha um provedor para continuar mais tarde. AWS é recomendado.
1. Introdução ao AWS VPC, AWS EC2 etc.
b. PaaS (Plataforma como Serviço)
i. AWS, Azure, Google, CloudFoundry, Heroku
1. Introdução ao AWS DynamoDB, AWS Kinesis etc.
c. SaaS (Software como Serviço)
i. Breve visão geral
ii. Microsoft Office, Confluence, SalesForce, Slack
d. O SaaS se baseia no PaaS que se baseia no IaaS que se baseia na Virtualização
4. Projeto prático de nuvem IaaS
a. O projeto utiliza a AWS como o provedor de Nuvem IaaS
b. Use CentOS/RHEL como sistema operacional para o restante do exercício
i. Alternativamente, Ubuntu também funcionará, mas RHEL/CentOS são preferidos
c. Obtenha contas individuais de IAM AWS a partir do seu administrador de nuvem
d. Cada aluno deve realizar esses passos independentemente
i. A capacidade de criar sua própria infraestrutura sob demanda é a melhor demonstração do poder da computação em nuvem
ii. Use os assistentes AWS -- consoles online da AWS -- para concluir essas tarefas, a menos que seja mencionado o contrário
e. Crie uma VPC pública na região us-east-1
i. Duas Sub-redes (Subnet-1 e Subnet-2) em duas zonas diferentes de disponibilidade
1. Consulte https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Scenarios.html para referência.
ii. Crie três grupos de segurança separados
1. SG-Internet
a. Permite tráfego de entrada da Internet na porta HTTPS 443 e HTTP 80
b. Nenhuma outra conexão de entrada permitida
2. SG-Serviço
a. Permite apenas tráfego de entrada do grupo de segurança SG-Internet nas portas HTTPS 443 e HTTP 80
b. Permite ICMP somente do SG-Internet
c. Nenhuma outra conexão de entrada permitida
3. SG-SSH:
a. Permite conexão de entrada SSH:22 somente de um único IP que corresponda ao IP público da máquina do laboratório do aluno. Caso a máquina do laboratório esteja atrás de um proxy, o IP público do proxy.
f. Implante uma instância de AMI pertinente ao seu sistema operacional escolhido -- preferencialmente as versões mais recentes disponíveis em AMIs de RHEL/CentOS -- e hospede a instância na Subnet-1. Anexe a instância aos grupos SG-Serviço e SG-SSH.
g. Access a instância usando SSH da sua máquina do laboratório.
i. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html
h. Instale o servidor NGINX nesta instância
i. https://www.nginx.com/resources/wiki/start/topics/tutorials/install/
i. Coloque conteúdo estático de sua escolha -- páginas HTML, imagens -- para ser servido pelo
NGINX (na porta 80 via HTTP) e defina URLs para eles.
i. Consulte https://www.nginx.com/resources/admin-guide/serving-static-content/
j. Teste a URL a partir da própria máquina.
k. Crie uma imagem AMI desta instância em execução.
i. Consulte https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html .
l. Implante essa nova AMI e hospede a instância na Subnet-2. Anexe a instância aos grupos SG-Serviço e SG-SSH.
m. Execute o servidor NGINX e valide que a URL de acesso para o conteúdo estático criado no passo (i) funciona.
n. Crie um novo Balanceador de Carga "clássico" e anexe-o ao SG-Internet.
i. Consulte https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-getting-started.html
ii. Observe a diferença em relação ao Application Load Balancer e Network Load Balancer.
o. Crie uma regra de roteamento redirecionando todo o tráfego HTTP 80 e HTTPS 443 para um grupo de instâncias composto pelas duas instâncias criadas acima.
p. Usando qualquer ferramenta de gerenciamento de certificados -- java keytool etc. -- crie uma chave-pública e um certificado auto-assinado e importe o certificado para AWS Certificate Manager (ACM)
i. Consulte https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html
ii. Alternativamente, o ACM pode ser usado como autoridade de gerenciamento e assinatura de certificados e um novo certificado pode ser solicitado ao ACM. Mas nesse caso, um nome de domínio válido deve ser usado, os administradores correspondentes do domínio devem estar disponíveis para validar a solicitação, e uma entrada AWS Route53 subsequente precisa ser criada para mapear sobre o IP ELB. Esses são passos mais avançados e, portanto, p.(i) é melhor recomendado.
q. Use esse certificado para a conexão TLS/SSL do ELB para suportar https
eu. Veja https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/ssl-server-cert.html
r. A partir de seu navegador, vá para http:://<elb-public-access-name>/<static-content-url>
s. Você deve ver o conteúdo estático no seu navegador.
t. Pare cada uma das instâncias uma de cada vez e submeta as URLs.
u. Pare ambas as instâncias e submeta as URLs.
5. Monitoramento de nuvem: introdução e desenvolvimento. Projeto prático
a. Métricas AWS CloudWatch
b. Go ao painel do AWS CloudWatch para as instâncias
i. Recupere as métricas relevantes e explique a variabilidade com o tempo
1.https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html
c. Go ao painel do AWS CloudWatch para o ELB
i. Observe as métricas do ELB e explique sua variabilidade com o tempo
1.https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-cloudwatch-metrics.html
6. Conceitos Avançados para Aprendizado Adicional:
a. Nuvem Híbrida -- on-premise e nuvem pública
b. Migração: On-premise para nuvem pública
i. Migração do código da aplicação
ii. Database migração
c. DevOps
i. Infraestrutura como código
ii. Modelo AWS Cloud Formation
d. Auto-escala
i. Métricas AWS CloudWatch para determinar a saúde
Requisitos
Não são necessários requisitos específicos para frequentar este curso.
Declaração de Clientes (1)
O formador explica-o muito bem.
Cosmin Simota - Serviciul de Telecomunicatii Speciale
Curso - Cloud computing essentials for managers / software engineers
Máquina Traduzida