Esta seção descreve as etapas necessárias para uma atualização bem-sucedida para os containers do Zabbix 8.0.x.
Conjuntos separados de instruções estão disponíveis para atualizar imagens de componentes individuais do Zabbix e arquivos Docker compose.
Antes da atualização, certifique-se de ler as notas de atualização relevantes!
Antes de iniciar a atualização, verifique se os usuários possuem as permissões necessárias no banco de dados para fins de atualização.
Para atualizações a partir do Zabbix 6.0 ou anterior, triggers determinísticas precisarão ser criadas durante a atualização. Se o log binário estiver ativado para MySQL/MariaDB, isso requer privilégios de superusuário ou a configuração da variável/parâmetro de configuração log_bin_trust_function_creators = 1. Veja Scripts de criação de banco de dados para instruções de como definir a variável.
Observe que, se executar a partir de um console, a variável será definida apenas temporariamente e será descartada quando o Docker for reiniciado. Nesse caso, mantenha seu serviço SQL em execução, pare apenas o serviço zabbix-server executando 'docker compose down zabbix-server' e depois 'docker compose up -d zabbix-server'.
Como alternativa, você pode definir essa variável no arquivo de configuração.
Dependendo do tamanho do banco de dados, a atualização para a versão 8.0 pode levar bastante tempo.
As etapas listadas abaixo podem ser usadas para atualizar qualquer componente do Zabbix. Substitua zabbix-server-mysql pelo nome da imagem do componente desejado.
1. Verifique a versão atual da imagem:
2. Baixe a versão desejada da imagem, por exemplo:
zabbix/zabbix-server-mysql:alpine-8.0-latest irá baixar a última versão menor lançada do Zabbix server 8.0 com suporte ao MySQL baseada no Alpine Linux. Substitua pelo nome do repositório Docker e combinação de tags que você precisa. Veja Instalação a partir de containers para uma lista de opções disponíveis.
3. Pare o container:
4. Remova o container:
5. Inicie o container atualizado executando o comando docker run seguido de argumentos adicionais para especificar as variáveis de ambiente e/ou pontos de montagem necessários.
Exemplos de configuração
Zabbix server com MySQL:
docker run --name zabbix-server-mysql -t \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
--network=zabbix-net \
-p 10051:10051 \
--restart unless-stopped \
-d zabbix/zabbix-server-mysql:alpine-8.0-latestZabbix server com PostgreSQL:
docker run --name zabbix-server-pgsql -t \
-e DB_SERVER_HOST="postgres-server" \
-e POSTGRES_USER="zabbix" \
-e POSTGRES_PASSWORD="zabbix_pwd" \
-e POSTGRES_DB="zabbix" \
-e ZBX_ENABLE_SNMP_TRAPS="true" \
--network=zabbix-net \
-p 10051:10051 \
--volumes-from zabbix-snmptraps \
--restart unless-stopped \
-d zabbix/zabbix-server-pgsql:alpine-8.0-latestMais exemplos de configuração, incluindo exemplos para outros componentes do Zabbix, estão disponíveis na página Instalação a partir de containers.
6. Verifique a atualização:
Siga as instruções de atualização nesta seção, se você instalou o Zabbix usando arquivo compose.
1. Verifique a versão atual da imagem:
2. Baixe as atualizações mais recentes do repositório do GitHub e altere para o branch necessário:
3. Inicie os componentes do Zabbix usando o novo arquivo compose:
4. Verifique a atualização:
Veja Instalação a partir de containers para mais detalhes, incluindo listas de variáveis de ambiente suportadas e pontos de montagem de volumes.