Simple Log Service (SLS) は、AliyunPipelineConfig と AliyunLogConfig という 2 つの Kubernetes CustomResourceDefinition (CRD) を定義します。これにより、Logtail 構成をカスタムリソース (CR) として管理できます。
概要
CRD は Kubernetes API を拡張して、カスタムリソースタイプを定義します。各 CR は CRD のインスタンスです。詳細については、「Kubernetes API を CustomResourceDefinition で拡張する」をご参照ください。
CR を使用して Logtail 構成を管理するには、Kubernetes クラスターに接続して認証し、YAML ファイルを kube-apiserver に送信して CR を作成します。
CR を介して Logtail 構成を作成した場合、更新も必ず CR を介して行ってください。SLS コンソールで行った変更は CR には同期されません。
CRD
SLS は、Kubernetes で Logtail 構成を管理するための 2 つの CRD、AliyunPipelineConfig と AliyunLogConfig を提供します。次の表は、これらの機能を比較したものです。
AliyunPipelineConfig には、Logtail 0.5.1 以降が必要です。
|
CRD |
AliyunPipelineConfig (推奨) |
AliyunLogConfig |
|
ApiGroup |
telemetry.alibabacloud.com/v1alpha1 |
log.alibabacloud.com/v1alpha1 |
|
CRD リソース名 |
ClusterAliyunPipelineConfig |
AliyunLogConfig |
|
スコープ |
クラスター |
名前空間 |
|
Logtail 構成形式 |
LogtailConfig に相当 |
|
|
クロスリージョン機能 |
対応 |
対応 |
|
クロスアカウント機能 |
対応 |
対応 |
|
Webhook 関連のパラメーター検証 |
対応 |
非対応 |
|
構成の競合検出 |
対応 |
対応 (Logtail 0.5 以降) |
|
構成の難易度 |
比較的低い |
比較的高い |
|
可観測性構成 |
Status フィールドには、エラー詳細、更新時刻、前回適用された Logtail 構成、およびその適用時刻が含まれます。 |
Status フィールドには、エラーコードとエラーメッセージが含まれます。 |
CRD 削除後の 404 エラーのトラブルシューティング
Logtail 設定の作成または更新が no matches for kind "ClusterAliyunPipelineConfig" または the server could not find the requested resource というエラーで失敗する場合、ClusterAliyunPipelineConfig CRD が誤って削除された可能性があります。
トラブルシューティング手順
-
CRD がまだ存在するかどうかを確認します:
kubectl get crd | grep ClusterAliyunPipelineConfig何も出力が返されない場合、CRD は削除されています。
-
LoongCollector をアップグレードして CRD を復元します:
helm upgrade loongcollector loongcollector/loongcollector -n kube-system --reuse-valuesまたは、CRD の YAML を直接適用します:
kubectl apply -f crd.yaml -
CRD が復元されたことを確認します:
kubectl get crd | grep ClusterAliyunPipelineConfig -
Logtail 構成を再度作成できることを確認します:
kubectl apply -f your-pipeline-config.yaml
CRD は、LoongCollector Helm チャートの crds ディレクトリによって管理されます。loongcollector-operator を再起動しても CRD は再作成されません。helm upgrade または kubectl apply を使用して復元する必要があります。CRD を削除すると、既存のすべての ClusterAliyunPipelineConfig リソースも削除されます。