Simple Log Service définit deux CRD (Custom Resource Definitions) Kubernetes : AliyunPipelineConfig et AliyunLogConfig. Ces ressources vous permettent de gérer les configurations Logtail sous forme de CustomResources (CR).
Présentation
Une CRD étend l’API Kubernetes pour définir des types de ressources personnalisés. Chaque CR est une instance d’une CRD. Pour en savoir plus, consultez la documentation Extend the Kubernetes API with CustomResourceDefinitions.
Pour gérer les configurations Logtail à l’aide de CR, connectez-vous à votre cluster Kubernetes, authentifiez-vous, puis envoyez un fichier YAML au kube-apiserver afin de créer une CR.
Si vous créez une configuration Logtail via une CR, mettez-la toujours à jour via cette même CR. Les modifications apportées dans la console SLS ne sont pas synchronisées avec la CR.
CRD
SLS propose deux CRD pour gérer les configurations Logtail dans Kubernetes : AliyunPipelineConfig et AliyunLogConfig. Le tableau suivant compare leurs fonctionnalités.
AliyunPipelineConfig nécessite Logtail version 0.5.1 ou ultérieure.
|
CRD |
AliyunPipelineConfig (recommandé) |
AliyunLogConfig |
|
ApiGroup |
telemetry.alibabacloud.com/v1alpha1 |
log.alibabacloud.com/v1alpha1 |
|
Nom de la ressource CRD |
ClusterAliyunPipelineConfig |
AliyunLogConfig |
|
Portée |
Cluster |
Namespace |
|
Format de configuration Logtail |
Équivalent à LogtailPipelineConfig |
Équivalent à LogtailConfig |
|
Capacité multi-régions |
Prise en charge |
Prise en charge |
|
Capacité multi-comptes |
Prise en charge |
Prise en charge |
|
Vérification des paramètres liés aux webhooks |
Prise en charge |
Non pris en charge |
|
Détection des conflits de configuration |
Prise en charge |
Prise en charge (Logtail 0.5+) |
|
Complexité de configuration |
Relativement faible |
Relativement élevée |
|
Configuration de l'observabilité |
Le champ Status inclut les détails des erreurs, l’heure de mise à jour, la configuration Logtail précédemment appliquée et la date d’application. |
Le champ Status contient le code d’erreur et le message d’erreur. |
Résoudre les erreurs 404 après la suppression d’une CRD
Si la création ou la mise à jour d’une configuration Logtail échoue avec les messages no matches for kind "ClusterAliyunPipelineConfig" ou the server could not find the requested resource, il est possible que la CRD ClusterAliyunPipelineConfig ait été supprimée par inadvertance.
Étapes de dépannage
-
Vérifiez si la CRD existe toujours :
kubectl get crd | grep ClusterAliyunPipelineConfigSi aucune sortie n’est renvoyée, la CRD a été supprimée.
-
Réinstallez LoongCollector pour restaurer la CRD :
helm upgrade loongcollector loongcollector/loongcollector -n kube-system --reuse-valuesAppliquez également directement le fichier YAML de la CRD :
kubectl apply -f crd.yaml -
Vérifiez que la CRD a bien été restaurée :
kubectl get crd | grep ClusterAliyunPipelineConfig -
Vérifiez que vous pouvez à nouveau créer des configurations Logtail :
kubectl apply -f your-pipeline-config.yaml
La CRD est gérée par le répertoire crds du chart Helm LoongCollector. Le redémarrage de loongcollector-operator ne recrée pas la CRD ; restaurez-la à l’aide de helm upgrade ou de kubectl apply. La suppression de la CRD entraîne également la suppression de toutes les ressources ClusterAliyunPipelineConfig existantes.