En tant que concepteur, je ne crée pas souvent un environnement de réseau de production dans mon travail, et je crée souvent un environnement de démonstration pour vérifier les idées, donc je n'ai pas fait beaucoup de surveillance des serveurs jusqu'à présent.
Cependant, quand j'ai commencé à utiliser k8s
et GitLab CE
, la configuration du serveur est devenue compliquée, et quand un problème se produisait, le serveur devenait trop lourd et je ne pouvais pas me connecter au serveur avec ssh etc. en premier lieu. J'ai eu un problème, j'ai donc décidé de mettre en place un outil de surveillance.
Zabbix + docker-compose
En raison du contexte ci-dessus, je n'étais pas très familier avec les outils de surveillance, mais mes seniors de l'entreprise m'ont appris les outils «Zabbix» et «MUNIN». Il semblait que MUNIN
était plus facile, mais quand il s'agissait de surveiller le cluster de k8s
, je pensais que Zabbix
serait mieux, alors j'ai décidé d'utiliser Zabbix
cette fois.
Heureusement, la configuration de docker-compose
a été officiellement téléchargée, donc je l'ai construite sur cette base, mais c'était très facile à construire. C'est aussi grâce à la sagesse de nos prédécesseurs!
Fondamentalement, tous les serveurs sont composés de ʻubuntu 20.04`. Il n'y a aucun problème avec un nombre quelconque de clients à surveiller.
En gros, nous procéderons selon le site officiel.
Docker
https://docs.docker.com/engine/install/ubuntu/
sudo apt-get update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
docker-compose
https://docs.docker.com/compose/install/
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
S'il est laissé tel quel, l'autorité racine est nécessaire pour l'exécuter, alors permettez à l'utilisateur actuel de l'exécuter.
sudo groupadd docker
sudo usermod -aG docker $(id -u -n)
Après cela, ** reconnectez-vous pour que les paramètres prennent effet. ** **
Zabbix Server
Commencez par démarrer le serveur. Il était facile de commencer à utiliser docker-compose
.
clone
Nous allons cloner
l'ensemble docker-compose
officiel.
git clone https://github.com/zabbix/zabbix-docker.git
cd zabbix-docker
Copiez n'importe quel fichier de configuration en tant que docker-compose.yaml
. Ici, j'ai utilisé docker-compose_v3_alpine_pgsql_latest.yaml
.
cp docker-compose_v3_alpine_pgsql_latest.yaml docker-compose.yaml
Par défaut, le fuseau horaire n'est pas le Japon, alors changez-le.
nano .env_web
…
PHP_TZ=Asia/Tokyo
…
iptables
Ouvrez les ports requis pour la communication.
sudo iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 10051 -j ACCEPT
Maintenant que les réglages sont terminés, démarrez.
docker-compose up -d
S'identifier. S'il est laissé par défaut, le nom d'utilisateur est ʻAdmin(A en haut) et le mot de passe est
zabbix`.
Allez dans Paramètres> Hôte> Serveur Zabbix
.
Par défaut, la partie interface contient 127.0.0.1
, mais supprimez-la et entrez zabbix-agent
à la place du nom DNS. Définissez également la méthode de connexion sur «DNS».
J'ai oublié de prendre une capture et l'ai prise plus tard, donc le nombre d'hôtes est déjà de 2, mais cela complète les paramètres de base du serveur!
Zabbix Agent
Ensuite, définissez le client à surveiller et affichez-le sur le serveur.
Il est fourni par ʻapt`, donc installez-le docilement.
sudo apt-get install zabbix-agent
Configurez l'agent.
sudo nano /etc/zabbix/zabbix_agentd.conf
Il existe différents éléments de réglage, mais l'essentiel est
Server=<Adresse IP du serveur Zabbix>
ServerActive=<Adresse IP du serveur Zabbix>
Hostname=<Nom d'hôte arbitraire>
était. ** Le nom d'hôte défini ici est arbitraire, mais vous en aurez besoin plus tard lors de sa configuration côté serveur. ** **
Redémarrez pour que les paramètres prennent effet.
sudo service zabbix-agent restart
iptables
Ouvrez également le port de communication ici.
sudo iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 10050 -j ACCEPT
Le réglage manuel sur plusieurs terminaux est une douleur, donc je l'ai exécuté avec la commande suivante.
SERVER_IP=<IP du serveur>
HOSTNAME=<nom d'hôte>
sudo sed -i -e "s/127.0.0.1/$SERVER_IP/g" -e "s/Hostname=Zabbix server/Hostname=$HOSTNAME/g" /etc/zabbix/zabbix_agentd.conf
sudo service zabbix-agent restart
sudo iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 10050 -j ACCEPT
Connectez-vous au serveur et allez dans Paramètres> Hôtes> Créer un hôte
.
Est un élément obligatoire. Utilisez le nom d'hôte que vous avez défini précédemment.
Accédez à l'onglet Modèles et sélectionnez-en un. Cette fois, nous utiliserons Template OS Linux by Zabbix agent
.
Après avoir configuré à ce point, appuyez sur "Ajouter" pour terminer le réglage!
Il semblait difficile de mettre en place un outil de surveillance, mais il était étonnamment facile à installer. C'est génial que vous puissiez démarrer Zabbix Server
avec docker-compose
.
Cette fois, je viens de le présenter et je n'ai pas pu suivre l'utilisation détaillée, mais c'est un outil populaire avec de nombreux articles d'introduction, donc je vais l'étudier à partir de maintenant.
Cet article a été créé avec une référence complète aux articles suivants.
[Procédure pour démarrer Zabbix 5.0 avec Docker Compose](https://qiita.com/zembutsu/items/d98099bf68399c56c236#docker-%E3%81%A8-docker-compose-%E3%82%92%E3%82% BB% E3% 83% 83% E3% 83% 88% E3% 82% A2% E3% 83% 83% E3% 83% 97) [Installez et surveillez l'agent Zabbix sur votre Ubuntu habituel](https://chee-s.net/%E6%99%AE%E6%AE%B5%E4%BD%BF%E3%81% 84% E3% 81% AEubuntu% E3% 81% Agent ABzabbix% E3% 82% 92% E3% 82% A4% E3% 83% B3% E3% 82% B9% E3% 83% 88% E3% 83% BC% E3% 83% AB% E3% 81% 97% E3% 81% A6% E7% 9B% A3% E8% A6% 96% E3% 81% 99% E3% 82% 8B)
Recommended Posts