Aggiornamento dai container
Panoramica
Questa sezione descrive i passaggi necessari per un upgrade riuscito ai container di Zabbix 8.0.x.
Sono disponibili insiemi separati di istruzioni per l'upgrade delle singole images dei componenti Zabbix e dei file Docker compose.
Prima dell'upgrade, assicurarsi di leggere le note di upgrade pertinenti!
Prima di avviare l'upgrade, verificare che gli utenti dispongano delle autorizzazioni necessarie sul database ai fini dell'upgrade.\
Per gli upgrade da Zabbix 6.0 o versioni precedenti, durante l'upgrade dovranno essere creati trigger deterministici.
Se il binary logging è abilitato per MySQL/MariaDB, ciò richiede privilegi di superuser oppure l'impostazione della variabile/del parametro di configurazione log_bin_trust_function_creators = 1.
Per istruzioni su come impostare la variabile, vedere Script di creazione del database.
Si noti che, se eseguita da console, la variabile verrà impostata solo temporaneamente e verrà rimossa al riavvio di un Docker.
In questo caso, mantenere in esecuzione il servizio SQL e arrestare solo il servizio zabbix-server eseguendo 'docker compose down zabbix-server' e quindi 'docker compose up -d zabbix-server'.
In alternativa, è possibile impostare questa variabile nel file di configurazione.
A seconda delle dimensioni del database, l'upgrade alla versione 8.0 potrebbe richiedere molto tempo.
Aggiornamento dell'immagine Zabbix
I passaggi elencati di seguito possono essere utilizzati per aggiornare qualsiasi componente Zabbix.
Sostituire zabbix-server-mysql con il nome dell'immagine del componente richiesto.
1. Verificare la versione corrente dell'immagine:
docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql
2. Scaricare la versione desiderata dell'immagine, ad esempio:
docker pull zabbix/zabbix-server-mysql:alpine-8.0-latest
zabbix/zabbix-server-mysql:alpine-8.0-latest scaricherà l'ultima minor release pubblicata di Zabbix server 8.0 con supporto MySQL basata su Alpine Linux.
Sostituirla con il nome del repository Docker e la combinazione di tag necessari.
Consultare Installation from containers per un elenco delle opzioni disponibili.
3. Arrestare il container:
docker stop zabbix-server-mysql
4. Rimuovere il container:
docker rm zabbix-server-mysql
5. Avviare il container aggiornato eseguendo il comando docker run seguito da argomenti aggiuntivi per specificare le environment variables e/o i mount points richiesti.
Esempi di configurazione
Zabbix server con 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-latest
Zabbix server con 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-latest
Server MySQL:
docker run --name mysql-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
--network=zabbix-net \
--restart unless-stopped \
-d mysql:8.4-oracle \
--character-set-server=utf8mb4--collation-server=utf8mb4_bin \
Ulteriori esempi di configurazione, inclusi esempi per altri componenti Zabbix, sono disponibili nella pagina Installation from containers.
6. Verificare l'aggiornamento:
docker logs -f zabbix-server-mysql
File Compose
Seguire le istruzioni di aggiornamento in questa sezione, se è stato installato Zabbix utilizzando il file compose.
1. Verificare la versione corrente dell'immagine:
docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql
2. Scaricare gli ultimi aggiornamenti dal repository GitHub e passare al branch richiesto:
git pull
git checkout 8.0
3. Avviare i componenti Zabbix utilizzando il nuovo file compose:
docker-compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d
4. Verificare l'aggiornamento:
docker logs -f zabbix-server-mysql
Per maggiori dettagli, inclusi gli elenchi delle variabili d'ambiente supportate e dei punti di mount dei volumi, vedere Installazione da container.