Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

No dia 4 de setembro, teve início o Slurm DevOps em São Petersburgo.

Em um só lugar e momento, todos os fatores necessários para um intenso aprendizado de três dias se reuniram: a confortável sala de conferências da Selectel, cerca de setenta desenvolvedores curiosos na plateia e 32 participantes online, além dos servidores da Selectel para a prática. E um dinossauro verde, escondido em um canto.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

No primeiro dia do Slurm, três palestrantes se apresentaram aos participantes.

Pavel Selivanov, arquiteto de soluções na Southbridge, trabalha com administração há mais de 10 anos e é Certified Kubernetes Administrator. Palestrante constante do Slurm, já apresentou em conferências como Moscow Kubernetes Meetup e UWDC. Tem ampla experiência na implementação do Kubernetes: 5 projetos — trabalho individual, mais de 20 projetos em equipe.

Artyom Galonsky, CTO da BureauBureau, viajou especialmente de Kaliningrado para o Slurm DevOps. Tem mais de 12 anos de experiência em desenvolvimento comercial. Atuou como líder de equipe no departamento de desenvolvimento desde 2011. Tornou-se diretor técnico em 2016. Acredita que um engenheiro devops é algo parecido com um unicórnio. Não no sentido de que só uma virgem pode capturá-lo, mas no sentido de que ninguém realmente sabe o que é isso.

Aleksei Stepanenko, engenheiro do departamento de plataforma em nuvem da Selectel, lida com tarefas de infraestrutura para manutenção da nuvem OpenStack: monitoramento, CI/CD e gestão de configurações.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde
“... e então eu encontrei um bug desse tamanho.”

Pavel Selivanov foi o primeiro a bombardar os participantes com conhecimento — e de uma maneira inesperada. À primeira vista, o que há de tão especial no Git — parece ser algo simples e comum, verdades de básico. No entanto, poucos sabem como trabalhar corretamente com o Git. Eles percorreram os comandos básicos git init, commit, add, diff, log, status, pull, push. Lembraram do git flow, ramos e tags, e estratégias de merge.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

Depois, Pavel Selivanov dedicou tempo ao trabalho em equipe com o Git. Abrangeram fork, remote e pull request. Em seguida, discutiram conflitos, lançamentos, e retornaram ao Gitflow e outros flows aplicáveis às equipes.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde
“Ah, que administrador!”

Depois do almoço, quando os participantes recuperaram um pouco de energia e se prepararam para continuar, chegou a vez do CI/CD.

Artyom Galonski começou com o tema "CI/CD: introdução à automação". Ele detalhou as ferramentas bash, make, gradle, bem como o uso de git-hooks para automatizar processos. Falou sobre linhas de montagem em fábricas e sua aplicação em TI. Compartilhou um exemplo de construção de um "pipeline" comum. Discutiu o software moderno para CI/CD: Drone CI, BitBucket Pipelines, Travis.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

Perto das seis da tarde, os participantes começaram a se exaurir lentamente. Foram feitas propostas para ter intervalos mais frequentes. No auditório, o calor aumentou visivelmente devido aos córtexs neocorticais em atividade. Surgiu até um pedido angustiado no chat de trabalho: "Colegas, não vamos nos cansar e fazer mais intervalos #support"

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde
"— Mary Ivanovna, posso sair? — Não, fique!"

Artyom Galonski continuou incansavelmente a carregar conhecimento nos participantes. Após o coffee break, ele abriu o próximo tema "CI/CD: Trabalhando com Gitlab".

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde
"Agora, segurem firme os notebooks. E-e-e, vamos lá!"

Falou sobre Gitlab CI, características de configuração, melhores práticas, depois sobre Gitlab Runner, seus tipos e aplicações. Analisou as etapas do Gitlab CI e as variáveis do Gitlab CI. Após o controle e restrições de execução (only, when), falou sobre o trabalho com artefatos. Mostrou modelos dentro do .gitlab-ci.yml, reutilização de ações em diferentes seções do pipeline Include. Concluiu com a gestão centralizada do gitlab-ci.yml: um arquivo e pushes automáticos para os outros repositórios.

Depois de mais biscoitos e café, Alexey Stepanenko apresentou aos participantes o tema "Infrastructure as Code: abordagem à infraestrutura como código". No auditório, o público estava muito interessado no tema do dia seguinte "IaC usando Terraform", exigindo histórias emocionantes.

Nikita Suvorov, [4 set. 2019, 20:27:35]:
@f3exx e vão ter histórias emocionantes sobre terraform ou tudo vai acabar em labs?

Aleksey Stepanenko, [4 set. 2019, 20:28:32]:
Vai ter uma com certeza)

Dmitriy Miroshnichenko, [4 set. 2019, 20:28:38]:
éé, como por exemplo?
Um júnior pegou o estado e destruiu tudo?

No quinto Slërm, experimentamos a abordagem "escada", onde o material é apresentado do simples ao complexo — começando do Git e terminando em SRE. Não deu muito certo: os participantes avançados ficaram entediados com os temas fáceis. Vamos ver como vai ser a parte complicada do intensivo na sexta-feira.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

No chat do Slërm, estão escrevendo:

Nikolai Kononenko, [4 de set. de 2019, 16:17:28]:
Parece que tudo está indo bem, mas o ritmo é tal que você apenas consegue fazer isso sem refletir. É muito parecido com como, ao encontrar uma instrução aleatória em um dos sites, você simplesmente copia passo a passo e cola, só que você não tem a oportunidade de parar, precisa correr de um passo para outro. Ou você já sabe isso e está tudo bem.

Alexander B, [4 de set. de 2019, 16:18:06]:
Sim, você consegue fazer uma coisa - ou ouvir, ou executar.

Fedor, [4 de set. de 2019, 16:18:21]:
+1
Além disso, um dos problemas é que enquanto você se ocupa copiando e colando instruções, perde 80% das falas do Artem.

Kirill, [4 de set. de 2019, 16:19:01]:
É preciso executar dois runners. Um runner ouve e o outro copia e cola.)

Se você desacelerar o ritmo do Slerma, caberá menos informação. É necessário sacrificar algo - nós sacrificamos o ritmo confortável. Especialmente para ajustar tudo e compactar em sua mente, existem registros do intensivo.

Slurm DevOps. Dia um. Git, CI/CD, IaC e o dinossauro verde

Pavel Selivanov perguntou várias vezes ao público se estavam prontos para continuar ou se desejavam adiar algumas subtemas de IaC para o dia seguinte. Por um longo tempo, a amizade e o neutralidade venceram na votação. E apenas às oito e meia da noite venceram aqueles que ainda se lembravam de que à noite, em teoria, era para dormir.

Afirmamos com responsabilidade que, no primeiro dia do Slerma, nenhum dinossauro foi prejudicado pelos engenheiros DevOps. Ainda temos mais dois dias de intensivo pela frente. O mais interessante, desafiador e saboroso: IaC e SRE.

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster