Lançador Produtos Bitnami Documentaçãoimaxe CLI Blog Contacto
Monitorização monitorizaçãozabbixmariadbsnsauto scaling

Zabbix Server

Servidor Zabbix e interface web prontos para produção, com notificações por AWS SNS, suporte de grupos de auto scaling e stacks de CloudFormation que criam os recursos por si.

Última linha
Zabbix 7.0
Linhas LTS
7.0 mantida
Instância recomendada
c5.large
Notificações
AWS SNS
Auto scaling
SQS
Preço
0.008 USD/h · 60 USD/ano
Dashboard do Zabbix na AMI da imaxe.cloud
Nível de detalhe

A Imaxe.cloud não tem qualquer associação ou acordo com a Zabbix LLC. Leia a secção Relação com a Zabbix LLC.

Descrição #

O Zabbix é uma solução empresarial de monitorização distribuída de código aberto, que permite monitorizar todos os parâmetros de uma rede de servidores, máquinas virtuais, aplicações e muito mais.

A nossa AMI de Zabbix oferece a melhor solução click & play para começar a usar o Zabbix na AWS, com opções adicionais que melhoram o produto original, e o melhor suporte.

Os seus servidoresagente zabbix
métricas
Esta AMIzabbix server
alertas
A sua equipasns · email · sms
A ideia numa linha: os agentes enviam métricas, a AMI avalia-as e avisa-o quando algo falha.

Características #

Gerais

As principais características da nossa AMI de Zabbix:

  • Instalada sobre Ubuntu, sempre na última versão estável possível.
  • Última versão estável do servidor Zabbix instalada.
  • Última versão estável da interface web do Zabbix instalada e pré-configurada.
  • Otimizada com as versões mais estáveis de nginx, PHP, MariaDB server e Zabbix.
  • Todos os idiomas da interface web instalados e disponíveis.

Especiais

As nossas AMIs oferecem suporte adicional para tirar partido de toda a potência da nuvem da forma mais rápida e cómoda:

  • Configuração específica para enviar notificações através de AWS SNS.
  • Configuração específica para trabalhar com grupos de auto scaling.
  • Stacks de CloudFormation para criar todos os recursos relacionados (SNS, SQS, IAM, etc.).

Versões disponíveis #

As versões de Zabbix que disponibilizamos, com as suas características principais:

Versões anteriores bloqueadas

As versões anteriores da AMI do Zabbix foram bloqueadas pela Zabbix LLC, que não parece querer qualquer tipo de concorrência. O produto da Imaxe.cloud oferece características únicas que o próprio Zabbix não tem, pelo que entendemos que se trata de um erro e estamos a trabalhar para o resolver.

AMIZabbixSuporte ZabbixSuporte ImaxeSNSAuto scalingUbuntuPHPMariaDBMarketplace
Zabbix 7.0 v1.17.024.048.310.11Ver →
Zabbix 6.4 v2.06.422.048.110.11Indisponível
Zabbix 6.0 v1.16.020.047.410.11Indisponível
Zabbix 4.4 v1.24.418.047.210.5Indisponível
Zabbix 4.2 v8.04.218.047.010.5Indisponível

Ciclo de vida #

O Zabbix tem uma política de atualizações bastante estrita, que faz com que de poucos em poucos meses se deixe de dar suporte à versão estável do momento, sendo necessário atualizar a versão maior (com os problemas que isso pode implicar) para continuar a ter suporte.

Na Imaxe percebemos que, por vezes, é muito difícil manter esse ciclo de vida tão estrito, pelo que desenhámos uma política de ciclo de vida para as nossas AMIs que, mantendo na medida do possível a compatibilidade com o ciclo de vida do Zabbix, ofereça aos nossos utilizadores o melhor suporte existente.

Versões de Zabbix

Atualmente o Zabbix oferece duas versões distintas do seu software:

  • Versão Standard: inclui as últimas alterações e funcionalidades, mas não tem suporte LTS.
  • Versão LTS: inclui as últimas alterações e funcionalidades no momento em que aparece, e dispõe de suporte LTS.

Suporte a versões Standard não LTS

Para que os novos clientes possam avaliar as vantagens que em breve poderão usar nas suas versões LTS, manteremos sempre uma AMI da última versão Standard operacional, e com todas as características adicionais a funcionar.

A versão da AMI irá aumentando à medida que novas versões aparecem, e o número de versão do Zabbix muda quando esta também aumenta.

Suporte a versões LTS

Enquanto for possível manteremos as AMIs geradas de versões LTS, atualizando-as, tanto ao nível do sistema operativo como das características adicionais, a cada 3 meses.

Quando deixar de ser viável, por razões técnicas ou de segurança, manter uma AMI ativa, esta será desativada e todos os utilizadores receberão um aviso da AWS indicando a nova versão mais adequada para eles.

Além disso, oferecemos suporte à migração entre versões sempre que for possível.

Instalação #

A instalação segue o processo normal de criação de uma instância EC2. O tamanho recomendado é c5.large.

O grupo de segurança inclui normalmente as seguintes permissões:

TipoProtocoloIntervalo de portasOrigem
(*) SSHTCP220.0.0.0/0
(*) HTTPHTTP800.0.0.0/0
(*) Regra TCP personalizadaTCP10050–100520.0.0.0/0
HTTPSHTTPS4430.0.0.0/0
Recomendado

Os campos marcados com (*) são essenciais, quer para aceder à interface web quer para as operações normais do servidor. Embora o exemplo use 0.0.0.0/0, recomendamos restringir o acesso apenas às suas redes ou a um servidor bastião.

Assim que a instância estiver a funcionar, podemos aceder com:

  • SSH: com o .pem que selecionámos ao lançar a instância, e o utilizador ubuntu.
  • HTTP: no endereço http://zabbix.instance.ip/, com o utilizador Admin e, como palavra-passe, o ID da instância que acabámos de criar.

Configuração #

Os passos que aqui aparecem foram feitos com o utilizador Admin, por ser o utilizador por omissão.

Na primeira vez que acede ao Zabbix há várias tarefas a fazer para personalizar a sua experiência e começar a receber notificações. Para isso, clique na opção User settings no menu da esquerda e depois em Profile.

Adicionar um meio ao seu utilizador

Antes de receber notificações tem de adicionar um endereço de correio (ou outro método que prefira) ao seu utilizador. Na página de perfil existe um separador Media; nesse separador clique na ligação Add, que abre uma janela de configuração. Depois não se esqueça de clicar em Update para que as alterações fiquem guardadas.

Mudar a palavra-passe do utilizador Admin

Por omissão, a AMI de Zabbix usa o ID da instância como palavra-passe. É uma forma segura de proteger o acesso, mas provavelmente prefere mudá-la para algo mais fácil de recordar ou que cumpra a sua política de segurança.

Na página Profile, no separador User, pode mudar a palavra-passe do utilizador Admin clicando em Change password, escrevendo a nova palavra-passe duas vezes e clicando em Update.

Mudar o seu idioma

Na página de perfil, no separador User, pode selecionar o idioma da interface no seletor Language. As alterações são efetivas assim que escolher um novo idioma, guardar com Update e voltar a iniciar sessão.

Suporte de auto scaling # especialista

Como funciona o auto scaling da AWS com o Zabbix?

Para lidar com o auto scaling a partir do Zabbix há três pontos distintos a considerar:

  1. Adicionar uma nova instância no Zabbix quando aparece. Pode ser feito através do auto-registo de agentes Zabbix ativos (6.4, 6.0, 4.0). Assim, quando uma nova instância aparece, o Zabbix adiciona-a automaticamente como um novo equipamento.
  2. Guardar o ID da instância no inventário do Zabbix. Quando a instância desaparece (scale in) recebemos uma mensagem com o seu ID, por isso precisamos de o ter associado no inventário do host para o procurar e apagar.
  3. Receber as mensagens de escalamento da AWS. Quando a AWS produz um evento de escalamento envia uma mensagem SNS para um tópico definido por si. Ligando esse SNS a uma fila SQS podemos ler as mensagens a partir do Zabbix e eliminar as instâncias que saem dos grupos de escalamento.
Diagrama do auto scaling da AWS com o Zabbix: Auto Scaling, SNS, SQS e o leitor da AMI
Fluxo de eventos de escalamento: Auto Scaling → SNS → SQS → leitor na AMI → API do Zabbix.

Configurar o cliente

São necessários dois passos para preparar os seus clientes para o auto scaling no Zabbix: configurar o agente do Zabbix e adicionar um ficheiro com um parâmetro de utilizador para o item instance_id.

Configuração do agente Zabbix

Além de qualquer outra alteração de que precise, há seis pontos a mudar no ficheiro de configuração local do agente Zabbix, normalmente em /etc/zabbix/zabbix_agentd.conf:

  • Comentar a opção Server.
  • Adicionar ServerActive=YOUR__ZABBIX__IP__ADDRESS para configurar o servidor ativo.
  • Comentar a opção Hostname.
  • Colocar a opção StartAgents a 0.
  • Colocar a opção HostnameItem a system.hostname.
  • Colocar a opção HostMetadataItem a system.uname.

Com esta configuração colocamos o cliente Zabbix em modo ativo (o cliente envia informação ao servidor e não recebe verificações dele). Além disso, definimos que o Zabbix use o nome da máquina como nome de equipamento, evitando ter de o mudar sempre que um novo servidor arranca. Por fim, definimos que o Zabbix envie o valor do comando uname como metadados: como as instâncias na AWS usam um kernel especial, o valor aws aparece aí e podemos usá-lo para registar o servidor.

Parâmetro instance_id

Por omissão, quando um novo servidor de um auto scaling aparece no Zabbix, este é ligado a um template especial chamado AWS EC2 Template, que contém um item chamado instance_id associado ao campo alias do inventário. Para o alimentar, adicione ao cliente Zabbix um parâmetro de utilizador criando o ficheiro:

/etc/zabbix/zabbix_agentd.d/template_aws_ec2.conf
UserParameter=aws.ec2.instance_id,curl -s http://169.254.169.254/latest/meta-data/instance-id

Configurar o servidor

Configurados os clientes, o passo seguinte é configurar o servidor para apagar as instâncias eliminadas. A forma mais rápida e simples tem dois passos: enviar as mensagens de escalamento para uma fila SQS e configurar o servidor para a ler.

Enviar as mensagens de escalamento para uma fila SQS

Queremos que as notificações enviadas pelo serviço de auto scaling fiquem guardadas numa fila SQS, para garantir durabilidade e escala. Como o auto scaling da AWS envia as notificações para um tópico SNS, precisamos de:

  • Criar um tópico SNS.
  • Criar uma fila SQS.
  • Configurar o SNS para enviar as mensagens para o SQS.
  • Criar um utilizador IAM que possa ler as mensagens.

Como esta configuração é complicada, pode usar a nossa stack de CloudFormation para criar todos os elementos na região que quiser. Depois de aplicar a stack, no separador Outputs encontrará quatro valores a anotar:

  • SNSTopicARN: o ARN do tópico SNS criado.
  • SQSQueueURL: o URL da fila SQS.
  • SQSReadIAMUserAccessKey e SQSReadIAMUserSecretKey: o utilizador e a chave do utilizador IAM.

Precisa desses dados para a configuração. Edite o ficheiro /etc/zabbix/zabbix_ami.yml, no bloco semelhante a:

/etc/zabbix/zabbix_ami.yml
sqs:
  delay_seconds: 60
  default_region: us-east-1
  queues:
    - url:
      access_key_id:
      secret_access_key:
      region:

Para cada SQS com notificações de escalamento é preciso adicionar um elemento ao array semelhante ao existente, com os dados indicados pelo CloudFormation. Há mais informação sobre este ficheiro na secção ficheiros importantes.

Notificações SNS #

Esta instalação de Zabbix já está preparada para enviar através de AWS SNS. Esta configuração evita os problemas de enviar correio a partir da AWS e oferece um sistema avançado e seguro de notificações.

Configurar o envio de alertas com SNS

Podem configurar-se até 6 tópicos SNS distintos, para distinguir consoante a importância do envio:

Severidade do ZabbixChave em zabbix_ami.yml
Not classifiednot_classified
Informationinformation
Warningwarning
Averageaverage
Highhigh
Disasterdisaster

Para que o Zabbix envie as notificações temos de criar esses tópicos e um utilizador IAM que possa ligar-se e enviar mensagens.

Criar os tópicos SNS e o utilizador IAM

Este passo é muito mais simples com a nossa stack de CloudFormation para tópicos SNS e utilizador IAM, já preparada para criar tudo. Depois de aplicar a stack, no separador Outputs encontrará os valores a anotar:

  • SNSNotClassified, SNSInformation, SNSWarning, SNSAverage, SNSHigh, SNSDisaster: os tópicos SNS de cada severidade.
  • ZabbixSendingUserAccessKeyId e ZabbixSendingUserSecretAccessKey: utilizador e palavra-passe do utilizador IAM.

Um ou mais destes valores podem não aparecer, consoante a configuração que escolheu ao aplicar a stack.

Configurar /etc/zabbix/zabbix_ami.yml

Dentro do ficheiro /etc/zabbix/zabbix_ami.yml há uma secção específica para as opções de SNS:

/etc/zabbix/zabbix_ami.yml
sns:
  aws:
    access_key_id:
    secret_access_key:
    region:
  topics:
    not_classified: arn:aws:sns:eu-west-1:000000000000:sample-sns
    information:    arn:aws:sns:eu-west-1:000000000000:sample-sns
    warning:        arn:aws:sns:eu-west-1:000000000000:sample-sns
    average:        arn:aws:sns:eu-west-1:000000000000:sample-sns
    high:           arn:aws:sns:eu-west-1:000000000000:sample-sns
    disaster:       arn:aws:sns:eu-west-1:000000000000:sample-sns

Precisa de configurar os tópicos SNS desejados (pode reutilizar o mesmo tópico várias vezes, se preferir) e os valores de utilizador, chave e região. É tudo!

Configurar o utilizador do Zabbix

O último passo é configurar o Zabbix para enviar notificações a partir do SNS:

  1. Entrar na interface do Zabbix com os seus dados de utilizador.
  2. Ir a User settings → Profile.
  3. Abrir o separador Media.
  4. Adicionar um novo meio do tipo AWS SNS, marcá-lo como Enabled e preencher os restantes campos como preferir (o campo Send to não é usado atualmente, pode escrever o que quiser).
  5. Clicar em Add para adicionar o novo meio e depois em Update para guardar as alterações.

CloudFormation #

Como é complicado criar todos os recursos AWS necessários, aqui pode descarregar diferentes stacks de AWS CloudFormation para simplificar o seu trabalho.

auto scaling

SNS Topic + SQS Queue + IAM User

Cria um tópico SNS para associar aos grupos de escalamento, uma fila SQS que recebe as suas notificações e um utilizador IAM que pode ler e apagar mensagens da fila.

notificações

SNS Topics + IAM User

Cria até 5 tópicos SNS para o Zabbix enviar notificações e um utilizador IAM que as possa publicar.

Ficheiros importantes # especialista

A AMI de Zabbix contém um conjunto de ficheiros especiais que deve conhecer.

/etc/zabbix/zabbix_ami.yml

É o ficheiro mais importante, porque controla a configuração dos aspetos especiais, como as verificações de escalamento ou as notificações SNS. Um exemplo (com dados falsos):

/etc/zabbix/zabbix_ami.yml
zabbix:
  api:
    user: autoscaler_api_user
    password: i-073672daf01037aea94
sns:
  aws:
    access_key_id: AKK4L6A3OXZZ5HE2POQRU7V
    secret_access_key: cICycAg26hSDpsJwbhZjbaaYlt4Tz3n1xqE7Oxp6X2Hf
    region: us-east-1
  topics:
    not_classified: arn:aws:sns:us-east-1:000000000:Zabbix-General-SNS
    information:    arn:aws:sns:us-east-1:000000000:Zabbix-General-SNS
    warning:        arn:aws:sns:us-east-1:000000000:Zabbix-General-SNS
    average:        arn:aws:sns:us-east-1:000000000:Zabbix-General-SNS
    high:           arn:aws:sns:us-east-1:000000000:Zabbix-General-SNS
    disaster:       arn:aws:sns:us-east-1:000000000:Zabbix-General-SNS
sqs:
  delay_seconds: 60
  default_region: us-east-1
  queues:
    - url: https://sqs.us-east-1.amazonaws.com/000000000/zabbix-pro-sqs-queue
      access_key_id: AKIA3OXZZ5HEWUR5A16CNWH
      secret_access_key: 8ttYO3Ba9K6p0C+aj3fH5cDt2eRLHmlkHbMtlrpv18S7KRbC
      region: us-east-1

Atualmente este ficheiro contém três secções distintas:

  • zabbix: como precisamos de ligar ao servidor Zabbix para apagar os equipamentos antigos, precisamos de acesso à API. Para isso criamos um utilizador específico, cujos dados de ligação constam aqui.
  • sns: a configuração necessária para enviar alarmes através de SNS. Aqui configuramos os dados do utilizador IAM e os tópicos SNS que vamos usar.
  • sqs: a configuração para controlar as mensagens de escalamento na AWS. Aqui definimos de quanto em quanto tempo verificar a fila (delay_seconds) e as diferentes filas a consultar.
Nunca envie este ficheiro para um repositório

Contém credenciais IAM em claro. Restrinja as suas permissões e rode as chaves periodicamente.

/var/log/zabbix-sqs-reader/zabbix-sqs-reader.log

Este ficheiro regista os vários eventos de auto scaling lidos a partir do SQS.

Antes de fazer a configuração verá a mensagem Ops! It looks like the file /etc/zabbix/zabbix_ami.yml hasn't been configured yet. We better sleep for 5 minutes. — é normal, e desaparece quando configurar o ficheiro zabbix_ami.yml.

Atualizações da AMI # especialista

Antes de começar

Leia toda a secção antes de fazer seja o que for, e prepare uma cópia de segurança de todos os seus dados.

Como o Zabbix lança novas versões com novas funcionalidades e melhorias, a melhor opção é ir atualizando a nossa AMI de tempos a tempos. Infelizmente, essas mesmas funcionalidades incluem alterações na base de dados e internas que podem ser problemáticas ao atualizar a sua instalação.

A nossa AMI de Zabbix é a melhor forma de evitar estes problemas, já que oferecemos uma maneira de atualizar entre versões maiores mais rápida, simples e segura do que a habitual.

Resumo da atualização

O processo de atualização da nossa AMI é bastante simples e resume-se aos seguintes passos:

  • Fazer um dump da nossa base de dados atual.
  • Lançar uma nova AMI com a última versão estável.
  • Carregar o dump da base de dados na nova instância.
  • Executar o nosso script de migração.

Assim mantemos ao mesmo tempo a versão atual e a nova, e podemos fazer os testes necessários para garantir que tudo funciona corretamente, para depois mudar os EIP associados a essa instância, ou migrar os clientes aos poucos.

Neste tutorial usamos o termo origem para o seu servidor Zabbix atual e destino para o novo servidor.

Processo de atualização

Passo 1: cópia de segurança do servidor de origem

O primeiro passo é criar uma imagem do servidor de origem, para evitar qualquer perda acidental de dados. Pode seguir o manual da AWS para criar uma AMI.

Passo 2: dump da base de dados e versão do Zabbix

Entramos por SSH na instância e passamos a root:

bash
sudo /bin/su -

Depois fazemos o dump da base de dados para um ficheiro:

bash
mysqldump zabbix > zabbix_origin_database.sql

Por fim descarregamos o ficheiro criado para a nossa máquina, para depois o enviar para o novo servidor. Também devemos anotar a versão atual do Zabbix: pode vê-la na interface web, e deve ser um número semelhante a 4.0, 4.2, 4.4 ou 5.4.

Passo 3: lançar uma nova instância Zabbix

O passo seguinte é criar uma nova instância de Zabbix, usando a última versão estável da AMI que pode encontrar no nosso perfil do AWS Marketplace. No mínimo, deve usar a versão 6.0 da nossa AMI de Zabbix.

Esta nova instância será o servidor de destino para onde moveremos os dados, e já vem com a última versão instalada e atualizada. Assim que arrancar, copiamos para ela o dump da base de dados do servidor de origem.

Passo 4: atualizar a base de dados

Para inserir a nossa base de dados atual, atualizá-la para a nova versão e adicionar as configurações necessárias, usamos o script /opt/tools/bin/zabbix-ami-upgrade.sh, que deve ser executado como utilizador ubuntu, indicando-lhe a versão original do Zabbix e o ficheiro com o dump. Por exemplo, migrando a partir de Zabbix 4.0:

bash
/opt/tools/bin/zabbix-ami-upgrade.sh 4.0 zabbix_origin_database.sql

O processo vai informando dos passos que executa e, uma vez terminado, podemos continuar a trabalhar com o novo servidor Zabbix.

Passo 5: aceder à interface web

Quando a migração terminar já poderemos aceder à interface web e ver a situação geral do servidor. É importante ter em conta que devemos usar os mesmos utilizadores e palavras-passe que tínhamos no servidor anterior.

Passo 6: migrar configurações especiais e configurar clientes

Uma vez a base de dados operacional, devemos ter em conta outro tipo de configurações que possamos ter instalado no servidor, como por exemplo:

  • Scripts de monitorização.
  • Pacotes de sistema adicionais.
  • Certificados SSL que tenhamos instalado.

Também teremos de mover o EIP que tenhamos configurado para essa instância, de forma que os clientes não precisem de alterações.

Se não estivermos a usar EIP, é um bom momento para começar, já que de outro modo teremos de mudar o IP do novo servidor em todos os clientes.

Suporte #

A utilização desta AMI de Zabbix inclui suporte para:

  • A instalação da AMI.
  • Configuração inicial.
  • Configurações adicionais relacionadas com a AMI (por exemplo, usar Let’s Encrypt).
  • Configuração do Zabbix relacionada com a AMI.
  • Envio de notificações do Zabbix com SNS.
  • Suporte de auto scaling no Zabbix.
  • As nossas stacks de CloudFormation.
  • Suporte geral do Zabbix.
  • Atualizações, melhorias e migrações da AMI.

Registo de alterações #

Histórico da AMI. As datas correspondem à publicação de cada versão no AWS Marketplace.

v7.0 2025-09-09Última linha

Zabbix 7.0 · versão 1.1

Publicada a versão 1.1 da nossa AMI de Zabbix 7.0, com Zabbix instalado e configurado, suporte de auto scaling e notificações SNS.

Novo Zabbix 7.0 instalado e configurado sobre Ubuntu 24.04 com PHP 8.3 e MariaDB 10.11.
Novo Suporte de auto scaling por SQS e notificações SNS.
v6.4 2024-01-27

Zabbix 6.4 · versão 1.0

Publicada a versão 1.0 da nossa AMI de Zabbix 6.4, com Zabbix instalado e configurado, suporte de auto scaling e notificações SNS.

Novo Zabbix 6.4 instalado e configurado sobre Ubuntu 22.04 com PHP 8.1 e MariaDB 10.11.
Novo Suporte de auto scaling por SQS e notificações SNS.
v6.0 2022-09-27LTS

Zabbix 6.0 · versão 1.0

Publicada a versão 1.0 da nossa AMI de Zabbix 6.0 LTS, com Zabbix instalado e configurado, suporte de auto scaling e notificações SNS.

Novo Zabbix 6.0 LTS instalado e configurado sobre Ubuntu 20.04 com PHP 7.4 e MariaDB 10.11.
Novo Suporte de auto scaling por SQS e notificações SNS.
v5.4 2022-03-04

Zabbix 5.4 · versão 1.0

Publicada a versão 1.0 da nossa AMI de Zabbix 5.4, com Zabbix instalado e configurado, suporte de auto scaling e notificações SNS.

Novo Zabbix 5.4 instalado e configurado, com auto scaling e notificações SNS.

Relação com a Zabbix LLC #

A Imaxe.cloud não tem nem nunca teve qualquer tipo de acordo com a empresa que mantém o Zabbix, a Zabbix LLC.

A informação e o suporte aqui oferecidos são prestados de forma não oficial, sobre o produto de software livre Zabbix e as opções adicionais que construímos à sua volta.

Suporte ativo · seg–sex 9:00–18:00 CET

Precisa de ajuda com esta AMI?

Responde-lhe a mesma equipa que constrói a imagem — engenheiros a sério, sem bots nem primeiro nível.

< 4 hprimeira resposta em dia útil
ES / ENidiomas de suporte
Incluídono preço da AMI