Skip to main content

3 posts tagged with "devops"

View All Tags

· 2 min read

10/09/2022 - Aula 3 de DevOps (Presencial)

A aula começou 10minutos atrasada pois a sala estava trancada, mas logo alguém a briu e a aula começou. O professor Jemerson pediu para atualizarmos o projeto unipar-devops pois ele enviou la o Máterial em PDF para a aula de hoje.

O objetivo da aula de hoje é ver sobre monitoramento de aplicações, e para isso vamos usar o Prometheus e Grafana.

Monitoramento

Busca supervisionar todo o processo de desenvolvimento de software, desde o planejamento até a implantação e operação. Isso permite responder a qualquer degradação na experiência do cliente, detectando e respondendo a qualquer incidente (bugs, comportamentos inadequados, falhas de recursos físicos, integração com terceiros, entre outros).

Metas do monitoramento

Um dos principais objetivos do monitoramento é alcançar a alta disponibilidade minimizando as principais métricas medidas em termos de tempo:

  • TTD (Time to Detect): Tempo para detectar problemas diversos;
  • TTM (Time to mitigate): Tempo para atenuar os problemas o mais rápido possível para que os usuários não sejam afetados;
  • TTR (Time to remediate): Tempo para correção são medidos e as equipes trabalham para melhorar ao longo do tempo

Conceitos

  • Telemetria
    • Mecanismo de coletar dados do monitoramento.
  • Monitoramento sintético
    • Avalia o desempenho e a disponibilidade
  • Monitoramento real do usuário
    • Medem a experiência do navegador ou dispositivo móvel

Ferramentas

Uma lista de ferramentas de monitoramento pode ser encontrada em Cloud Native Computing Foundation

Ferramentas de monitoramento

Depois de passar esses conteúdos, o professor Jemerson pediu para fazermos o trabalho do curso, que é criar um ambiente de monitoramento para o projeto das atividades anteriores.

Depois de fazermos o trabalho, teve uma competição sobre perguntas de DevOps, o ganhador levava um livro sobre DevOps.

Trabalho

As informações do trabalho estão na pagina da disciplina. Link

· 2 min read

27/08/2022 - Aula 2 de DevOps (Presencial)

O professor Jemerson pediu para atualizarmos o projeto unipar-devops pois ele enviou la o Máterial em PDF para a aula de hoje.

Infraestrutura como código (IaC)

IaC é uma prática DevOps que busca automatizar o provisionamento da infraestrutura de TI. Consiste na utilização de uma linguagem de codificação descritiva de alto nível que tem como objetivo automatizar o provisionamento da infraestrutura seja on premise ou cloud

Exemplos de ferramentas:

Terraform

De acordo com o site oficial, o Terraform é uma ferramenta de infraestrutura como código (IaC) que permite a criação, alteração e versão de infraestrutura de TI de forma segura e eficiente.

Ele pode ser utilizado para gerenciar as principais nuvens públicas e privadas de TI, como AWS, Azure, Google Cloud, etc.

Após criamos uma maquina com o Terraform na AWS, vamos utilizar o Ansible.

Exemplo de comandos:

Ansible

O Ansible é um mecanismo de automação de TI open source para automação de processos como provisionamento, gerenciamento de configurações, implantação de aplicações, orquestração e muitos outros

  • Inventory
    • Os inventários organizam os nós gerenciados em arquivos centralizados que fornecem ao Ansible informações do sistema e locais de rede.
  • Playbook
    • Os playbooks são blueprints de automação, em formato YAML, que o Ansible usa para implantar e configurar nós gerenciados.

Depois de passar esses conteúdos, o professor Jemerson pediu para fazermos uma atividade 2.

· 3 min read

13/08/2022 - Aula 1 de DevOps (Presencial)

A aula começou as 08h, com o professor Jemerson, com o professor passando o que vai ser visto durante a pós. Pediu para baixar o projeto no github, pois vai ser utilizado ele como base, além disso, utilizamos o máterial em PDF.

O que é

DevOps (Development + Operations) é um processo de desenvolvimento e entrega de software que enfatiza a comunicação entre os profissionais de desenvolvimento e operações.

É um conjunto de práticas que automatizam os processos entre equipes de desenvolvimento de software e de TI para que possam criar, testar e liberar softwares de maneira mais rápida e confiável.

A combinação de filosofias culturais, práticas e ferramentas que aumentam a capacidade de uma empresa de distribuir aplicativos e serviços em alta velocidade

Como começou - Manifesto Ágil

  • Indivíduos e interações, mais que processos e ferramentas.
  • Software em funcionamento, mais que documentação abrangente
  • Responder a mudanças, mais que seguir um plano

C.A.M.S. ( Culture, Automation, Measure, Sharing)

  • Culture (Cultura)
    • É preciso colaborar, compartilhar e entender a importância de manter uma relação saudável entre todas as áreas.
  • Automation (Automação)
    • Identificar os processos que sejam repetitivos ou que levam bastante tempo e buscar resolver o quanto antes.
  • Measure (Medir)
    • Deve-se medir tudo que é possível: performance, processos, interações e até mesmo pessoas. O processo de melhoria contínua é o coração do DevOps!
  • Sharing (Compartilhamento)
    • Ter uma boa comunicação entre as equipes, incentivar as pessoas a se comunicarem e compartilharem ideias e problemas (Blameless).

O que precisamos para começar

  • Cultura;
  • Programação;
  • Gerenciar Servidores, Virtualização, Redes e Segurança;
  • Criação de Scripts;
  • Instalar e configurar middlewares (apache, nginx, haproxy);
  • Instalar softwares;
  • Versionar arquivos com GIT;
  • Automatizar tarefas e gerenciar configurações;
  • Infraestrutura como Código;
  • Observabilidade;
  • Orquestração de Containers;
  • Compartilhar;

Docker

É uma tecnologia de conteinerização que permite a criação e o uso de containers Linux.

Containers são como se fossem máquinas virtuais modulares e extremamente leves.

O Docker possibilita o empacotamento de uma aplicação ou ambiente inteiro dentro de um container, e a partir desse momento o ambiente inteiro torna-se portável para qualquer outro Host que contenha o Docker instalado.

Para ajudar no uso do Docker, temos o DockerFile, que é um arquivo de configuração que permite a criação de containers, e o Docker Compose, que é um arquivo de configuração que permite a criação de múltiplos containers.

Exemplo dos comandos:

Com isso, finalizamos a aula 1 de DevOps.