Descrição geral da tecnologia de DevOps

Automatizar a entrega de software para fornecer valor contínuo aos utilizadores

A promessa do DevOps

O DevOps automatiza e agiliza a entrega de software. Torna o seu processo e os seus produtos mais fiáveis. A implementação da prática e das tecnologias de DevOps é uma maneira de proporcionar valor aos seus clientes de forma mais rápida, sob a forma de novos produtos inovadores ou de melhorias a produtos existentes.

Qual é a definição de DevOps?

O DevOps é uma prática que reúne pessoas, processos e tecnologias das áreas de desenvolvimento e TI em torno de cinco práticas fundamentais: planeamento e controlo, desenvolvimento, compilação e teste, entrega e, por último, monitorização e operações. Quando colocam em prática o modelo de DevOps, as equipas de desenvolvimento, operações de TI, engenharia da qualidade e segurança trabalham em estreita cooperação, deixando para trás práticas outrora isoladas. A melhoria em termos de coordenação e colaboração nestas disciplinas reduz o tempo que transcorre entre o momento em que uma alteração é consolidada num sistema e o momento em que a alteração é enviada para produção. Além disso, assegura o cumprimento dos padrões de segurança e fiabilidade como parte do processo. Isto resulta numa entrega mais rápida de produtos de melhor qualidade a clientes mais satisfeitos.

O que devo fazer para colocar um modelo de DevOps em prática?

As equipas multidisciplinares seguem estas fases de DevOps através do respetivo pipeline de entrega para colocar rapidamente os produtos no mercado.

Planear e controlar

Identifique e controle o trabalho através de práticas e processos como os quadros de Kanban e Agile. Quando o trabalho é controlado visualmente, os intervenientes ficam com uma ideia clara da capacidade da equipa de desenvolvimento, o que lhes permite planear e atribuir prioridades às tarefas da melhor maneira e evitar simulações.

Desenvolver

Escreva código com sistemas de controlo de versões modernos, como o Git, para realizar integrações de forma contínua e segura no ramo principal. Quando uma funcionalidade é concluída, o programador submete um pedido pull e, uma vez aprovado, as alterações são intercaladas no ramo principal e o ramo antigo é eliminado.

Compilar e testar

O registo de código no Git ou noutro sistema de controlo de versões desencadeia um processo de compilação automatizado. O código é testado e validado, garantindo a deteção de erros numa fase inicial do desenvolvimento, quando estes estão ainda bem presentes nas mentes dos programadores e a respetiva correção é menos dispendiosa. A este processo de automatização da compilação e teste dá-se o nome de integração contínua (CI). Uma compilação e integração bem-sucedidas traduzem-se num artefacto implementável na produção, o que permite uma entrega contínua (CD), ou seja, a capacidade de implementar na produção em qualquer altura.

Implementar

Após ser testada e validada, cada uma das alterações é passível de implementação no ambiente de produção. Através da utilização de práticas de entrega contínua, a implementação final na produção é uma decisão empresarial controlada manualmente.

Com a implementação contínua, todo o processo é automatizado desde a consolidação do código à produção. Quando o código é implementado automaticamente, os clientes têm acesso às novas funcionalidades assim que estas estão prontas.

Monitorizar e operar

Uma vez chegada a fase de produção, a monitorização fornece informações sobre o desempenho e os padrões de utilização da aplicação. Alcance uma elevada disponibilidade através da obtenção de dados de diagnóstico diversificados e imediatos relativamente aos quais a sua equipa pode tomar medidas concretas. Atenue os problemas dos utilizadores e recolha dados para tomar decisões de negócio informadas relativamente a desenvolvimentos futuros. Além disso, o facto de as políticas de conformidade automatizadas utilizarem a infraestrutura como código e a política como código permite-lhe garantir que as aplicações implementadas na produção utilizam configurações com o estado pretendido alinhadas com as melhores práticas de segurança.

Saber mais

Colocar o DevOps em prática com o Azure

O Azure oferece uma solução completa e automatizada para o DevOps que inclui segurança integrada e monitorização. Enverede por um caminho simples tendo em vista o desenvolvimento e a utilização das suas aplicações na cloud. A experiência de programador do DevOps do Azure integra-se com as suas ferramentas de eleição. Se é programador de Java, perfeito! O Azure disponibiliza integrações nativas com o Eclipse. Se trabalha com o Jenkins, utilize-o para implementar no Azure de forma simples e direta. Reúna as suas equipas de desenvolvimento, operações de TI e engenharia da qualidade para compilar, testar, implementar, monitorizar e gerir aplicações na cloud. O Azure e o Azure Stack, juntos, proporcionam uma experiência híbrida consistente em termos de DevOps no que se refere a aplicações e cargas de trabalho com requisitos regulamentares, de latência ou outros requisitos personalizados. Utilize as suas competências, ferramentas e processos no ambiente em que a sua aplicação precisa de ser executada.

Proporcionar inovação contínua

Simplifique e acelere o desenvolvimento na cloud

Passe menos tempo a compilar pipelines de entrega e dedique-se mais ao desenvolvimento de software. Utilize uma solução de DevOps completa para desenvolver e operar aplicações na cloud, quer esteja a melhorar um pipeline de entrega existente ou a começar do zero. Utilize o Node.js ou .NET, DevOps do Azure ou o Jenkins. O Azure é a maneira mais simples de desenvolver e operar aplicações na cloud.

Aumente a fiabilidade e repetibilidade

Dedique menos tempo à gestão da infraestrutura e segurança, e invista mais tempo no desenvolvimento de soluções inovadoras. Com o Azure, as suas implementações serão feitas de forma contínua com segurança e monitorização de nível empresarial integradas. Tire partido de ferramentas de infraestrutura como código, como o Azure Resource Manager ou o Terraform, para criar implementações fiáveis repetíveis que cumprem os requisitos de conformidade.

Desenvolva e implemente à sua maneira

Utilize as suas ferramentas de eleição. Um processo de DevOps ponto a ponto aberto concilia qualquer cadeia de ferramentas, incluindo ferramentas de código fonte aberto, no seu fluxo de trabalho completo. Utilize o Ansible, o Docker, o Kubernetes ou qualquer outra ferramenta da sua preferência com o Azure.

Os clientes estão a criar coisas fantásticas com o DevOps e o Azure

Simplificar o desenvolvimento e a entrega

Nova plataforma de comércio eletrónico com olhos postos na liderança funciona na Microsoft Cloud

"Being able to leverage so many off-the-shelf services and tools from Azure enabled us to go from zero to a full- fledged e-commerce marketplace in just about 12 months."

Mike Hanrahan, CTO

Leia a história

Jet.com

Eliminar tempo de inatividade e aumentar a fiabilidade

A GEICO acelera a inovação em seguros na cloud

"With DevOps and Azure, we’re able to reduce our new-feature release cycle down to one week, and we think we can even speed that up."

Fikri Larguet, Diretor dos Serviços Cloud

Leia a história

Geico

Alcançar a automatização com o código aberto

Empresa de energia eletrifica o ritmo de inovação e expansão

"Azure support for Docker, Kubernetes, Puppet, Terraform, Cassandra, and other open source tools has become very important to us and has really accelerated our move into Azure.”

Robert Rudduck, Diretor de Arquitetura e DevOps

Leia a história

Ambit Energy

Explorar o Azure para DevOps

Continue a utilizar as ferramentas de código fonte aberto e de terceiros de que mais gosta no seu pipeline. Também pode tirar partido do DevOps do Azure para orquestrar e complementar a sua cadeia de ferramentas de DevOps ponto a ponto.

Desenvolver

Simplifique a experiência de desenvolvimento através das integrações nativas do Azure com o Visual Studio e o Visual Studio Code. Se é programador de Java, tire partido das experiências diversificadas do Azure em IDEs de terceiros como o Eclipse e IntelliJ com o Azure Toolkit.

Partilhe código, crie compilações e forneça software com repositórios de Git ilimitados e utilize uma gestão de trabalho agile com o DevOps do Azure. Aprovisione ambientes para programadores numa questão de minutos com o DevTest Labs.

Compilar e testar

Configure pipelines de CI/CD e faça a gestão de pacotes com o DevOps do Azure. Integre as compilações e pipelines existentes do Jenkins no Azure e utilize plug-ins de agente dinâmicos para reduzir os requisitos e os custos de infraestrutura.

Proceda a envios de forma atempada e com qualidade elevada através da utilização do DevTest Labs para configurar e gerir os seus ambientes de teste. Crie, teste e envie aplicações iOS, macOS, Android e Windows com maior rapidez e confiança através da automatização dos respetivos ciclos de vida com o Visual Studio App Center. Teste em milhares de dispositivos reais, distribua pelos técnicos de testes beta e lojas de aplicações, e monitorize a utilização com dados de falhas e de análise.

Implementar

A infraestrutura como código recolhe as definições do ambiente como código declarativo, tal como JSON ou YAML, para fins de aprovisionamento e configuração automatizados. Utilize o Azure Resource Manager ou o Terraform para aprovisionar ambientes duplicados de forma fiável. A Automatização do Azure e ferramentas como o Ansible, Chef ou Puppet oferecem gestão de configuração e automatização.

Automatize o teste e a entrega do seu software em vários ambientes, inclusivamente até à produção com portas de aprovação, com o serviço Release Management do DevOps do Azure. Também pode implementar diretamente a partir dos seus pipelines de Jenkins para as Máquinas Virtuais, as Aplicações Web ou o Azure Container Service.

Monitorizar e operar

Monitorize o estado de funcionamento da infraestrutura e faça a integração em dashboards existentes no Grafana, no Kibana ou no portal do Azure com o Azure Monitor. Associe, recolha e transforme rapidamente dados de registo de várias localizações em perceções e medidas concretas com o Log Analytics. Faça o diagnóstico de problemas e otimize a sua aplicação com o Application Insights.

Certifique-se de que a sua infraestrutura aprovisionada e as aplicações estão em conformidade com o Azure Policy ou o Chef Automate. Ao ser utilizado em combinação com o Centro de Segurança, permite-lhe limitar a exposição a ameaças, bem como identificar e remediar rapidamente as vulnerabilidades.

Obter um DevOps consistente na cloud híbrida

O Azure Stack é uma extensão do Azure, que alarga as capacidades da cloud aos ambientes no local. Forneça serviços do Azure a partir do seu datacenter, mantendo simultaneamente um equilíbrio entre flexibilidade e controlo, para proporcionar implementações na cloud híbrida verdadeiramente consistentes.

Utilize o Azure DevOps Server para obter o mesmo conjunto completo de capacidades e serviços de DevOps facultado pelo Team Services, mas com a possibilidade de os executar no local.

Vídeo

Agile na Microsoft

Ver o vídeo

Vídeo

Introdução ao Visual Studio App Center

Ver o vídeo

Documentação

Azure DevOps Projects para GitHub

Explorar a Documentação

Começar a utilizar o DevOps ao seu ritmo

É muito simples dar início à implementação da sua solução de DevOps no Azure. Integre o seu pipeline de forma automática, implemente em qualquer plataforma e comece a monitorizar com a funcionalidade Azure DevOps Projects.

Se utiliza ferramentas de código fonte aberto e de terceiros, experimente as soluções de DevOps do Azure. Explore a arquitetura de soluções e práticas comprovadas para implementar as suas soluções de DevOps no Azure.