Fixing some language issues on logging.md (FR)

Signed-off-by: didier <durand.didier@gmail.com>
pull/23948/head
didier 2020-09-17 11:44:50 +02:00
parent c15ef5b1b0
commit d9d8003fe0
1 changed files with 18 additions and 18 deletions

View File

@ -12,18 +12,18 @@ weight: 60
La journalisation des évènements systèmes et d'applications peut aider à La journalisation des évènements systèmes et d'applications peut aider à
comprendre ce qui se passe dans un cluster. Les journaux sont particulièrement comprendre ce qui se passe dans un cluster. Les journaux sont particulièrement
utiles pour débogguer les problèmes et surveiller l'activité du cluster. La utiles pour débogguer les problèmes et surveiller l'activité du cluster. La
plupart des application modernes ont un mécanisme de journalisation plupart des applications modernes ont un mécanisme de journalisation
d'évènements, et la plupart des environnements d'exécution de conteneurs ont été d'évènements, et la plupart des environnements d'exécution de conteneurs ont été
conçus pour supporter la journalisation des évènements. La méthode de conçus pour supporter la journalisation des évènements. La méthode de
journalisation la plus facile et la plus répandue pour des applications journalisation la plus facile et la plus répandue pour des applications
conteneurisées est d'écrire dans les flux de sortie standard et d'erreur conteneurisées est d'écrire dans les flux de sortie standard et d'erreur
standard (`stdout` et `stderr`). standards (`stdout` et `stderr`).
Malgré cela, la fonctionnalité de journalisation fournie nativement par Malgré cela, la fonctionnalité de journalisation fournie nativement par
l'environnement d'exécution de conteneurs n'est pas suffisante comme solution l'environnement d'exécution de conteneurs n'est pas suffisante comme solution
complète de journalisation. Quand un conteneur crash, quand un Pod est expulsé complète de journalisation. Quand un conteneur crashe, quand un Pod est expulsé
ou quand un nœud disparaît, il est utile de pouvoir accéder au journal ou quand un nœud disparaît, il est utile de pouvoir accéder au journal
d'événement de l'application. C'est pourquoi les journaux doivent avoir leur d'événements de l'application. C'est pourquoi les journaux doivent avoir leur
propre espace de stockage et un cycle de vie indépendamment des nœuds, Pods ou propre espace de stockage et un cycle de vie indépendamment des nœuds, Pods ou
conteneurs. Ce concept est appelé _journalisation des évènements au niveau du conteneurs. Ce concept est appelé _journalisation des évènements au niveau du
cluster_ (cluster-level-logging). Un backend dédié pour stocker, analyser et cluster_ (cluster-level-logging). Un backend dédié pour stocker, analyser et
@ -92,15 +92,15 @@ logs`] (/docs/reference/generated/kubectl/kubectl-commands#logs)
nœud](/images/docs/user-guide/logging/logging-node-level.png) nœud](/images/docs/user-guide/logging/logging-node-level.png)
Tout ce qu'une application conteneurisée écrit sur `stdout` ou `stderr` est pris Tout ce qu'une application conteneurisée écrit sur `stdout` ou `stderr` est pris
en compte et redirigé par l'environment d'exécution des conteneurs. Par exemple, en compte et redirigé par l'environnement d'exécution des conteneurs. Par exemple,
Docker redirige ces deux flux à un [driver de journalisation Docker redirige ces deux flux vers un [driver de journalisation
(EN)](https://docs.docker.com/config/containers/logging/configure/) qui est (EN)](https://docs.docker.com/config/containers/logging/configure/) qui est
configuré dans Kubernetes pour écrire dans un fichier au format json. configuré dans Kubernetes pour écrire dans un fichier au format json.
{{< note >}} Le driver json de Docker traite chaque ligne comme un message {{< note >}} Le driver json de Docker traite chaque ligne comme un message
différent. Avec ce driver il n'y a pas de support direct pour des messages différent. Avec ce driver il n'y a pas de support direct pour des messages
multi-lignes. Il faut donc traiter les messages multi-lignes au niveau de multi-lignes. Il faut donc traiter les messages multi-lignes au niveau de
l'agent de journalisation ou plus haut. {{< /note >}} l'agent de journalisation ou plus en amont encore. {{< /note >}}
Par défaut quand un conteneur redémarre, le kubelet ne conserve le journal que Par défaut quand un conteneur redémarre, le kubelet ne conserve le journal que
du dernier conteneur terminé. Quand un Pod est expulsé d'un nœud, tous ses du dernier conteneur terminé. Quand un Pod est expulsé d'un nœud, tous ses
@ -119,11 +119,11 @@ l'environnement d'exécution des conteneurs pour que la rotation des journaux
s'exécute automatiquement, e.g. en utilisant le paramètre `log-opt` de Docker. s'exécute automatiquement, e.g. en utilisant le paramètre `log-opt` de Docker.
Dans le script `kube-up.sh`, c'est cette méthode qui est utilisée pour des Dans le script `kube-up.sh`, c'est cette méthode qui est utilisée pour des
images COS sur GCP et sinon c'est la première méthode dans tous les autres cas. images COS sur GCP et sinon c'est la première méthode dans tous les autres cas.
Quel que soit la méthode choisie par `kube-up.sh` la rotation est configurée par Quelle que soit la méthode choisie par `kube-up.sh` la rotation est configurée par
defaut quand la taille d'un journal atteint 10 Mo. défaut quand la taille d'un journal atteint 10 Mo.
Ce [script][cosConfigureHelper] montre de manière détaillée comment `kube-up.sh` Ce [script][cosConfigureHelper] montre de manière détaillée comment `kube-up.sh`
met en place la journalisation d'évènement pour des images COS sur GCP. met en place la journalisation d'évènements pour des images COS sur GCP.
Quand [`kubectl logs`](/docs/reference/generated/kubectl/kubectl-commands#logs) Quand [`kubectl logs`](/docs/reference/generated/kubectl/kubectl-commands#logs)
s'exécute comme dans le premier exemple de journalisation simple le kubelet du s'exécute comme dans le premier exemple de journalisation simple le kubelet du
@ -147,10 +147,10 @@ conteneur ou pas.
Par exemple : Par exemple :
* Le scheduler Kubernetes et kube-proxy s'exécutent dans un conteneur. * Le scheduler Kubernetes et kube-proxy s'exécutent dans un conteneur.
* Kubelet et l'environment d'exécution de conteneurs, comme par exemple * Kubelet et l'environnement d'exécution de conteneurs, comme par exemple
Docker, ne s'exécutent pas dans un conteneur. Docker, ne s'exécutent pas dans un conteneur.
Sur les systèmes avec systemd, kubelet et l'environment d'exécution de Sur les systèmes avec systemd, kubelet et l'environnement d'exécution de
conteneurs écrivent dans journald. Si systemd n'est pas présent, ils écrivent conteneurs écrivent dans journald. Si systemd n'est pas présent, ils écrivent
dans un fichier `.log` dans le répertoire `/var/log`. dans un fichier `.log` dans le répertoire `/var/log`.
@ -198,7 +198,7 @@ le nœud. Ces deux dernières options sont obsolètes et fortement découragées
Utiliser un agent de journalisation au niveau du nœud est l'approche la plus Utiliser un agent de journalisation au niveau du nœud est l'approche la plus
commune et recommandée pour un cluster Kubernetes parce qu'un seul agent par commune et recommandée pour un cluster Kubernetes parce qu'un seul agent par
nœud est créé et qu'aucune modification dans l'application n'est nécessaire. nœud est créé et qu'aucune modification dans l'application n'est nécessaire.
Mais cette approche _ne fonctionne correctement que pour les flux standard de Mais cette approche _ne fonctionne correctement que pour les flux standards de
sortie et d'erreurs des applications_. sortie et d'erreurs des applications_.
Kubernetes ne définit pas d'agent de journalisation, mais deux agents de Kubernetes ne définit pas d'agent de journalisation, mais deux agents de
@ -288,13 +288,13 @@ Notez que bien que la consommation en CPU et mémoire soit faible ( de l'ordre d
quelques milicores pour la CPU et quelques mégaoctets pour la mémoire), ecrire quelques milicores pour la CPU et quelques mégaoctets pour la mémoire), ecrire
les évènements dans un fichier et les envoyer ensuite dans `stdout` peut doubler les évènements dans un fichier et les envoyer ensuite dans `stdout` peut doubler
l'espace disque utilisé. Quand une application écrit dans un seul fichier de l'espace disque utilisé. Quand une application écrit dans un seul fichier de
journal il est préférable de configurer `/dev/stdout` comme destination plutôt journal, il est préférable de configurer `/dev/stdout` comme destination plutôt
que d'implémenter un conteneur side-car diffusant. que d'implémenter un conteneur side-car diffusant.
Les conteneurs side-car peuvent être utilisés pour faire la rotation des Les conteneurs side-car peuvent être utilisés pour faire la rotation des
journaux quand l'application n'en est pas capable elle même. Un exemple serait journaux quand l'application n'en est pas capable elle-même. Un exemple serait
un petit conteneur side-car qui effectuerait cette rotation périodiquement. un petit conteneur side-car qui effectuerait cette rotation périodiquement.
Toutefois il est recommandé d'utiliser `stdout` et `stderr` directement et de Toutefois, il est recommandé d'utiliser `stdout` et `stderr` directement et de
laisser la rotation et les politiques de rétentions au kubelet. laisser la rotation et les politiques de rétentions au kubelet.
### Conteneur side-car avec un agent de journalisation ### Conteneur side-car avec un agent de journalisation
@ -303,13 +303,13 @@ laisser la rotation et les politiques de rétentions au kubelet.
journalisation](/images/docs/user-guide/logging/logging-with-sidecar-agent.png) journalisation](/images/docs/user-guide/logging/logging-with-sidecar-agent.png)
Quand un agent de journalisation au niveau du nœud n'est pas assez flexible pour Quand un agent de journalisation au niveau du nœud n'est pas assez flexible pour
votre utilisation vous pouvez créer un conteneur side-car avec un agent de votre utilisation, vous pouvez créer un conteneur side-car avec un agent de
journalisation séparé que vous avez configuré spécialement pour qu'il s'exécute journalisation séparé que vous avez configuré spécialement pour qu'il s'exécute
avec votre application. avec votre application.
{{< note >}} {{< note >}}
Utiliser un agent de journalisation dans un conteneur side-car peut entraîner Utiliser un agent de journalisation dans un conteneur side-car peut entraîner
une consommation de ressource significative. De plus vous n'avez plus accès aux une consommation de ressources significative. De plus vous n'avez plus accès aux
journaux avec la commande `kubectl` parce qu'ils ne sont plus gérés par journaux avec la commande `kubectl` parce qu'ils ne sont plus gérés par
kubelet. kubelet.
{{< /note >}} {{< /note >}}