Entrega Contínua na AWS

12 Mar 2015 19h - 12 Mar 2015 22h FPU

O ORGANIZADOR DESSE EVENTO FOI
organizacao

UaiJUG

Grupo de Usuários Java do Triângulo Mineiro

TL;DR

A Entrega Contínua de software, ou seja, a automação completa das atividades de desenvolvimento e operações de sistemas, permite que o os ciclos de inovação sejam mais ágeis, os riscos menores e os envolvidos mais produtivos. Este tutorial apresenta como implementar automações de DevOps usando os serviços da AWS, para que seus usuários recebam o valor de seu software de maneira ágil e contínua.

Descrição

Entregar software de maneira contínua, sem ter que aguardar lançamentos complicados, traz efeitos positivos para os processos de software. Automatizar e integrar completamente as atividades de desenvolvimento e operações de sistemas (DevOps), permite que os ciclos de inovação sejam mais ágeis, os riscos menores e os envolvidos mais produtivos. Este tutorial apresenta como implementar tais automações usando os serviços da AWS.

Estas automações serão desenvolvidas e verificadas usando as três principais ferramentas de trabalho da AWS: o console web, as ferramentas de linha de comando e um SDK, [neste caso para a linguagem Java]. Será desenvolvido um cenário prático, de maneira iterativa e incremental, partindo de um site estático e adicionando funcionalidades progressivamente. Ao concluir este tutorial, você terá o código e a prática necessários para automatizar processos de DevOps usando os principais serviços da AWS.

Além dos exemplos básicos, cobriremos as principais decisões e práticas de gestão, segurança e escalabilidade. Particularmente, avaliaremos a programação reativa, que propõe o desenvolvimento de sistemas que sejam "Responsivos, Resilientes, Elásticos e Orientados a Mensagens". Estas são características desejáveis de maneira geral e serão estendidas do ambiente de desenvolvimento para o mundo de operações.

Este tutorial se divide em quatro módulos, cada um deles começando com uma apresentação dos serviços e ferramentas necessários e seguindo com exercícios e desafios para os participantes.

Módulo 1: Hospedando Websites no Amazon S3

Neste módulo vamos abordar o Amazon S3 e as vantagens de usá-lo para servir conteúdo estático. Além de armazenamento e entrega via HTTP, veremos assuntos como caching, integração, arquivamento, segurança e demais funcionalidades do serviço.

Módulo 2: Desenvolvendo APIs no Amazon EC2

Este módulo apresenta o desenvolvimento de APIs usando os serviços de virtualização e armazenamento da AWS, o EC2 e o EBS. Abordaremos também os serviços relacionados à alta disponibilidade e escalabilidade: o Amazon Elastic Load Balancing, o AutoScaling e o CloudWatch.

Módulo 3: Evoluindo a camada de Dados

Neste módulo abordaremos a camada de dados e como lidar com ela em automações e DevOps. Apresentaremos o serviço de bancos de dados relacionais, o Amazon RDS, e como evoluir os schemas entre versões da aplicação. Também abordaremos o serviço de bancos de dados não-relacionais, o Amazon DynamoDB, que por não exigir um schema pré-definido pode auxiliar a implementação de entrega contínua, reduzindo ou eliminando os períodos de paradas e manutenções.

Módulo 4: Automatizando TUDO

Neste cenário vamos levar as idéias de entrega contínua às últimas consequências e avaliar as ferramentas necessárias para se automatizar totalmente o processo de entrega de software. Nestes casos, é importante entender as diferenças entre os serviços de gerenciamento de aplicações: O Amazon CloudFormation, o Amazon Elastic Beanstalk, o Amazon OpsWorks e o AWS CloudDeploy. Neste módulo serão apresentados os principais critérios para seleção e uso do serviço adequado em cada arquitetura.

Ao concluir este tutorial, você terá a prática e o código necessários para automatizar processos completos de DevOps e entregar software continuamente aos seus usuários.

LOCAL

FPU

Rua Rafael Marino Neto, 600, Jardim Karaiba, Minas Gerais, Brasil
Uberlândia, Minas Gerais

Comentários