Container Service in Action - Imasters Developer Week 2015
-
Upload
site-blindado-labs -
Category
Technology
-
view
66 -
download
2
Transcript of Container Service in Action - Imasters Developer Week 2015
![Page 1: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/1.jpg)
Container Service in Action
![Page 2: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/2.jpg)
Heitor Vital
● Áreas de Atuaçãoo Cloud Computingo Segurança Informaçãoo Jogoso Dispositivos Móveiso …
● Acadêmicoo MBA FGVo Mestrado UFPEo Graduação UFPE
br.linkedin.com/in/heitorvital
twitter.com/heitorvital
hvital.blogspot.com.br
labs.siteblindado.com
slideshare.net/HeitorVital
![Page 3: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/3.jpg)
Antes o mundo era simples1 Server + LAMP, agora ...
![Page 4: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/4.jpg)
Matrix from Hell
![Page 5: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/5.jpg)
Transporte de carga pré-1960
![Page 6: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/6.jpg)
Solução Transportes
![Page 7: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/7.jpg)
Docker is a shipping container system for code
Docker enables any application and its dependencies to be packaged up as a lightweight, portable, self-sufficient container
![Page 8: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/8.jpg)
Vantagens
● Developerso Inside the box (code)o Build once...run anywhere
● SysAdmins / DevOpso Outside the box (infra)o Configure once...run anything
![Page 9: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/9.jpg)
Virtual Machines X Containers
![Page 10: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/10.jpg)
Segurança
● Ambientes Isoladoso Filesystem: root filesystem separadoo Resource: cpu e memória isolados via cgroupso Network: namespace próprio, virtual interface e IP próprio
● Isso é suficiente??o 6 CVEs em 2014o Relativamente baixo ainda :)
![Page 11: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/11.jpg)
Docker Timeline
● 01/2013 - Projeto interno (dotCloud)● 03/2013 - PyCon US + Docker 0.1● 09/2013 - RedHat + Docker 0.6● 01/2014 - $15M Greylock Partners● 04/2014 - Suporte Elastic Beanstalk● 09/2014 - $40M Sequoia Capital● 11/2014 - Suporte ECS (EC2 Container Service)
![Page 12: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/12.jpg)
Docker on AWS
● Configuration & Deployment● Microservices● Batch processing
![Page 13: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/13.jpg)
Facilidades
Cluster managementScalingSchedulingSecurityExtensible
![Page 14: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/14.jpg)
Key Components
● Containers Instanceso EC2 Instanceso Docker daemono ECS Agent (connect to clusters)
● Clusterso Grupo de Containers Instanceso Pode ser de tipos diferenteso Multi-AZ Support
● Tasks [Definition]o Grupo de containers
relacionadoso Executado nos
Containers Instances
● Containerso Docker containero Executor de task
![Page 15: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/15.jpg)
“Hands-On”
![Page 16: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/16.jpg)
Configurar CLI
Toda execução do Amazon ECS é via AWS CLI. Referência
$ sudo easy_install pip
$ sudo pip install awscli
$ aws configure
![Page 17: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/17.jpg)
Create Cluster
$ aws ecs create-cluster --cluster-name iMastersCluster
{ "cluster": { "clusterName": "iMastersCluster", "status": "ACTIVE", "clusterArn": "arn:aws:ecs:us-east-1:748809930145:cluster/iMastersCluster" }}
![Page 18: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/18.jpg)
Create Container Instances
Usar template do CloudFormation de exemplohttps://s3.amazonaws.com/amazon-ecs-cloudformation/Amazon_ECS_Quickstart.template
![Page 19: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/19.jpg)
List Container Instances
$ aws ecs list-container-instances --cluster iMastersCluster
{ "containerInstanceArns": [ "arn:aws:ecs:us-east-1:748809930145:container-instance/4b89a26c-a9ea-4149-bb20-ccbb50828860" ]}
CUIDADO: Esperar um tempo. Se a lista estiver vazia, esperar mais um pouco!
![Page 20: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/20.jpg)
Register Task Definition
$ aws ecs register-task-definition --cli-input-json file://task.json
{ "containerDefinitions": [ { "name": “sleep", "image": “busybox”, "cpu": 10, "command": ["sleep","360"], "memory": 10,"essential": true } ], "family": "sleep360"}
NOTAS: Aqui não é output do comando. É o conteúdo do arquivo | 1.024 cpu units por core | Mínimo de 4MB RAM por container | Referência
![Page 21: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/21.jpg)
List Task Definitions
$ aws ecs list-task-definitions
{ "taskDefinitionArns": [ "arn:aws:ecs:us-east-1:748809930145:task-definition/sleep360:1", "arn:aws:ecs:us-east-1:748809930145:task-definition/sleep360:2" ]}
![Page 22: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/22.jpg)
Run Task
$ aws ecs run-task --cluster iMastersCluster
--task-definition sleep360:1
--count 1
{ // Output grande com detalhes da task}
![Page 23: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/23.jpg)
Check running Task
$ aws ecs list-tasks --cluster iMastersCluster
{ "taskArns": [ "arn:aws:ecs:us-east-1:748809930145:task/b2fae186-4cdd-4f18-ad1d-e38d637f9c80" ]}
OU SSH na máquina
$ docker ps
$ docker inspect CONTAINER_ID
![Page 24: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/24.jpg)
Referências
Ainda teremos muitas novidades em breve. Produto ainda em PREVIEW
1. https://aws.amazon.com/ecs/2. http://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html3. https://aws.amazon.com/blogs/aws/ec2-container-service-in-action/4. https://www.youtube.com/watch?v=2vJLS8qfhI05. https://www.youtube.com/watch?v=JIuyCgNg8io6. https://www.youtube.com/watch?v=LE5uBqNp2Ds7. http://docs.aws.amazon.com/cli/latest/reference/ecs/index.html8. https://github.com/aws/amazon-ecs-agent9. https://www.docker.com/10.http://www.dockerbook.com/11.http://scm.zoomquiet.io/data/20131004215734/index.html
![Page 25: Container Service in Action - Imasters Developer Week 2015](https://reader030.fdocuments.us/reader030/viewer/2022032716/55b3612bbb61eb102a8b4760/html5/thumbnails/25.jpg)
OBRIGADO !!br.linkedin.com/in/heitorvital
twitter.com/heitorvital
hvital.blogspot.com.br
labs.siteblindado.com
Heitor Vital
slideshare.net/HeitorVital