Installer Zabbix 5.0 avec Docker → Configurer la notification Slack en cas d'échec

Ubuntu-20.04.01Zabbix-5.0.3Git-2.28.0Docker-19.03.13CPython-3.7.7OpenSSL-1.1.0

Je veux surveiller le serveur et le domaine. Comme je n'avais aucune expérience de l'utilisation de Zabbix, je vais également l'implémenter pour l'apprentissage. L'objectif est d'être notifié au canal désigné de Slack en cas de panne.

Préparation de l'environnement

Nom version
Ubuntu 20.04.01
Zabbix 5.0.3
Git 2.28.0
Docker 19.03.13
docker-compose 1.27.3, build 4092ae5d
docker-py 4.3.1
CPython 3.7.7
OpenSSL 1.1.0l 10 Sep 2019

procédure

C'est la procédure d'installation.

Cloner Zabbix

git clone https://github.com/zabbix/zabbix-docker.git
cd zabbix-docker

Cette fois, nous allons configurer Alpine + PostgreSQL. Alpine est suffisant lors de l'utilisation de Docker, donc je ne pense pas qu'il soit nécessaire d'avoir une image trop grande. La raison du choix de PostgreSQL sur MySQL est qu'à l'avenir, lorsque les paramètres sont devenus gonflés, il a été décidé que le réglage seul ne serait pas adapté pour gérer un grand nombre de requêtes. Je pense que ce serait bien de passer de MySQL à PostgreSQL plus tard, mais vu le coût, j'ai décidé d'utiliser PostgreSQL dès le début.

Pour la sélection

Je l'ai mentionné.

Copier YAML

$ cp docker-compose_v3_alpine_pgsql_latest.yaml docker-compose.yml

Modifier l'utilisateur et le mot de passe de la base de données

#Modifiez les fichiers suivants selon vos besoins
.POSTGRES_USER
.POSTGRES_PASSWORD

Commencez

$ sudo docker-compose up -d

$ sudo docker-compose ps
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
WARNING: The following deploy sub-keys are not supported and have been ignored: resources.reservations.cpus
                 Name                                Command                  State                           Ports                     
----------------------------------------------------------------------------------------------------------------------------------------
zabbix-docker_db_data_mysql_1             sh                               Exit 0                                                       
zabbix-docker_db_data_pgsql_1             sh                               Exit 0                                                       
zabbix-docker_mysql-server_1              docker-entrypoint.sh mysql ...   Up                                                           
zabbix-docker_postgres-server_1           docker-entrypoint.sh postgres    Up                                                           
zabbix-docker_zabbix-agent_1              /sbin/tini -- /usr/bin/doc ...   Up                                                           
zabbix-docker_zabbix-java-gateway_1       docker-entrypoint.sh /usr/ ...   Up                                                           
zabbix-docker_zabbix-proxy-mysql_1        /sbin/tini -- /usr/bin/doc ...   Up             0.0.0.0:10071->10051/tcp                      
zabbix-docker_zabbix-proxy-sqlite3_1      /sbin/tini -- /usr/bin/doc ...   Up             0.0.0.0:10061->10051/tcp                      
zabbix-docker_zabbix-server_1             /sbin/tini -- /usr/bin/doc ...   Up             0.0.0.0:10051->10051/tcp                      
zabbix-docker_zabbix-snmptraps_1          /usr/bin/supervisord -c /e ...   Up             0.0.0.0:162->1162/udp                         
zabbix-docker_zabbix-web-apache-pgsql_1   docker-entrypoint.sh /usr/ ...   Up (healthy)   0.0.0.0:80->8080/tcp, 0.0.0.0:443->8443/tcp   
zabbix-docker_zabbix-web-nginx-pgsql_1    docker-entrypoint.sh             Up (healthy)   0.0.0.0:8081->8080/tcp, 0.0.0.0:8443->8443/tcp

J'ai reçu un avertissement, donc je vais le vérifier au cas où. AVERTISSEMENT: les sous-clés de déploiement suivantes ne sont pas prises en charge et ont été ignorées: resources.reservations.cpus (les sous-clés de déploiement suivantes ont été ignorées car elles ne sont pas prises en charge)

 deploy:
   resources:
    reservations:
      cpus: '0.5'

Ces options sont des options planifiées pour les services en mode essaim (Autrement dit, ne réservez pas réellement de ressources, laissez simplement swarm les prendre en compte lors de la planification des conteneurs sur le nœud).

Docker Compose ne fonctionne pas en mode essaim (déploiement d'un conteneur local) Aucun orchestrateur ne prend en compte ces restrictions.

Référence: mode de compatibilité # 5684

Si vous n'utilisez pas de réservation, l'avertissement disparaîtra. Puisqu'il est ignoré, il semble qu'il n'y ait aucun problème à ignorer cette erreur. Puisqu'il n'est pas psychologiquement bon d'obtenir un avertissement à chaque fois que je le vérifie, j'ai commenté la ligne correspondante.

      #reservations:
      #cpus: '0.5'
      #memory: 512M

Lançons-le à nouveau.

$ sudo docker-compose up -d --build

$ sudo docker-compose ps
                 Name                                Command                       State                               Ports                     
-------------------------------------------------------------------------------------------------------------------------------------------------
zabbix-docker_db_data_mysql_1             sh                               Exit 0                                                                
zabbix-docker_db_data_pgsql_1             sh                               Exit 0                                                                
zabbix-docker_mysql-server_1              docker-entrypoint.sh mysql ...   Up                                                                    
zabbix-docker_postgres-server_1           docker-entrypoint.sh postgres    Up                                                                    
zabbix-docker_zabbix-agent_1              /sbin/tini -- /usr/bin/doc ...   Up                                                                    
zabbix-docker_zabbix-java-gateway_1       docker-entrypoint.sh /usr/ ...   Up                                                                    
zabbix-docker_zabbix-proxy-mysql_1        /sbin/tini -- /usr/bin/doc ...   Up                      0.0.0.0:10071->10051/tcp                      
zabbix-docker_zabbix-proxy-sqlite3_1      /sbin/tini -- /usr/bin/doc ...   Up                      0.0.0.0:10061->10051/tcp                      
zabbix-docker_zabbix-server_1             /sbin/tini -- /usr/bin/doc ...   Up                      0.0.0.0:10051->10051/tcp                      
zabbix-docker_zabbix-snmptraps_1          /usr/bin/supervisord -c /e ...   Up                      0.0.0.0:162->1162/udp                         
zabbix-docker_zabbix-web-apache-pgsql_1   docker-entrypoint.sh /usr/ ...   Up (health: starting)   0.0.0.0:80->8080/tcp, 0.0.0.0:443->8443/tcp   
zabbix-docker_zabbix-web-nginx-pgsql_1    docker-entrypoint.sh             Up (health: starting)   0.0.0.0:8081->8080/tcp, 0.0.0.0:8443->8443/tcp

Maintenant que WARNING a disparu, je voudrais revenir au sujet principal.

À propos du nom d'hôte

Vous pouvez le vérifier sur http: // localhost / à partir de ce serveur où se trouve le conteneur. À partir de la même bande réseau, j'ai pu confirmer la connexion sur http: // 192.168.x.x /.

Paramètres du proxy

Vérifiez les journaux et vérifiez l'erreur.

zabbix-server_1            |    211:20200923:130201.825 cannot parse proxy data from active proxy at "172.16.238.4": proxy "zabbix-proxy-sqlite3" not found
zabbix-server_1            |    211:20200923:130202.452 cannot parse proxy data from active proxy at "172.16.238.6": proxy "zabbix-proxy-mysql" not found

Agissez comme suit. J'ai essayé de lancer Zabbix4.2 avec docker

cannot send list of active checks to "xxx": host [yyy] not found Je reçois des erreurs. Traitez les points suivants. [[Zabbix] "-cannot-send-list-of-active-checks-to-127-0-0-1" continue d'apparaître dans le journal](https://vamdemicsystem.black/zabbix/%E3%80% 90zabbix% E3% 80% 91% E3% 83% AD% E3% 82% B0% E3% 81% AB% E3% 80% 8C-cannot-send-list-of-active-checks-to-127-0- 0-1% E3% 80% 8D% E3% 81% 8C% E5% 87% BA% E7% B6% 9A% E3% 81% 91% E3% 82% 8B)

S'identifier

zabbix5.0ログイン画面

L'ID et le PW initiaux sont les suivants. (Attention pour le capital)

ID PW
Admin zabbix
zabbix5.0ログイン後、初期画面

Ceci est l'écran initial après la connexion.

Localisation en japonais

Passez à "Paramètres utilisateur" -> "Langue" -> "Japonais (ja_JP)" dans la barre latérale gauche. Le mot de passe initial est faible, changez donc le mot de passe en même temps.

Éliminer «serveur Zabbix indisponible»

Je l'ai corrigé en faisant référence à ce qui suit. [Résoudre l'indisponibilité du serveur Zabbix](https://qiita.com/zembutsu/items/d98099bf68399c56c236#zabbix-server-%E3%81%AE-%E5%88%A9%E7%94%A8%E4 % B8% 8D% E5% 8F% AF-% E3% 82% 92% E8% A7% A3% E6% B6% 88% E3% 81% 99% E3% 82% 8B)

Zabbix Server の 利用不可 を解消する * Depuis "Paramètres" → "Hôte" → "Interface".

Autour des paramètres de messagerie du modèle d'hôte

Je pense qu'il y a différentes choses ici si vous faites le tour. J'ai évoqué ce qui suit.

Fuseau horaire

La version Alpine de Zabbix n'était pas à l'heure du Japon et doit être corrigée.

Je me demandais où changer, mais j'ai corrigé ".env_web".

Correction des caractères déformés dans le graphique

Vois ici.

[Créez un serveur Zabbix avec Docker sur une machine à processeur ARM - Téléchargez des polices japonaises](https://qiita.com/sakai00kou/items/285d0a4008b8492f5937#%E6%97%A5%E6%9C%AC%E8 % AA% 9E% E3% 83% 95% E3% 82% A9% E3% 83% B3% E3% 83% 88% E3% 81% AE% E3% 83% 80% E3% 82% A6% E3% 83 % B3% E3% 83% AD% E3% 83% BC% E3% 83% 89)

sudo apt-get install -y fonts-ipafont

J'ai monté la police correspondante directement comme ceci.

docker-compose.yml


 zabbix-web-nginx-pgsql:
  image: zabbix/zabbix-web-nginx-pgsql:alpine-5.0-latest
  ports:
   - "80:8080"
   - "443:8443"
  links:
   - postgres-server:postgres-server
   - zabbix-server:zabbix-server
  volumes:
   - /etc/localtime:/etc/localtime:ro
   - /etc/timezone:/etc/timezone:ro
   - ./zbx_env/etc/ssl/nginx:/etc/ssl/nginx:ro
   - ./zbx_env/usr/share/zabbix/modules/:/usr/share/zabbix/modules/:ro
   - /usr/share/fonts/opentype/ipafont-gothic/ipagp.ttf:/usr/share/zabbix/assets/fonts/DejaVuSans.ttf:ro

Maintenant, lorsque vous redémarrez docker, vous pouvez voir qu'il est en japonais.

日本語表示を確認したZabbix5.0のグラフの一部

Ceci complète la zone de police japonaise.

Paramètres de notification Slack

Reportez-vous à ce qui suit Configurer les notifications Slack dans Zabbix 5.0

résultat

Pour le moment, j'ai pu construire le système de surveillance que je voulais faire.

zabbixからslackに障害時に通知を飛ばした際のサンプル

Impressions

référence

Mémo de construction de l'environnement Zabbix 5.0 avec Docker Configurer les notifications Slack dans Zabbix 5.0 Mise à jour de la version git sur Ubuntu Rapport d'analyse comparative de la base de données Zabbix PostgreSQL vs MySQL PostgreSQL sur un serveur de surveillance à grande échelle A étudié le Linux alpin ultra-léger Procédure pour démarrer Zabbix 5.0 avec Docker Compose Installez la dernière version de docker sur ubuntu Installez la dernière composition de docker sur Ubuntu 20.04 Conseils de productivité et bonnes pratiques pour l'exécution de Docker Compose Limits - Exercices pratiques pour Docker Compose, partie 4 [Note] Comment surveiller les ressources Docker avec zabbix Zabbix 5.0: Surveillance des paramètres de l'hôte Ce à quoi j'étais accro quand j'ai appris Zabbix pour la première fois (petite histoire, qui doit être mise à jour à tout moment) Version de Zabbix 5.0 LTS Docker du démarrage à la connexion Créer un serveur Zabbix avec Docker sur une machine avec CPU ARM Surveillance Web avec Zabbix (Partie 1) Lancez Zabbix 5.0 avec docker-compose

Recommended Posts

Installer Zabbix 5.0 avec Docker → Configurer la notification Slack en cas d'échec
Configurer GitLab avec docker
Installer en spécifiant la version de Django dans l'environnement Docker
Comment configurer un proxy avec authentification dans Feign
Installer du fil dans l'image du docker
Construisez Zabbix5.0 avec docker-compose officiel, surveillez SNMPTRAP et définissez les notifications Slack
Installez Docker sur Ubuntu et configurez la connexion à distance à l'aide de tls