Ferramentas DevOps que todos deveriam aprender em 2020

Comece a aplicar as melhores ferramentas DevOps hoje!





A revolução DevOps finalmente dominou o mundo e as ferramentas DevOps se tornaram incrivelmente populares. De acordo com o Google Trends , o número de solicitações de "ferramentas DevOps" está crescendo constantemente e essa tendência continua.



A metodologia DevOps cobre todo o ciclo de vida de desenvolvimento de software, portanto, os especialistas podem escolher entre uma variedade de ferramentas. Mas, como você sabe, nenhuma ferramenta pode se tornar uma ferramenta universal para todos. No entanto, algumas soluções oferecem uma ampla gama de funções que podem lidar com quase qualquer tarefa.



Vamos dividir as ferramentas DevOps em categorias e compará-las com análogos:



  • ferramentas de desenvolvimento e construção
  • ferramentas de automação de teste
  • ferramentas para organizar a implantação
  • Ferramentas de tempo de execução
  • ferramentas de colaboração.


A implementação bem-sucedida e inteligente do DevOps inclui ferramentas de todos os cinco grupos listados acima. Analise o conjunto atual de ferramentas em seu projeto para não perder um elemento importante do pipeline de CI / CD.



Ferramentas de desenvolvimento e construção





Este é o núcleo da pilha de pipeline de CI / CD. Tudo começa aqui! As melhores ferramentas nesta categoria podem gerenciar vários fluxos de eventos e integrar facilmente com outros produtos.



Nesta fase do ciclo de vida de desenvolvimento, três grupos de ferramentas são distinguidos:



  • sistema de controle de versão (SCM)
  • integração contínua (CI)
  • gestão de dados


Em 2020, o GIT só provou seu lado positivo, portanto, sua ferramenta SCM deve ter um suporte GIT perfeito. Para CI, um pré-requisito é a capacidade de executar e executar assemblies em um ambiente de contêiner isolado. Com relação ao gerenciamento de dados, requer a capacidade de fazer alterações no esquema do banco de dados e manter o banco de dados de acordo com a versão do aplicativo.



Ferramenta SCM + CI # 1



Vencedor: GitLab e GitLab-CI





A melhor ferramenta no ciclo DevOps de 2020 é, sem dúvida, o GitLab, e ele definitivamente permanecerá um líder em inovação no futuro próximo.



A principal função do GitLab é fornecer gerenciamento confortável do repositório Git. A interface da web é intuitiva e fácil de usar. GitLab fornece tudo que você precisa em uma versão gratuita e vem em SaaS e no local (usando seus próprios recursos para hospedar o software).



Nenhuma outra ferramenta SCM usou integração contínua (CI) diretamente em seu repositório e o GitLab já faz isso há muito tempo. Para usar o GitLab-CI, você deve adicionar o arquivo .gitlab-ci.yml à raiz do seu código-fonte, e qualquer alteração no projeto irá disparar ações com base no que você especificar. GitLab e GitLab-CI são merecidamente reconhecidos como líderes no campo de integração contínua (CI-as-code).



Principais benefícios



  • Confiabilidade - O produto está no mercado desde 2013; estábulo; bem mantido.
  • Código aberto - a versão gratuita do GitLab não limita a funcionalidade central de que as equipes de desenvolvimento precisam. Os pacotes de serviços pagos fornecem recursos úteis adicionais para empresas de diferentes tamanhos e necessidades.
  • CI enraizado - nenhuma outra ferramenta no mercado construiu integração contínua diretamente no SCM como o GitLab-CI. O uso do Docker fornece uma compilação em área restrita sem complicações e os relatórios integrados facilitam a depuração (depuração). Não precisamos de integração e gerenciamento complexos de várias ferramentas ao mesmo tempo.
  • Integrações ilimitadas - o GitLab fornece integração fácil de todas as ferramentas DevOps de que você precisa. Isso permite que as equipes de desenvolvimento e manutenção usem uma única fonte de informações sobre seus aplicativos em qualquer ambiente.


Concorrentes



lutaram, mas não venceram



Existem outras ferramentas populares nesta categoria, mas não são tão boas quanto o GitLab. Aqui está o motivo:



GitHub“É um ótimo sistema de controle de versão SaaS para pequenas empresas e estágios iniciais de desenvolvimento. Para grandes empresas que precisam manter endereços IP em sua própria rede, a única solução no GitHub é a máquina virtual .OVA sem suporte de HA. Isso torna difícil manter no local, além disso, .OVA só é adequado para empresas de médio porte, caso contrário, o servidor simplesmente travará sob carga pesada. A falta de Ações do GitHub (até recentemente e ainda não no local) ou CI como código significa que você precisa selecionar uma ferramenta de CI separada e, em seguida, gerenciar essa integração. Finalmente, o GitHub é muito mais caro do que qualquer uma das versões do GitLab.



Jenkins- Embora o Jenkins seja considerado o padrão entre as ferramentas de integração contínua por padrão, sempre faltou recursos de controle de versão. Acontece que você está usando Jenkins mais algum tipo de ferramenta SCM. É muito difícil quando o GitLab pode fazer as duas coisas. O design UX medíocre não é bom para um aplicativo da web moderno e deixa muito a desejar.



BitBucket / Bamboo - Tenho que admitir que é um perdedor automático: por que duas ferramentas quando o GitLab faz tudo completamente sozinho. BitBucket Cloud suporta GitLab-CI / GitHub Action, mas nenhuma empresa maior do que uma startup pode implementá-lo facilmente. O servidor BitBucket local nem mesmo suporta pipelines BitBucket!



Ferramenta de gerenciamento de dados nº 1



Vencedor: FlywayDB





No desenvolvimento de aplicativos da web, a automação do banco de dados geralmente é esquecida. A ideia de implementar mudanças no esquema do banco de dados para novas versões do aplicativo vem com atraso. As alterações de esquema geralmente resultam na adição e renomeação de colunas ou tabelas. Se a versão do aplicativo não corresponder à versão do esquema, o aplicativo pode falhar. Além disso, organizar as alterações do banco de dados ao atualizar um aplicativo pode ser um desafio, pois existem dois sistemas diferentes. FlyWayDB resolve todos esses problemas.



Principais benefícios



  • Controle de versão de banco de dados - Flyway permite que você crie versões de banco de dados, rastreie migrações de banco de dados, migre facilmente ou reverta alterações de esquema sem nenhuma ferramenta adicional para isso.
  • — : Flyway . Flyway , . cmd line ad-hoc, .






Os concorrentes participaram da batalha, mas não venceram,



não existem muitas ferramentas nesta área. Vamos dar uma olhada em alguns deles:



LiquiBase - Liquibase se assemelha ao FlywayDB. Gostaria de montá-lo em cima da Flyway se houvesse um especialista em minha equipe com mais experiência com Liquibase.



Flocker - pode funcionar apenas para aplicativos em contêineres. Tudo deve ser perfeitamente planejado para o lançamento bem-sucedido de bancos de dados em containers. Eu recomendo usar RDS (Relational Database Service) para bancos de dados e não recomendo armazenar informações confidenciais em um contêiner.



Ferramentas de automação de teste





Vamos começar nossa discussão sobre ferramentas de automação de teste classificando-as com base na pirâmide de teste.



A pirâmide de teste (testes) tem 4 níveis:



  • - — . - . -, , ( «») .
  • — — / . , .
  • — , .
  • — . , , .


Como os testes de unidade e de componentes são feitos apenas por desenvolvedores e geralmente dependem do idioma, não avaliaremos essas ferramentas para DevOps.



Ferramenta de teste de integração nº 1



Vencedor: Pepino





Cucumber combina especificações e documentação de teste em um único documento vivo. As especificações estão sempre atualizadas, pois são testadas automaticamente pelo Cucumber. Se você deseja construir uma estrutura de teste automatizada do zero e simular o comportamento do usuário em um aplicativo da web, o Selenium WebDriver com Java e Cucumber BDD é uma ótima maneira de aprender e implementar o Cucumber em um projeto.



Principais benefícios



  • BDD- (Behavior Driven Development — “ ” “ ”) — Cucumber BDD-, .
  • — — ! , Cucumber , , .
  • — , Cucumber , .






Os

concorrentes participaram da batalha, mas não venceram

Entre outras estruturas e ferramentas específicas de tecnologia, apenas o Cucumber pode ser considerado uma solução universal.



Ferramentas de teste ponta a ponta



Ao realizar o teste de ponta a ponta, existem dois pontos principais para se concentrar:



  • teste funcional
  • Teste de estresse.


No teste funcional, verificamos se o que queremos está realmente acontecendo. Por exemplo, quando clico em determinados elementos do meu SPA (Single Page Application), preencho os formulários e seleciono "Enviar", os dados aparecem no DB e a mensagem "Sucesso!"



Também é importante verificarmos se um determinado número de usuários trabalhando no mesmo cenário pode ser tratado sem erros.



A ausência desses 2 tipos de teste será uma desvantagem significativa em seu pipeline de CI / CD.



Ferramenta de teste ponta a ponta nº 1. Teste funcional



Vencedor: SoapUI Pro





A SoapUI está na área de teste de API há muito tempo, desde que os serviços da Web baseados em SOAP eram o padrão. Embora não estejamos mais criando novos serviços SOAP e o nome da ferramenta não tenha mudado, isso não significa que ela não tenha evoluído. SoapUI fornece uma excelente estrutura para construir testes de back-end funcionais automatizados. Os testes podem ser facilmente combinados com ferramentas de integração contínua e usados ​​como parte do pipeline de CI / CD.



Principais benefícios



  • Documentação detalhada - SoapUI está no mercado há muito tempo, muitos recursos online foram criados para ajudá-lo a entender como configurar testes.
  • Facilidade de uso - embora a ferramenta suporte vários protocolos para APIs de teste, SoapUI tem uma interface comum para vários serviços, tornando mais fácil escrever testes.


Os competidores



lutaram, mas não venceram o



Selenium - outra grande ferramenta deste grupo. Eu recomendo usá-lo se você estiver construindo e executando um aplicativo baseado em Java. No entanto, se você estiver construindo um aplicativo da web completo com várias tecnologias, ele pode se tornar complicado para componentes não Java.



Ferramenta de teste ponta a ponta nº 1. Teste de Estresse



Vencedor: LoadRunner





Explicação: Quando chega a hora de carregar o teste de cada elemento do aplicativo, apenas o LoadRunner pode executar essa tarefa. Sim, é um pouco caro e difícil no início, mas o LoadRunner é a única ferramenta que me dá, como arquiteto técnico, total confiança de que o novo código funcionará sob estresse extremo. Além disso, acho que é hora de colocar o LoadRunner na equipe de desenvolvimento, não na equipe de teste.



Principais benefícios



  • Documentação extensa - LoadRunner está no mercado há muito tempo, muitos recursos online foram criados para ajudá-lo a entender como configurar testes de carga.
  • Suporte de protocolo - o Load Runner oferece suporte de ODBC a AJAX, HTTPS e qualquer outro protocolo não trivial que seu aplicativo possa usar. Tentamos não usar várias ferramentas para o teste de carga, pois isso apenas complica o processo.






Os concorrentes participaram da disputa, mas não ganharam de



novo, não existem muitas ferramentas universais nessa área, então a melhor solução é aquela que funcionará em qualquer ambiente com qualquer tecnologia.



Ferramentas de implantação





As ferramentas de implantação são provavelmente o aspecto menos compreendido do desenvolvimento. É difícil para uma equipe de operação usar essas ferramentas sem um conhecimento profundo do código e da funcionalidade do aplicativo. Para os desenvolvedores, gerenciar a implantação é uma nova responsabilidade, então eles ainda não têm experiência suficiente com essas ferramentas.



Em primeiro lugar, vamos dividir todas as ferramentas de implantação em três subcategorias:



  • gerenciamento de artefato
  • gerenciamento de configurações
  • implantar.


Ferramenta de gerenciamento de artefato nº 1



Vencedor: Nexus





O Nexus Artifact Repository oferece suporte a quase todas as principais tecnologias, de Java a NPM e Docker. Podemos usar essa ferramenta para armazenar todos os artefatos usados. A proxy de gerenciadores de pacotes remotos também acelera drasticamente o processo de construção de CI, tornando os pacotes mais disponíveis para construção. Outra vantagem é a capacidade de obter uma imagem completa de todos os pacotes usados ​​em vários projetos de software, bloqueando pacotes de código aberto inseguros (eles podem agir como um vetor de ataque).



Principais benefícios



  • Suporte técnico - Produto confiável; bem mantido.
  • Código aberto - a versão gratuita não limita a funcionalidade básica de que as equipes de desenvolvimento precisam.


Ferramenta de gerenciamento de configuração nº 1



Vencedor: Ansible



Ansible é o líder por um motivo simples: sem estado. Anteriormente, essas ferramentas se concentravam no gerenciamento do estado de configuração. Ao ser iniciada, essa ferramenta, tendo recebido a configuração desejada, tentará corrigir a configuração atual do aplicativo. E com a nova abordagem, apenas componentes sem estado estão presentes. Novas versões do código são artefatos que são implementados para substituir os existentes. Isso pode ser considerado uma espécie de ambiente efêmero e de curto prazo.



Principais benefícios



  • Stateless - o Playbook é iniciado a partir da máquina de implantação e executado nos servidores de destino. Não estou preocupado com o estado do objeto remoto usando uma ferramenta como o Packer para criar objetos implantáveis.
  • — CentOS, Ansible RedHat. , .
  • Molecule ( Ansible) — — , , . Molecule Ansible , , CI/CD-, .
  • YAML — , YAML . , , , DevOps-, — .


Os concorrentes lutaram,



mas não venceram o



OpsCode Chef - comecei minha carreira de DevOps como desenvolvedor de livros de receitas. Ruby e Chef são, é claro, muito queridos no meu coração, mas eles simplesmente não resolvem os problemas dos aplicativos modernos sem estado e baseados em nuvem. O OpsCode Chef é uma ótima ferramenta para aplicativos mais tradicionais e, neste artigo, estamos nos concentrando no futuro.



Puppet - o Puppet nunca teve muitos fãs, especialmente quando comparado ao Chef e Ansible. É ótimo para provisionar e trabalhar com hardware, mas carece de suporte de gerenciamento de configuração moderno para um aplicativo da web.



Ferramenta de implantação nº 1



Vencedor: Terraform





O Terraform resolve o problema de descrever sua infraestrutura como código, de componentes de rede a imagens de servidor completas. Este produto já percorreu um longo caminho desde seu primeiro lançamento, com um grande número de plug-ins e uma comunidade tão forte que certamente o ajudará em qualquer cenário de implantação. A capacidade de oferecer suporte a qualquer tipo de ambiente (local, na nuvem ou em outro lugar) é incomparável. Finalmente, a versão mais recente fornece a maioria das mesmas funções lógicas e classes na HCL como qualquer outra linguagem de programação tradicional - os desenvolvedores são rápidos de entender e podem dominar o Terraform com facilidade.



Principais benefícios



  • Independente de ambiente - o Terraform usa funções que servem como interface entre o código do Terraform, todas as APIs e a lógica interna para se comunicar com o provedor de infraestrutura. Isso significa que aprenderei apenas uma ferramenta e poderei trabalhar em qualquer lugar.
  • Open Source - Ferramentas gratuitas difíceis de bater! Apoio comunitário ao mais alto nível.






Os concorrentes participaram do scrum, mas não venceram o



AWS CloudFormation - Mesmo que você trabalhe apenas no ambiente de nuvem da AWS, seu próximo trabalho pode ter uma ferramenta diferente. Dedicar todo o seu tempo e energia a apenas uma plataforma é uma decisão imediatista. Além disso, muitos novos serviços da AWS estão frequentemente disponíveis como módulos Terraform antes de se tornarem disponíveis no CloudFormation.



Ferramentas de tempo de execução







O objetivo final de qualquer projeto de desenvolvimento é lançar o aplicativo em produção. No mundo DevOps, queremos estar totalmente informados sobre todos os problemas possíveis com nosso ambiente e também queremos minimizar a intervenção manual. Escolher o conjunto certo de ferramentas de tempo de execução é fundamental para alcançar o nirvana ao desenvolver seu aplicativo.



Subcategorias de ferramentas de tempo de execução:



  • X-as-a-service (XaaS)
  • orquestração
  • monitoramento
  • exploração madeireira.


Ferramenta X-as-a-Service # 1



Vencedor: Amazon Web Services





A Amazon sempre foi líder em tecnologia de nuvem, mas não para por aí: a variedade de novos serviços para desenvolvedores é deslumbrante. Transfira qualquer tecnologia e modelo para a AWS e ele será criado e lançado. O custo da ferramenta é bastante razoável: compare-o com a montagem, gerenciamento e manutenção de equipamentos em seu próprio data center. A versão gratuita permite que você experimente e tome a decisão certa antes de gastar dinheiro.



Principais benefícios



  • Prevalência - se você tem experiência na criação de aplicativos na AWS, pode trabalhar em qualquer lugar. As empresas adoram a AWS e as startups também apreciam seu baixo custo.
  • — , AWS . , , , - . .


Os concorrentes



lutaram, mas não venceram o



Azure - o Azure já percorreu um longo caminho desde seu primeiro lançamento, e isso é louvável. No entanto, o desejo de ser diferente dos pares levou a nomes estranhos para serviços, o que muitas vezes complica o trabalho. O que significa armazenamento de blob? E embora o código .NET tenha um desempenho melhor no ecossistema da Microsoft, é improvável que você use o .NET apenas para todos os componentes de seu aplicativo.



Heroku - Eu nunca faria nada além de um projeto pessoal no Heroku devido ao baixo nível de confiabilidade e transparência, então as empresas não deveriam usá-lo como plataforma. Heroku é ótimo para demonstrar algo em um blog, mas para uso prático - “Não, obrigado!”.



Instrumento de orquestração nº 1



Vencedor: OpenShift





Você provavelmente está usando Docker ou outros contêineres em sua pilha de aplicativos. Os aplicativos sem servidor são ótimos, mas podem não se adequar a todas as arquiteturas. Executar contêineres sem uma estrutura de orquestração simplesmente não funcionará. O núcleo do Kubernetes (K8s) é incomparável em termos de segurança e instrumentação. OpenShift é a única plataforma baseada em Kubernetes que pode construir Source2Image, automatizar implantações de pod e rastrear e monitorar. O OpenShift pode ser executado no local, na nuvem ou no local e na nuvem ao mesmo tempo.



Principais benefícios



  • — K8s . ! , OpenShift, .
  • « » — K8s, , OpenShift . , CI/CD, , . - , , API, , . K8s, OpenShift Kubernetes. !


Os concorrentes lutaram,



mas não venceram o



Docker Swarm - o Docker Swarm tentou simplificar os K8s se livrando de um monte de coisas. Ele funciona muito bem para pequenos aplicativos, mas simplesmente não funciona para aplicativos corporativos. Além disso, soluções como AWS ECS têm uma abordagem semelhante, mas tornam mais fácil trabalhar com outros serviços com os quais também posso interagir (Lambda, IAM, etc.).



Ferramenta de monitoramento # 1



Vencedor: New Relic





Os primeiros lançamentos do New Relic fizeram uma coisa bem - Application Performance Monitoring (APM). Agora é uma ferramenta de monitoramento com recursos completos para monitorar o desempenho do servidor, do contêiner, do banco de dados, da experiência do usuário final e, claro, do monitoramento do desempenho do aplicativo.



Principais benefícios



  • Facilidade de uso - quando eu era engenheiro de sistemas, usei muitas ferramentas de monitoramento, mas nunca encontrei algo tão simples e fácil de usar como o New Relic. É SaaS, portanto, você não precisa instalá-lo sozinho.
  • — . , , , . New Relic , .






Os concorrentes participaram da batalha, mas não venceram



Zabbix - Meu primeiro e favorito sistema de monitoramento, mas ficou no passado devido à falta de desenvolvimento em tecnologias de nuvem e na área de monitoramento de desempenho de aplicativos APM. O Zabbix ainda tem um bom desempenho com o monitoramento de infraestrutura de servidor tradicional, mas isso é tudo.



DataDog - Muito focado no processo de gerenciamento do ambiente de produção do aplicativo, e não no código em si. Com as equipes de DevOps que envolvem desenvolvedores, não precisamos depender de ferramentas complexas para fornecer suporte de primeira linha.



Ferramenta de registro # 1



Vencedor: Splunk





Splunk é difícil de competir! Por muito tempo, ele permanece o líder na extração de madeira, continuando a fazê-lo melhor. Com ofertas locais e SaaS, você pode usar o Splunk em qualquer lugar. A principal desvantagem é o preço: o Splunk ainda é muito caro!



Principais benefícios



  • Prevalência - As empresas adoram o Splunk e têm dinheiro para comprá-lo.
  • Embora as startups estejam tentando recuperar os custos, muitos recursos podem ser resolvidos graças aos seus equivalentes de código aberto.
  • Manutenibilidade - Simplificando, o Splunk funciona e faz bem. Ele vem com muitos padrões e recursos prontos para uso. Não há necessidade de perder tempo lendo a documentação e tentando fazer o Splunk funcionar ou descriptografar nada.


Os concorrentes lutaram,



mas não venceram



ELK Stack (ElasticSearch, LogStash e Kibana) - Essas ferramentas parecem favoritas, já que você nem precisa vender fígado para usá-las. Porém, com o crescimento do conjunto de toras e o aumento do número de aplicações a bordo, o trabalho fica cada vez mais difícil. Comparado ao Splunk, com ELK Stack, eu gastei muito mais tempo configurando o kit de ferramentas antes de criar qualquer painel do que antes.



Ferramentas de colaboração





DevOps trata principalmente da mudança cultural dentro de uma organização. A compra de qualquer ferramenta não mudará as práticas habituais da noite para o dia, mas certamente pode promover a colaboração e novas formas de interação.



Subcategorias de ferramentas de colaboração:



  • rastreamento de tarefas
  • ChatOps
  • documentação.


# 1 ferramenta de rastreamento de problemas



Vencedor: Jira





Jira mantém uma posição de liderança, embora a competição nesta área seja crescente. A incrível flexibilidade de Jira permite que as equipes de desenvolvimento e manutenção gerenciem o trabalho do projeto e as tarefas de sprint. Os padrões integrados que usam a terminologia Agile facilitam a passagem das formas tradicionais de trabalho para processos mais eficientes.



Principais benefícios



  • Popularidade - como muitas outras ferramentas, o Jira é usado em quase todos os lugares. Equipes pequenas usam uma versão mais barata e acessível e obtêm tudo o que precisam, enquanto grandes empresas podem pagar por uma licença superior.
  • — Jira — . , Jira , , . Jira , , .


Os concorrentes



conseguiram uma confusão, mas não



venceram o Trello - o Trello ganhou popularidade rapidamente graças à sua ferramenta Kanban gratuita. No entanto, uma vez que os processos são dimensionados e você passa de dezenas de tarefas para milhares, o Trello fica difícil de navegar, pesquisar e relatar.



Pivotal Tracker - Eu era um grande fã dessa ferramenta quando estava trabalhando para uma startup. No entanto, o Pivotal Tracker está mais focado no gerenciamento de produtos do que em tarefas técnicas. Embora gerenciar um produto no Jira seja um pouco mais complexo, ele ainda pode ser implementado lá sem o uso de uma ferramenta adicional.



Ferramenta ChatOps # 1



Vencedor: MatterMost





Explicação: Talvez a maior surpresa para você em minha coleção, e esta é uma ótima notícia! O MatterMost ganhou popularidade ao tirar o melhor dos instrumentos anteriores, mas os incluiu no local. Isso é muito importante para as empresas: MatterMost permite que você controle os dados e também ajuda a integrá-los com ferramentas que funcionam no local. Não precisamos mais sair do firewall para verificar os chats de trabalho.



Principais benefícios



  • Código aberto - a versão de código aberto do MatterMost funciona muito bem para equipes médias e grandes. Ao contrário do plano Slack gratuito, que exclui seu histórico de mensagens, rodar seu próprio servidor significa que você salva todos os seus dados.
  • Integrações - como a API é quase 100% baseada na API do Slack, quase todas as integrações do Slack podem ser usadas diretamente com o MatterMost.






Os concorrentes participaram da batalha, mas não venceram o



Slack - o Slack é legal, mas esses caras cresceram tanto que começaram a buscar lucro. O estágio de recuperação do negócio está se aproximando, o que tira seu principal valor: a Slack fornecia serviços gratuitamente; a desvantagem mais importante da versão gratuita é excluir o histórico de bate-papo.



Microsoft Teams - Experimente integrar um produto Microsoft com algo que não seja a Microsoft ... Boa sorte! É tudo o que quero dizer sobre esta ferramenta!



Ferramenta de documentação nº 1



Vencedor: Confluence





Criar e manter documentação técnica de qualidade é um processo complexo, independentemente da ferramenta que você usa. Embora tenha havido muitas ferramentas de documentação SaaS no mercado ultimamente, seria difícil para mim terceirizar o armazenamento de documentação técnica para aplicativos críticos para terceiros. Armazenar dados e documentos é preferível ao local, e aqui está como o Confluence resolve isso.



Principais benefícios



  • Facilidade de operação - a maioria das ferramentas autônomas pode ser um pouco difícil de configurar e operar e requer algum conhecimento para manter. O Confluence Server funciona bem fora da caixa para 10 ou 10.000 usuários.
  • Plugins - Graças ao Confluence por ter uma navegação fácil e agradável fora da caixa, e ser capaz de adicionar um plugin para praticamente qualquer coisa abre o potencial como um Wiki.


Concorrentes



lutaram, mas não venceram



Leia a documentação - Legal para código aberto, mas nem pense em armazenar conhecimento crítico aqui.



MarkDown - Ótimo para documentar código, mas é difícil hospedar arquitetura, processos ou outros tipos de documentação aqui devido à formatação específica do MarkDown.



Jekyll - Ao documentar conhecimentos técnicos, não quero criar um novo site estático que se desdobrará a cada mudança. O sistema de controle de versão simples do Confluence simplifica muito a documentação interna.



Vamos resumir



Existem literalmente centenas de ferramentas DevOps no mercado, tornando difícil saber quais devem ser usadas e quando devem ser implementadas. Siga este guia fácil para escolher ferramentas DevOps para um pipeline de CI / CD completo.



Não se esqueça de escolher ferramentas de todas as cinco categorias:



  • ferramentas de desenvolvimento e construção
  • ferramentas de automação de teste
  • ferramentas de implantação
  • Ferramentas de tempo de execução
  • ferramentas de colaboração.


Recomendação principal: automatize tudo!



Graças a Zach Shapiro!



All Articles