From 099c3dd80a101fe6d8d5f93f8e7250ce4c8e8fac Mon Sep 17 00:00:00 2001 From: Jeremy Lecour Date: Sun, 23 Apr 2023 11:27:49 +0200 Subject: [PATCH] orthographe --- Howtoetcd.md => HowtoEtcd.md | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) rename Howtoetcd.md => HowtoEtcd.md (71%) diff --git a/Howtoetcd.md b/HowtoEtcd.md similarity index 71% rename from Howtoetcd.md rename to HowtoEtcd.md index 063c4895..d2588a98 100644 --- a/Howtoetcd.md +++ b/HowtoEtcd.md @@ -1,6 +1,7 @@ --- title: Howto etcd categories: databases +redirect: etcd ... * Documentation : @@ -11,13 +12,13 @@ categories: databases # Installation -En Debian 11 on installe le client et / ou le serveur etcd comme ceci : +En Debian 11 on installe le client et/ou le serveur **etcd** comme ceci : ~~~ # apt install etcd-client etcd-server ~~~ -Si on doit utilisé etcd via une API en python, comme pour Patroni par exemple, on peux installer ces paquets supplémentaires : +Si on doit utiliser etcd via une API en Python, comme pour Patroni par exemple, on peux installer ces paquets supplémentaires : ~~~ # apt install python3-etcd python3-psycopg2 @@ -25,28 +26,26 @@ Si on doit utilisé etcd via une API en python, comme pour Patroni par exemple, # Configuration -etcd écoute, par défaut, sur deux port bien distinct, le port `2379` et le port `2380`. +etcd écoute, par défaut, sur deux port bien distincts: `2379` et `2380`. Le port `2379` sert pour la communication pour les requêtes des clients, et le port `2380` sert pour la communication des nœuds. Voici la définition des variables d'environnement que nous utilisons le plus souvent : -* `ETCD_NAME` : défini le nom du nœud -* `ETCD_DATA_DIR` : répertoire du datadir des WAL etcd -* `ETCD_LOG_OUTPUTS` : défini la sortie des logs, peux être défini sur `stdout` ou `stderr`, ça skippe la remonté des logs dans journald. -* `ETCD_LISTEN_PEER_URLS` : défini la liste des URLs sur laquelle écoute le trafic des pairs. Seule une adresse IP est valide, si on indique `0.0.0.0:PORT` cela écoute sur toutes les interfaces réseau de la machine. -Un nom de domaine n'est pas valide pour l'écoute. -* `ETCD_LISTEN_CLIENT_URLS` : défini la liste des URLs sur laquelle écoute le trafic des clients. Seule une adresse IP est valide, si on indique `0.0.0.0:PORT` cela écoute sur toutes les interfaces réseau de la machine. -Un nom de domaine n'est pas valide pour l'écoute. -* `ETCD_INITIAL_ADVERTISE_PEER_URLS` : liste des URLs homologue de ce nœud a annoncer au reste du cluster. Ces adresses sont utilisées pour communiquer les données etcd autour du cluster, et elle peuvent contenir des noms de domaine. +* `ETCD_NAME` : nom du nœud +* `ETCD_DATA_DIR` : datadir des WAL etcd +* `ETCD_LOG_OUTPUTS` : sortie des logs sur `stdout` ou `stderr`, ça annule la remonté des logs dans journald. +* `ETCD_LISTEN_PEER_URLS` : liste des URLs sur laquelle écoute le trafic des pairs. Seule une adresse IP est valide, si on indique `0.0.0.0:PORT` cela écoute sur toutes les interfaces réseau de la machine. Un nom de domaine n'est pas valide pour l'écoute. +* `ETCD_LISTEN_CLIENT_URLS` : liste des URLs sur laquelle écoute le trafic des clients. Seule une adresse IP est valide, si on indique `0.0.0.0:PORT` cela écoute sur toutes les interfaces réseau de la machine. Un nom de domaine n'est pas valide pour l'écoute. +* `ETCD_INITIAL_ADVERTISE_PEER_URLS` : liste des URLs homologues de ce nœud à annoncer au reste du cluster. Ces adresses sont utilisées pour communiquer les données etcd autour du cluster, et elle peuvent contenir des noms de domaine. * `ETCD_INITIAL_CLUSTER` : configuration initiale du cluster pour l'amorçage. * `ETCD_ADVERTISE_CLIENT_URLS` : liste des URL client de ce membre à annoncer au reste du cluster, peux contenir des noms de domaine. * `ETCD_INITIAL_CLUSTER_TOKEN` : défini le token d'initialisation pour l'amorçage du cluster etcd. * `ETCD_INITIAL_CLUSTER_STATE` : état initial du cluster, peut être défini sur `new` ou `existing`. Si cette option est définie sur `existing`, etcd tentera de rejoindre le cluster existant. Si la mauvaise valeur est définie, etcd tentera de démarrer mais échouera en toute sécurité. -## Etcd en stand alone sur un seul nœud +## Etcd en _stand alone_ sur un seul nœud -Si on veux utilisé etcd sur un seul serveur, et pas en mode cluster, on utilisera la configuration suivante dans `/etc/default/etcd` : +Si on veux utiliser etcd sur un seul serveur, et pas en mode cluster, on peut utiliser la configuration suivante dans `/etc/default/etcd` : ~~~ ETCD_NAME="etcd-foo" @@ -66,7 +65,7 @@ Dans cet exemple l'ip `192.0.1.2` est l'ip locale de la machine, on le fait éco ## Etcd en mode cluster -Si on veux utilisé etcd en mode cluster, on utilisera la configuration suivante : +Si on veux utiliser etcd en mode cluster, on peut utiliser la configuration suivante : ~~~ ETCD_NAME="etcd-foo1" @@ -95,7 +94,7 @@ On met en place cette configuration sur tous les nœuds, en modifiant les variab ## Interagir en CLI avec l'API de etcd -On peux utilisé la commande `etcdctl` pour intéragir avec l'API de etcd, il faut bien exporté la variable `ETCDCTL_API` en fonction de la version de etcd qu'on utilise, soit v2 ou v3. +On peux utiliser la commande `etcdctl` pour interagir avec l'API de etcd, il faut bien exporter la variable `ETCDCTL_API` en fonction de la version de etcd qu'on utilise, soit v2 ou v3. En Debian 11 on utilise la v3, donc on exporte la variable comme ceci : @@ -105,7 +104,7 @@ En Debian 11 on utilise la v3, donc on exporte la variable comme ceci : Voici quelques exemples d'utilisation : -* Listé les membres du cluster et connaitre l'état de chaque nœud : +* Lister les membres du cluster et connaitre l'état de chaque nœud : ~~~ # etcdctl --endpoints=http://127.0.0.1:2379 member list @@ -124,7 +123,7 @@ API version: 3.3 ## Sauvegarde -Pour faire une sauvegarde de etcd dans un fichier on peux utilisé la commande suivante : +Pour faire une sauvegarde de etcd dans un fichier on peux utiliser la commande suivante : ~~~ # etcdctl --endpoints=http://127.0.0.1:2379 snapshot save /home/backup/etcd-foo1.db @@ -133,7 +132,7 @@ Pour faire une sauvegarde de etcd dans un fichier on peux utilisé la commande s Snapshot saved at /home/backup/etcd-foo1.db ~~~ -On peux vérifié le contenu de la sauvegarde, pour savoir le nombre de clé quelle contient, sa taille etc... +On peux vérifier le contenu de la sauvegarde, pour savoir le nombre de clés quelle contient, sa taille… ~~~ # etcdctl --write-out=table --endpoints=http://127.0.0.1:2379 snapshot status /home/backup/etcd-foo1.db