Les plugins système (addons) utilisent des ressources Kubernetes, telles que les DaemonSets et les déploiements, pour fournir des fonctionnalités de stockage et de mise en réseau au sein d'un cluster. Ces ressources sont déployées dans le namespace kube-system. Cette rubrique explique comment configurer la collecte des journaux pour les principaux plugins système, notamment les plugins de stockage, de mise en réseau et d'Auto Scaling.
Prérequis
-
Le module complémentaire de collecte des journaux est installé.
-
Pour Logtail : la version de
alibaba-log-controllerdoit être0.2.0.0-76648ee-aliyunou ultérieure.Si la version de
alibaba-log-controllerest obsolète, mettez à niveau le module complémentaire Logtail. Pour LoongCollector : toutes les versions sont prises en charge.
-
CoreDNS est mis à niveau vers la dernière version. Consultez la section Gestion des composants.
Étape 1 : Créer un fichier de configuration de journal pour un plugin système
La collecte des journaux ACK s'étend via une CustomResourceDefinition (CRD). Lorsque vous déployez une configuration CRD AliyunLogConfig, le Log Controller crée automatiquement les configurations de collecte et les ressources de rapport requises pour Simple Log Service. Pour plus d'informations sur la création d'une ressource personnalisée, consultez la section Gestion des ressources personnalisées.
Utilisez les exemples suivants pour créer un fichier de configuration AliyunLogConfig destiné aux plugins de stockage, de mise en réseau Terway, de mise en réseau Flannel ou d'Auto Scaling.
-
Exemple de configuration de journal pour le plugin de stockage CSI :
apiVersion: log.alibabacloud.com/v1alpha1 kind: AliyunLogConfig metadata: # The configuration name must be unique in the Kubernetes cluster. name: k8s-csi-log namespace: kube-system spec: # The name of the Logstore for log uploads. logstore: k8s-csi-log # The details of the Logtail configuration. logtailConfig: # The input type for Docker standard output is "plugin". inputType: plugin # The name of the Logtail configuration. It must be the same as metadata.name. configName: k8s-csi-log inputDetail: plugin: inputs: - # The input type. type: service_docker_stdout detail: # Collect stdout and stderr. Stdout: true Stderr: true K8sNamespaceRegex: "^kube-system$" K8sPodRegex: "^csi.*$" -
Exemple de configuration de journal pour le plugin de mise en réseau Terway :
apiVersion: log.alibabacloud.com/v1alpha1 kind: AliyunLogConfig metadata: # The configuration name must be unique in the Kubernetes cluster. name: k8s-terway-log namespace: kube-system spec: # The name of the Logstore for log uploads. logstore: k8s-terway-log # The details of the Logtail configuration. logtailConfig: # The input type for Docker standard output is "plugin". inputType: plugin # The name of the Logtail configuration. It must be the same as metadata.name. configName: k8s-terway-log inputDetail: plugin: inputs: - # The input type. type: service_docker_stdout detail: # Collect stdout and stderr. Stdout: true Stderr: true K8sNamespaceRegex: "^kube-system$" K8sPodRegex: "^terway-eniip.*$" -
Exemple de configuration de journal pour le plugin de mise en réseau Flannel :
apiVersion: log.alibabacloud.com/v1alpha1 kind: AliyunLogConfig metadata: # The configuration name must be unique in the Kubernetes cluster. name: k8s-flannel-log namespace: kube-system spec: # The name of the Logstore for log uploads. logstore: k8s-flannel-log # The details of the Logtail configuration. logtailConfig: # The input type for Docker standard output is "plugin". inputType: plugin # The name of the Logtail configuration. It must be the same as metadata.name. configName: k8s-flannel-log inputDetail: plugin: inputs: - # The input type. type: service_docker_stdout detail: # Collect stdout and stderr. Stdout: true Stderr: true K8sNamespaceRegex: "^kube-system$" K8sPodRegex: "^kube-flannel-ds.*$" -
Exemple de configuration de journal pour le plugin Auto Scaling :
apiVersion: log.alibabacloud.com/v1alpha1 kind: AliyunLogConfig metadata: # The configuration name must be unique in the Kubernetes cluster. name: k8s-cluster-autoscaler-log namespace: kube-system spec: # The name of the Logstore for log uploads. logstore: k8s-cluster-autoscaler-log # The details of the Logtail configuration. logtailConfig: # The input type for Docker standard output is "plugin". inputType: plugin # The name of the Logtail configuration. It must be the same as metadata.name. configName: k8s-cluster-autoscaler-log inputDetail: plugin: inputs: - # The input type. type: service_docker_stdout detail: # Collect stdout and stderr. Stdout: true Stderr: true K8sNamespaceRegex: "^kube-system$" K8sPodRegex: "^cluster-autoscaler.*$"
Étape 2 : Consulter les journaux
Pour plus d'informations sur la consultation des journaux, consultez la section Collecte des journaux des conteneurs dans un cluster ACK.