AWS series VII: Elastic Beanstalk (EB)
AWS series VII: Elastic Beanstalk (EB)
Serie de artigos sobre Amazon Web Services.
Lab 6 - AWS Elastic Beanstalk
Em este lab sobre Elastic Beanstalk (EB) aprenderemos alguns conceitos importantes da camada de plataforma da AWS:
- Deploy de aplicações
- Plataformas/entornos de execução disponíveis
- Logging
- Monitoramento
Pre-reqs
gitpython3pip3
Se não tiver os pre-reqs na máquina local pular para o deploy em uma VM no EC2.
Deploy local
- Clonar o repositório:
1
$ git clone https://github.com/josecastillolema/fiap
Navegar ate o diretorio
fiap/scj/cloud/lab06-paas-eb. O diretorio contem os seguintes arquivos:application.py: Um serviço web escrito em Python que usa a biblioteca Flask.requirements.txt: As dependências da aplicação. Podem ser instaladas usandopip, o gestor de dependências do Python.
- Instalar as dependências:
1
$ pip3 install -r requirements.txt
- Executar a aplicacao:
1 2 3 4 5 6 7
$ python3 application.py Serving Flask app "application" (lazy loading) Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. Debug mode: off Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
- Testar o acesso local:

Deploy em uma VM no EC2
Se tiver feito o deploy local pode pular esta seção.
Criar uma VM com a imagem
Amazon LinuxLogar na VM
- Atualizar os repositorios:
1
$ sudo yum update
- Instalar o pip3 (gestor de pacotes do python3):
1
$ sudo yum install -y python3-pip git
- Clonar o repositório:
1
$ git clone https://github.com/josecastillolema/fiap
- Navegar ate o diretorio
fiap/shift/multicloud/lab06-paas-eb. O diretorio contem os seguintes arquivos:application.py: Um serviço web escrito em Python que usa a biblioteca Flask.requirements.txt: As dependências da aplicação. Podem ser instaladas usandopip, o gestor de dependências do Python.
- Instalar as dependências:
1
$ sudo pip3 install -r requirements.txt --use-feature=2020-resolver
- Executar a aplicação:
1 2 3 4 5 6 7
$ python3 application.py Serving Flask app "application" (lazy loading) Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. Debug mode: off Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) - Em uma nova terminal testar o acesso local:
1 2
$ curl localhost:5000 <h1>Hola FIAP!</h1>
- Testar o acesso remoto pela IP pública da VM (lembrando que é necessária a liberacão da porta 5000 no security group da VM):
Deploy na AWS
- Fazer o upload da aplicação. O arquivo comprimido deve conter os seguintes arquivos:
application.py: Um serviço web escrito em Python que usa a biblioteca Flask.requirements.txt: As dependências da aplicação. Podem ser instaladas usandopip, o gestor de dependências do Python.
Os próximos passos relativos a segurança são específicos das contas AWS Academy
a. Antes de criar a aplicaçao, mostrar as opções avançadas:

b. Editar as opções de segurança:

c. Fazer os seguintes ajustes:
- Accessar a URL da aplicação:

Logging e monitoramento
This post is licensed under CC BY 4.0 by the author.










