15.5. Dépannage pour les alertes critiques
15.5.1. La santé du cluster Elasticsearch est rouge Copier lienLien copié sur presse-papiers!
Au moins un nuage primaire et ses répliques ne sont pas attribués à un nœud.
Dépannage
Vérifiez l'état de santé du cluster Elasticsearch et vérifiez que le cluster
statusest rouge.oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- healthListe des nœuds qui ont rejoint le cluster.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cat/nodes?vListez les pods Elasticsearch et comparez-les aux nœuds dans la sortie de la commande de l'étape précédente.
oc -n openshift-logging get pods -l component=elasticsearchSi certains nœuds Elasticsearch n'ont pas rejoint le cluster, procédez comme suit.
Confirmer qu'Elasticsearch a un nœud de plan de contrôle élu.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cat/master?vExaminez les journaux de pods du nœud de plan de contrôle élu pour détecter les problèmes.
oc logs <elasticsearch_master_pod_name> -c elasticsearch -n openshift-loggingExaminez les journaux des nœuds qui n'ont pas rejoint le cluster.
oc logs <elasticsearch_node_name> -c elasticsearch -n openshift-logging
Si tous les nœuds ont rejoint la grappe, effectuez les étapes suivantes pour vérifier si la grappe est en cours de récupération.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cat/recovery?active_only=trueS'il n'y a pas de sortie de commande, le processus de récupération peut être retardé ou bloqué par des tâches en attente.
Vérifier s'il y a des tâches en attente.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- health |grep number_of_pending_tasksS'il y a des tâches en suspens, surveillez leur état.
Si leur état change et indique que la grappe se rétablit, continuez à attendre. Le délai de récupération varie en fonction de la taille de la grappe et d'autres facteurs.
Dans le cas contraire, si l'état des tâches en attente ne change pas, cela indique que la récupération est bloquée.
S'il semble que la récupération soit bloquée, vérifiez si
cluster.routing.allocation.enableest réglé surnone.oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cluster/settings?prettySi
cluster.routing.allocation.enableest défini surnone, définissez-le surall.oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cluster/settings?pretty -X PUT -d '{"persistent" : {\i1}"cluster.routing.allocation.enable":\N "all"}}'Vérifier quels indices sont encore rouges.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cat/indices?vSi certains indices sont encore rouges, essayez de les effacer en suivant les étapes suivantes.
Vider le cache.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name>/_cache/clear?prettyAugmenter le nombre maximum de tentatives d'allocation.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name>/_settings?pretty -X PUT -d '{"index.allocation.max_retries":10}'Supprimer tous les éléments du défilement.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_search/scroll/_all -X DELETEAugmenter le délai d'attente.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name>/_settings?pretty -X PUT -d '{"index.unassigned.node_left.delayed_timeout":\N "10m"}'
Si les étapes précédentes ne permettent pas d'effacer les indices rouges, supprimez les indices individuellement.
Identifier le nom de l'index rouge.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cat/indices?vSupprimer l'index rouge.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_red_index_name> -X DELETE
S'il n'y a pas d'indices rouges et que l'état de la grappe est rouge, vérifiez qu'un nœud de données n'est pas soumis à une charge de traitement élevée et continue.
Vérifiez si l'utilisation de la mémoire vive de la JVM Elasticsearch est élevée.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_nodes/stats?prettyDans la sortie de la commande, examinez le champ
node_name.jvm.mem.heap_used_percentpour déterminer l'utilisation de la mémoire vive de la JVM.- Vérifier si l'utilisation de l'unité centrale est élevée.
15.5.2. La santé du cluster Elasticsearch est jaune Copier lienLien copié sur presse-papiers!
Les nuages de répliques d'au moins un nuage primaire ne sont pas attribués à des nœuds.
Dépannage
-
Augmenter le nombre de nœuds en ajustant
nodeCountdans le CRClusterLogging.
15.5.3. Nœud de recherche Elastic atteint le seuil de faible utilisation du disque Copier lienLien copié sur presse-papiers!
Elasticsearch n'attribue pas de parts aux nœuds qui atteignent le filigrane le plus bas.
Dépannage
Identifiez le nœud sur lequel Elasticsearch est déployé.
oc -n openshift-logging get po -o wideVérifier s'il y a
unassigned shards.oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cluster/health?pretty | grep unassigned_shardsS'il y a des unités de stockage non attribuées, vérifiez l'espace disque sur chaque nœud.
for pod in `oc -n openshift-logging get po -l component=elasticsearch -o jsonpath='{.items[*].metadata.name}'`; do echo $pod; oc -n openshift-logging exec -c elasticsearch $pod -- df -h /elasticsearch/persistent; doneVérifiez le champ
nodes.node_name.fspour déterminer l'espace disque libre sur ce nœud.Si le pourcentage de disque utilisé est supérieur à 85 %, le nœud a dépassé le filigrane bas et les barrettes ne peuvent plus être allouées à ce nœud.
- Essayez d'augmenter l'espace disque sur tous les nœuds.
- S'il n'est pas possible d'augmenter l'espace disque, essayez d'ajouter un nouveau nœud de données au cluster.
Si l'ajout d'un nouveau nœud de données pose problème, diminuez la politique de redondance totale de la grappe.
Vérifier le courant
redundancyPolicy.oc -n openshift-logging get es elasticsearch -o jsonpath='{.spec.redundancyPolicy}'NoteSi vous utilisez un CR
ClusterLogging, entrez :oc -n openshift-logging get cl -o jsonpath='{.items[*].spec.logStore.elasticsearch.redundancyPolicy}'-
Si le cluster
redundancyPolicyest plus élevé queSingleRedundancy, réglez-le surSingleRedundancyet enregistrez cette modification.
Si les étapes précédentes ne permettent pas de résoudre le problème, supprimez les anciens indices.
Vérifier l'état de tous les index sur Elasticsearch.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- indices- Identifier un ancien index qui peut être supprimé.
Supprimer l'index.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name> -X DELETE
15.5.4. Elasticsearch Node Disk High Watermark Reached (en anglais) Copier lienLien copié sur presse-papiers!
Elasticsearch tente de relocaliser les shards loin d'un nœud qui a atteint le filigrane le plus élevé.
Dépannage
Identifiez le nœud sur lequel Elasticsearch est déployé.
oc -n openshift-logging get po -o wideVérifiez l'espace disque sur chaque nœud.
for pod in `oc -n openshift-logging get po -l component=elasticsearch -o jsonpath='{.items[*].metadata.name}'`; do echo $pod; oc -n openshift-logging exec -c elasticsearch $pod -- df -h /elasticsearch/persistent; doneVérifier si le cluster est en cours de rééquilibrage.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cluster/health?pretty | grep relocating_shardsSi la sortie de la commande indique que des shards ont été déplacés, cela signifie que le High Watermark a été dépassé. La valeur par défaut du filigrane élevé est de 90 %.
Les ensembles de données sont déplacés vers un nœud où l'utilisation du disque est faible et qui n'a pas franchi de seuil de filigrane.
- Pour allouer des fragments à un nœud particulier, libérez de l'espace.
- Essayez d'augmenter l'espace disque sur tous les nœuds.
- S'il n'est pas possible d'augmenter l'espace disque, essayez d'ajouter un nouveau nœud de données au cluster.
Si l'ajout d'un nouveau nœud de données pose problème, diminuez la politique de redondance totale de la grappe.
Vérifier le courant
redundancyPolicy.oc -n openshift-logging get es elasticsearch -o jsonpath='{.spec.redundancyPolicy}'NoteSi vous utilisez un CR
ClusterLogging, entrez :oc -n openshift-logging get cl -o jsonpath='{.items[*].spec.logStore.elasticsearch.redundancyPolicy}'-
Si le cluster
redundancyPolicyest plus élevé queSingleRedundancy, réglez-le surSingleRedundancyet enregistrez cette modification.
Si les étapes précédentes ne permettent pas de résoudre le problème, supprimez les anciens indices.
Vérifier l'état de tous les index sur Elasticsearch.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- indices- Identifier un ancien index qui peut être supprimé.
Supprimer l'index.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name> -X DELETE
15.5.5. Le filigrane de l'inondation des disques des nœuds Elasticsearch est atteint Copier lienLien copié sur presse-papiers!
Elasticsearch impose un bloc d'index en lecture seule à chaque index présentant ces deux conditions :
- Un ou plusieurs dépôts sont attribués au nœud.
- Un ou plusieurs disques dépassent le niveau d'inondation.
Dépannage
Vérifiez l'espace disque du nœud Elasticsearch.
for pod in `oc -n openshift-logging get po -l component=elasticsearch -o jsonpath='{.items[*].metadata.name}'`; do echo $pod; oc -n openshift-logging exec -c elasticsearch $pod -- df -h /elasticsearch/persistent; doneVérifiez le champ
nodes.node_name.fspour déterminer l'espace disque libre sur ce nœud.- Si le pourcentage de disques utilisés est supérieur à 95 %, cela signifie que le nœud a franchi le seuil d'inondation. L'écriture est bloquée pour les disques alloués à ce nœud particulier.
- Essayez d'augmenter l'espace disque sur tous les nœuds.
- S'il n'est pas possible d'augmenter l'espace disque, essayez d'ajouter un nouveau nœud de données au cluster.
Si l'ajout d'un nouveau nœud de données pose problème, diminuez la politique de redondance totale de la grappe.
Vérifier le courant
redundancyPolicy.oc -n openshift-logging get es elasticsearch -o jsonpath='{.spec.redundancyPolicy}'NoteSi vous utilisez un CR
ClusterLogging, entrez :oc -n openshift-logging get cl -o jsonpath='{.items[*].spec.logStore.elasticsearch.redundancyPolicy}'-
Si le cluster
redundancyPolicyest plus élevé queSingleRedundancy, réglez-le surSingleRedundancyet enregistrez cette modification.
Si les étapes précédentes ne permettent pas de résoudre le problème, supprimez les anciens indices.
Vérifier l'état de tous les index sur Elasticsearch.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- indices- Identifier un ancien index qui peut être supprimé.
Supprimer l'index.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name> -X DELETE
Continuez à libérer et à surveiller l'espace disque jusqu'à ce que l'espace disque utilisé soit inférieur à 90 %. Débloquez ensuite l'écriture sur ce nœud particulier.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_all/_settings?pretty -X PUT -d '{"index.blocks.read_only_allow_delete" : null}'
15.5.6. L'utilisation de la mémoire vive de la JVM Elasticsearch est élevée Copier lienLien copié sur presse-papiers!
La mémoire Heap de la JVM du nœud Elasticsearch est supérieure à 75 %.
Dépannage
Envisager d'augmenter la taille du tas.
15.5.7. L'unité centrale du système de journalisation agrégé est élevée Copier lienLien copié sur presse-papiers!
L'utilisation de l'unité centrale du système sur le nœud est élevée.
Dépannage
Vérifiez l'unité centrale du nœud de cluster. Envisagez d'allouer davantage de ressources CPU au nœud.
15.5.8. L'unité centrale du processus Elasticsearch est élevée Copier lienLien copié sur presse-papiers!
L'utilisation de l'unité centrale du processus Elasticsearch sur le nœud est élevée.
Dépannage
Vérifiez l'unité centrale du nœud de cluster. Envisagez d'allouer davantage de ressources CPU au nœud.
15.5.9. L'espace disque d'Elasticsearch est faible Copier lienLien copié sur presse-papiers!
Le cluster Elasticsearch devrait être à court d'espace disque dans les 6 prochaines heures, d'après l'utilisation actuelle du disque.
Dépannage
Obtenir l'espace disque du nœud Elasticsearch.
for pod in `oc -n openshift-logging get po -l component=elasticsearch -o jsonpath='{.items[*].metadata.name}'`; do echo $pod; oc -n openshift-logging exec -c elasticsearch $pod -- df -h /elasticsearch/persistent; done-
Dans la sortie de la commande, vérifiez le champ
nodes.node_name.fspour déterminer l'espace disque libre sur ce nœud. - Essayez d'augmenter l'espace disque sur tous les nœuds.
- S'il n'est pas possible d'augmenter l'espace disque, essayez d'ajouter un nouveau nœud de données au cluster.
Si l'ajout d'un nouveau nœud de données pose problème, diminuez la politique de redondance totale de la grappe.
Vérifier le courant
redundancyPolicy.oc -n openshift-logging get es elasticsearch -o jsonpath='{.spec.redundancyPolicy}'NoteSi vous utilisez un CR
ClusterLogging, entrez :oc -n openshift-logging get cl -o jsonpath='{.items[*].spec.logStore.elasticsearch.redundancyPolicy}'-
Si le cluster
redundancyPolicyest plus élevé queSingleRedundancy, réglez-le surSingleRedundancyet enregistrez cette modification.
Si les étapes précédentes ne permettent pas de résoudre le problème, supprimez les anciens indices.
Vérifier l'état de tous les index sur Elasticsearch.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- indices- Identifier un ancien index qui peut être supprimé.
Supprimer l'index.
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name> -X DELETE
15.5.10. L'utilisation du descripteur de fichiers Elasticsearch est élevée Copier lienLien copié sur presse-papiers!
Sur la base des tendances actuelles d'utilisation, le nombre prévu de descripteurs de fichiers sur le nœud est insuffisant.
Dépannage
Vérifiez et, si nécessaire, configurez la valeur de max_file_descriptors pour chaque nœud, comme décrit dans la rubrique Elasticsearch File descriptors.