3 컨테이너에서 업그레이드
원본 보기3 컨테이너에서 업그레이드
개요
이 섹션에서는 Zabbix 7.0.x 컨테이너로 성공적인 업그레이드를 위해 필요한 단계들을 설명합니다.
개별 Zabbix 컴포넌트 이미지 업그레이드와 Docker compose 파일 업그레이드를 위한 별도의 지침이 제공됩니다.
업그레이드하기 전에 반드시 관련 업그레이드 참고사항을 읽어보세요!
업그레이드를 시작하기 전에 사용자가 업그레이드 목적으로 데이터베이스에 대한 필요한 권한을 가지고 있는지 확인하세요.
Zabbix 6.0 이전 버전에서 업그레이드하는 경우, 업그레이드 중에 결정론적 트리거를 생성해야 합니다.
MySQL/MariaDB에서 바이너리 로깅이 활성화되어 있다면, 이는 슈퍼유저 권한이 필요하거나 변수/구성 매개변수 log_bin_trust_function_creators = 1을 설정해야 합니다.
변수 설정 방법은 데이터베이스 생성 스크립트를 참조하세요.
콘솔에서 실행하는 경우, 변수는 일시적으로만 설정되며 Docker가 재시작되면 제거됩니다.
이 경우, SQL 서비스는 계속 실행하고, 'docker compose down zabbix-server' 실행 후 'docker compose up -d zabbix-server'를 실행하여 zabbix-server 서비스만 중지하세요.
또는 구성 파일에서 이 변수를 설정할 수도 있습니다.
데이터베이스 크기에 따라 버전 7.0으로의 업그레이드는 상당한 시간이 걸릴 수 있습니다.
Zabbix 이미지 업그레이드
아래 나열된 단계는 모든 Zabbix 컴포넌트를 업그레이드하는 데 사용할 수 있습니다.
zabbix-server-mysql을 필요한 컴포넌트 이미지 이름으로 바꾸세요.
1. 현재 이미지 버전을 확인하세요:
docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql
2. 원하는 이미지 버전을 가져옵니다. 예를 들어:
docker pull zabbix/zabbix-server-mysql:alpine-7.0-latest
zabbix/zabbix-server-mysql:alpine-7.0-latest는 Alpine Linux 기반의 MySQL 지원을 포함한 Zabbix 서버 7.0의 최신 릴리스된 마이너 버전을 가져옵니다.
필요한 Docker 저장소와 태그 조합의 이름으로 바꾸세요.
사용 가능한 옵션 목록은 컨테이너로부터 설치를 참조하세요.
3. 컨테이너를 중지하세요:
docker stop zabbix-server-mysql
4. 컨테이너를 제거하세요:
docker rm zabbix-server-mysql
5. 필요한 환경 변수 및/또는 마운트 포인트를 지정하는 추가 인수와 함께 docker run 명령을 실행하여 업데이트된 컨테이너를 실행하세요.
구성 예제
MySQL과 함께 사용하는 Zabbix 서버:
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-7.0-latest
PostgreSQL과 함께 사용하는 Zabbix 서버:
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-7.0-latest
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.0-oracle \
--character-set-server=utf8mb4--collation-server=utf8mb4_bin \
다른 Zabbix 컴포넌트의 예제를 포함한 더 많은 구성 예제는 컨테이너로부터 설치 페이지에서 확인할 수 있습니다.
6. 업데이트를 확인하세요:
docker logs -f zabbix-server-mysql
Compose 파일
compose 파일을 사용하여 Zabbix를 설치한 경우, 이 섹션의 업그레이드 지침을 따르세요.
1. 현재 이미지 버전을 확인하세요:
docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql
2. GitHub 저장소에서 최신 업데이트를 가져오고 필요한 브랜치로 전환하세요:
git pull
git checkout 7.0
3. 새로운 compose 파일을 사용하여 Zabbix 컴포넌트를 시작하세요:
docker-compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d
4. 업데이트를 확인하세요:
docker logs -f zabbix-server-mysql
지원되는 환경 변수 및 볼륨 마운트 포인트 목록을 포함한 자세한 내용은 컨테이너로부터 설치를 참조하세요.