Como subir o Grafana e o Prometheus no Azure Container Instance?
Monitorar é a chave para garantir a disponibilidade, desempenho, segurança da sua aplicação e garantir que o orçamento de erro esteja dentro do planejado, além disso contribui para decisões estratégicas de melhoria contínua sejam tomadas eficientemente. Dessa forma, subir o Grafana e o Prometheus no Azure Container Instance pode ser uma alternativa rápida para iniciar o monitoramento de suas aplicações.
O que é o Grafana?
Grafana é uma ferramenta de visualização de dados e monitoramento de aplicações. Ele permite que você conecte várias fontes de dados, incluindo bancos de dados, sistemas de gerenciamento de logs e ferramentas de monitoramento, e apresente as métricas em painéis interativos e fáceis de usar. Com ele, você pode criar painéis personalizados para visualizar e analisar seus dados, identificar tendências e padrões, e receber alertas quando as métricas estiverem fora dos limites definidos por você.

O que é o Prometheus?
Prometheus é uma ferramenta open source de monitoramento de código que revolucionou a forma como as equipes gerenciam seus sistemas e aplicações. Ele permite coletar e armazenar métricas em tempo real, ajudando as equipes a identificar problemas rapidamente e tomar decisões informadas sobre suas infraestruturas.
Além disso, sua ampla gama de integrações e alertas flexíveis tornam o Prometheus uma escolha popular para organizações de todos os tamanhos.

O que é o Azure Container Instance?
Transforme suas aplicações com rapidez e eficiência para o mundo de nuvem com o Azure Container Instance. O Azure Container Instance permite a implantação e execução de contêineres sem a necessidade de gerenciar infraestruturas, o que significa uma implantação mais rápida e fácil. Ele oferece escalabilidade e recursos de alta disponibilidade para aplicativos de missão crítica.
Como subir o Grafana e o Prometheus no Azure Container Instance?
São diversas formas para subir o Grafana e o Prometheus no Azure Container Instance, uma delas, é a utilização do YAML que é uma maneira fácil e de simples entendimento.
- Crie uma assinatura do Azure: acesse o portal do Azure e crie uma nova conta ou assine uma já existente.
- Azure CLI instalado: você precisará utilizar o Azure CLI para subir o ambiente, portanto, você precisa conhecê-lo.
- Crie um grupo de recursos: acesse o portal do Azure e crie um novo grupo de recursos para armazenar seus recursos, incluindo o container instance.
- Implante o container instance: use o Azure CLI ou o portal do Azure para criar um novo container instance, fornecendo informações como a imagem de contêiner, a configuração de rede e as configurações de recursos.
Lembrando que, o Azure Container Instance foi projetado para não guardar estado das aplicações, portanto, você deverá criar um Azure Storage Account para armazenar as principais pastas do Grafana e Prometheus afim de não perderem as configurações.
name: ci-monitor
apiVersion: 2021-10-01
location: eastus
properties:
containers:
- name: prometheus
properties:
image: prom/prometheus:latest
command:
- '/bin/prometheus'
- '--config.file=/etc/prometheus/prometheus.yml'
environmentVariables:
- name: TZ
value: America/Sao_Paulo
ports:
- port: 9090
resources:
requests:
cpu: 1.0
memoryInGB: 1.5
volumeMounts:
- name: prometheus
mountPath: '/etc/prometheus/'
readOnly: false
- name: grafana
properties:
image: grafana/grafana:latest
environmentVariables:
- name: TZ
value: America/Sao_Paulo
ports:
- port: 3000
resources:
requests:
cpu: 1.0
memoryInGB: 1.5
volumeMounts:
- name: grafana
mountPath: '/var/lib/grafana'
readOnly: false
osType: Linux
ipAddress:
type: Public
ports:
- protocol: tcp
port: 9090
- protocol: tcp
port: 3000
dnsNameLabel: ci-monitor
volumes:
- name: prometheus
azureFile:
sharename: prometheus
storageAccountName: <<storage account name>>
storageAccountKey: <<storage account key>>
- name: grafana
azureFile:
sharename: grafana
storageAccountName: <<storage account name>>
storageAccountKey: <<storage account key>>
tags: {}
type: Microsoft.ContainerInstance/containerGroups
Em seguida, utilizando o Azure CLI, execute a instrução abaixo para criar o container com o Grafana e o Prometheus.
az container create --resource-group rgMonitor --file monitor.yaml
Conclusão
Subir o Grafana e o Prometheus no Azure Container Instance é uma maneira eficiente e fácil de monitorar o desempenho e a saúde de seus aplicativos em nuvem. Além disso, o monitoramento fornece insights valiosos para times de negócios e tecnologia, permitindo uma tomada de decisão mais informada e uma melhor gestão de recursos.