Buscar

15 Provedores de serviço de Cloud Computing

Prévia do material em texto

01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 1/10
Provedores de serviço de Cloud
Computing
ESTUDAR A UTILIZAÇÃO DE SERVIÇOS EM CLOUD COMPUTING, COM FOCO NOS PROFISSIONAIS DE
DESENVOLVIMENTO
AUTOR(A): PROF. MARCOS OLIMPIO AZEVEDO
Olá caros alunos!    Muitos profissionais da área de desenvolvimento de software, vêm percebendo a
necessidade realizar entregas, cada vez mais rápida e com maior qualidade. As utilizações de metodologias
ágeis, como o Scrum, ajuda viabilizar estes objetivos.
Legenda: COMPUTAçãO EM NUVEM
Soluções para Cloud Computing
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 2/10
O mercado está oferecendo uma grande quantidade de soluções para Cloud Computing e com o aumento
dos investimentos neste segmento, percebemos que a direção é trabalhar em nuvem.
As IDEs (Integreted Develpment Environment), são os ambientes de desenvolvimento em nuvem, que
oferecem aos programadores a possibilidade de não se preocuparem com configurações de ambiente e
outros detalhes locais, podendo escrever código a qualquer momento e de qualquer lugar, bastando dispor
de um equipamento com navegador e acesso à internet.
Os desenvolvedores de várias linguagens importantes, como Java, Python, JavaScript, C#, Ruby e PHP, já
contam com serviços na web oferecendo IDEs. Exemplos de IDEs na nuvem: Python Fiddle e JS Fiddle,
Cloud9 IDE, eXo Cloud IDE.
A transformação dos profissionais para desenvolvedor de sistemas na nuvem, enfrenta muitos desafios por
exemplo:
Superar a cultura de estar fisicamente nas empresas, com as equipes de desenvolvimento de sistemas
Desenvolver segurança e garantir as funcionalidades avançadas, disponíveis nas IDEs tradicionais
Desenvolver Tecnologia para as integrações, com outros aplicativos que compõem o kit de
desenvolvimento tradicional
Com o amadurecimento das ferramentas e das próprias tecnologias de nuvem, muitas questões devem ser
respondidas ou solucionadas. O conceito de desenvolver softwares online, é muito recente, mas é possível
identificar um grande potencial de crescimento, apenas examinando o que está disponível hoje. A nuvem é
o futuro dos IDEs.
Com a experiência que tenho sobre esse tema, vejo que a parte de desenvolvimento de aplicações não fica
exatamente intrínseca ao ambiente de Nuvem.
O que realmente acontece é que o desenvolvedor ainda vai manter seu ambiente de desenvolvimento
instalado e configurado em sua estação de trabalho e, através dele criar suas aplicações, com as devidas
bibliotecas, frameworks, e outros recursos que venham a ser necessários para a construção de um projeto.
Feito isso, o que o desenvolvedor irá fazer é publicar a aplicação dentro da Nuvem, de forma transparente,
utilizando recursos que são residentes da própria Nuvem, como repositório de versionamento (CVS, Git,
SVN, ou outro qualquer), servidores de aplicações  (JBoss, WebLogic, WebSphere, etc), Bancos de Dados, etc.
Para isso ocorrer, o desenvolvedor deve fazer o commit do seu projeto para o repositório de versionamento
da Nuvem e, tendo concluído essa parte, irá fazer a publicação (deployment) no servidor de aplicações que
também está dentro da Nuvem. Como resultado final, o projeto publicado passará a ter um caminho (URL)
que permitirá o acesso direto a aplicação que foi produto do projeto do desenvolvedor por seu público, de
forma transparente.
As questões de segurança da Nuvem são regidas por ela mesma, conforme os padrões de configuração
seguidos pelo fornecedor do serviço. Uma vez que você está dentro de uma Nuvem, seu acesso já está sendo
regido por normas de segurança já implementadas pelo fornecedor do serviço, mediante um contrato de
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 3/10
compra desse serviço e os componentes a ele agregados. Num cenário em que se pensa em colocar
informações de uma empresa numa Nuvem, essas questões de segurança devem ser revisitadas, pois o
serviço deve garantir que as informações vão ficar intactas e preservadas pelo fornecedor.
DevOps
Desenvolvedores precisam adaptar a maneira de criar aplicativos para a nuvem, não limitando apenas à
criação de aplicações, mas também visando segurança da nuvem, a fim de promover o crescimento da
aplicação.
O desenvolvimento de aplicações visando crescimento desta modalidade é o foco, devemos conhecer uma
nova categoria chamada DevOps que refere à prática de aliar o desenvolvimento de um departamento de TI
e operações para criar uma melhor comunicação entre as duas arquiteturas, aumentando rapidamente a
velocidade em que as aplicações são desenvolvidas e implantadas.
DevOps é uma parte importante do trabalho com a computação em nuvem PaaS, pois sua metodologia e
tecnologia são destinadas para a otimização do tempo.
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 4/10
Os desenvolvedores devem manter o seu código e banco de dados simples e também encontrar uma maneira
de armazenar dados de modo que possam ser escalados, da mesma forma que os desenvolvedores devem
olhar para o futuro e construir suas aplicações com os padrões de amanhã em mente. Isso significa que deve
ser feito um planejamento para a portabilidade e interoperabilidade.
DEFINIçãO
DevOps é uma prática que unifica pessoas, processos e tecnologias entre desenvolvimento e TI em
cinco práticas principais: planejamento e acompanhamento, desenvolvimento, build e teste,
entrega e monitoramento e operações. Com a prática de DevOps, as equipes de desenvolvimento,
operações de TI, engenharia da qualidade e segurança trabalham em estreita cooperação,
eliminando práticas que antes eram isoladas. A melhoria da coordenação e da colaboração entre
essas disciplinas reduz o tempo que uma alteração confirmada em um sistema leva para ser
colocada em produção. Além disso, ela assegura que os padrões de segurança e confiabilidade sejam
atendidos como parte do processo. O resultado: produtos melhores, entregues com mais rapidez
para clientes mais satisfeitos.
Modelo de DevOps
Planejar e acompanhar
Identifique e acompanhe o trabalho usando práticas e processos como quadros Kanban e Agile. Quando o
trabalho é acompanhado visualmente, os stakeholders têm um insight claro sobre a capacidade da equipe
de desenvolvimento e podem planejar e priorizar melhor as tarefas, evitando ações desnecessárias.
Desenvolver
Escreva códigos usando sistemas de controle de versão modernos, como o Git, para integrar de forma
contínua e segura ao branch mestre. Quando um recurso está concluído, o desenvolvedor envia uma
solicitação de pull e, quando ela é aprovada, as alterações são mescladas ao branch mestre e o branch
antigo é excluído.
Criar e testar
Fazer check-in do código no Git ou em outro sistema de controle de versão faz com que um processo de
build automatizado seja iniciado. O código é testado e validado, assegurando que os bugs sejam capturados
antecipadamente no desenvolvimento, quando eles ainda estão frescos na mente do desenvolvedor e sua
correção é menos onerosa. Esse processo de automatizar o build e o teste é chamado de CI (integração
contínua). O resultado do sucesso do build e da integração é um artefato que pode ser implantado na
produção, permitindo a CD (entrega contínua), ou seja, a capacidade de implantar para produção a qualquer
momento.
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 5/10
Implantar
Após o teste e a validação, cada alteração pode ser implantada no ambiente de produção. Usando práticas
de entrega contínua, a implantação final na produção é uma decisão de negócios controlada manualmente.
Com a implantação contínua, todo o processo, desde a confirmação do código até a produção, é
automatizado. Quando o código é implantado automaticamente, os clientes têm acesso aos novos recursos
assim que eles ficam prontos.
Monitorar e operar
Quando o aplicativoestá ativo em produção, o monitoramento entrega informações sobre seus padrões de
uso e desempenho. Para alcançar a alta disponibilidade, receba dados de diagnóstico completos e
imediatos, com base nos quais sua equipe pode agir rapidamente. Atenue problemas de usuários e reúna
dados para tomar decisões de negócios conscientes sobre o desenvolvimento futuro. E, com políticas de
conformidade automatizadas, usando “infraestrutura como código” e “política como código”, você garantirá
que os aplicativos implantados na produção usem Desired State Configurations alinhadas às melhores
práticas de segurança.
 
Conclusão
Para resumir tudo, do ponto de vista de desenvolvedor de aplicações, trabalhar com Nuvem torna todo o
trabalho centralizado e organizado, pois os recursos necessários para um desenvolvimento e finalização de
uma aplicação estão todos no mesmo lugar, minimizando impactos como busca de recursos em outros
ambientes/servidores e principalmente, minimizando custos como investimento em hardware.
Um serviço como esse deve ter um alerta sempre ativo no que tange a Segurança da Informação, pois no
final do dia, as informações de negócio de um cliente têm que estar sempre preservadas e mantidas em um
local seguro e com um contrato que dê sustentação a qualquer que seja o problema relacionado a
informações que um cliente pode armazenar dentro de uma Nuvem.
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 6/10
Legenda: PERGUNTAS
ATIVIDADE FINAL
Qualquer  aplicação podem ser migradas para nuvens públicas?
A. Sim, desde que dentro de uma estratégia de migração estruturada. Mover as aplicações internas, que
ainda na sua maioria não foram projetados para ambientes de nuvem, pode significar um fracasso e
custos não previsíveis.
B. Sim, apenas aplicaçoes desenvolvidas em  C#, ASP.NET, Silverlight, PHP, visual basic, cobol,
JavaScript e HTML
C. Não, apenas aplicações em Java
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 7/10
D. Sim, desde que dentro de uma estratégia de migração dos dados e arquivos
Analise as alternativas abaixo e escolha qual é um Beneficio da
computação em nuvem
A. Incompatibilidade
B. Disponibilidade
C. Baixa largura de banda
D. Falta de Suporte
O DevOps é uma parte importante para trabalhar com a computação em
nuvem ____________, pois sua metodologia e tecnologia são destinadas
para a otimização do tempo.
Escolha a alternativa correta para preencher a lacuna da frase.
A. SaaS
B. PaaS
C. IaaS
D. MaaS
REFERÊNCIA
DATE, C. J. Introdução a sistemas de bancos de dados. Rio de Janeiro: Elsevier, 2004.
ELMASRI, Ramez. Sistemas de banco de dados. 4. ed. São Paulo: Pearson, 2005. 
LONEY, Kevin; BRYLA, Bob. Oracle Database 10g ¿ manual do DBA. 1. ed. Rio de Janeiro: Campus, 2005.
LUIS, de C. Costa Rogério. SQL Guia Prático. 2. ed. São Paulo: Brasport, 2006. 
PEREIRA Neto, Álvaro. PostgreSQL técnicas avançadas. São Paulo: Érica, 2003. 
RAMALHO, José Antonio. Oracle 10g. São Paulo: Thomson, 2005. 
SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN S. Sistema de banco de dados. 5. ed. Rio de
Janeiro: Campus, 2006. 
SOARES, Walace. MySQL conceitos e aplicações. São Paulo: Érica, 2004. 
MICROSOFT.  Visão geral da tecnologia de DevOps. [S. l.], 2018. Disponível em:
https://azure.microsoft.com/pt-br/overview/devops/. Acesso em: 24 nov. 2018.
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 8/10
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 9/10
01/08/2021 AVA UNINOVE
https://aapa.uninove.br/seu/AAPA/topico/container_impressao.php 10/10

Mais conteúdos dessa disciplina