Collector for Kubernetesのアップグレードとその他のアップデート
Splunk Distribution of OpenTelemetry Collector for Kubernetes をアップグレードします。
Collector for Kubernetes のアップグレード
・ンストーラースクリプトは、aptやyumなど、サポートされているパッケージ・マネージャーのいずれかを使用してCollectorをインストールします。公式パッケージを使用して Collector を更新する場合、構成ファイルは上書きされません。更新後に構成を更新する必要がある場合は、後方互換性が失われる前に手動で編集します。
Collector for Kubernetesをアップグレードするには、以下のコマンドを実行します:
-
フラグ
--reuse-valuesを使用して、Collector のインストール時または使用時に設定した設定値を保持します。
helm upgrade splunk-otel-collector splunk-otel-collector-chart/splunk-otel-collector
--reuse-values
-
アップグレード中に以前の設定を上書きするには、
--values config.yamlを使用します:
helm upgrade splunk-otel-collector --values config.yaml splunk-otel-collector-chart/splunk-otel-collector --reuse-values
詳しくは「Helm アップグレードオプション」の公式ドキュメントを参照してください。
アップグレードガイドライン
特定のバージョンアップのために、Collector 構成ファイルに以下の変更を適用します。詳細については、GitHub の「Helm chart upgrade guidelines」を参照してください。
0.113.0から0.116.0
カスタムリソース定義(CRD)構成が変更されました。
-
v0.110.0以前のCRDは、
crds/ディレクトリ(アップストリームデフォルト)を介してデプロイされていました。 -
v0.110.0からv1.113.0までのCRDは、問題が報告されていた、Helmテンプレート(アップストリームデフォルト)を使用してデプロイされていました。
-
v0.116.0 以降では、潜在的な問題を回避するために、CRD のデプロイ方法を明示的に設定するか、CRD を手動でデプロイする必要があります。新しく追加された値を有効にすることで、
crds/ディレクトリを介して CRD を再度展開できます。
新規のユーザー
新しいユーザーの場合は、crds/ ディレクトリを介して CRD を展開します。新規インストールの場合は、次の Helm 値を使用します。
operatorcrds:
install: true
operator:
enabled: true
チャートをインストールするには
helm install <release-name> splunk-otel-collector-chart/splunk-otel-collector --set operatorcrds.install=true,operator. enabled=true <extra_args>
現在のユーザー
operator.enabled=trueを使用している場合は、移行する必要がある可能性があります。
バージョン 0.110.0〜1.113.0 を使用している場合、CRD は Helm テンプレートを通じてデプロイされている可能性があります。推奨される crds/ ディレクトリデプロイメントに移行するには以下の手順に従います。
-
実行中の既存のチャートを削除する
BASHhelm delete <release-name> -
以下のCRDが存在するかどうかを確認し、必要であれば削除します:
BASHkubectl get crds | grep opentelemetry kubectl delete crd opentelemetrycollectors.opentelemetry.io kubectl delete crd opampbridges.opentelemetry.io kubectl delete crd instrumentations.opentelemetry.io -
更新された構成でチャートを再インストールします:
BASHhelm install <release-name> splunk-otel-collector --set operatorcrds.install=true,operator.enabled=true <extra_args>
レガシーテンプレートを保守している現在のユーザー
チャートバージョン 0.110.0~1.113.0 を使用しており、Helm テンプレートによる CRD のデプロイを継続したい場合(非推奨)、以下の値を使用してください。
operator:
enabled: true
operator:
crds:
create: true
0.105.5から0.108.0
.Values.operator.instrumentation.spec.*にカスタマイズがない場合、移行は不要です。
オペレーターによる自動インストルメンテーションのためのHelmチャート構成が簡素化され、以前は.Values.operator.instrumentation.spec.*の下にあった値が.Values.instrumentation.*に移動されました。
更新されたパスは次のようになります:
instrumentation:
endpoint: XXX
...
非推奨にされたパス:
operator:
instrumentation:
spec:
endpoint: XXX
...
Collector for Kubernetesのアクセストークンを更新します。
Collector for Kubernetesインスタンスのアクセストークンを更新するには、以下の手順に従ってください:
-
Helm のリリース名とチャートのバージョンを確認します。以下を実行してください。
BASHhelm list -f <Release_Name> -
オプションで、現在のアクセストークンを確認することもできます:
BASHhelm get values <Release_Name> -
helm upgrade を使用して新しいアクセストークンをデプロイします。このコマンドではアクセストークンのみが更新され、現在の Helm チャートおよび Collector のバージョンは維持されます。
BASHhelm upgrade --reuse-values --version <Current_Chart_Version> --set splunkObservability.accessToken=<New_Access_Token> <Release_Name> splunk-otel-collector-chart/splunk-otel-collector現在の Helm バージョンではなく、最新の Helm バージョンを使用する場合は、コマンドから
'--version <Current_Chart_Version>'を削除します。 -
更新されたアクセストークンの値を確認する:
BASHhelm get values <Release_Name> -
Collector の DaemonSet およびデプロイを再起動します。
-
agent.enabled=trueの場合、Collector のエージェント DaemonSet を再起動します。BASHkubectl rollout restart DaemonSet <Release_Name>-agent -
clusterReceiver.enabled=trueの場合、Collector のクラスターレシーバデプロイメントを再起動します。BASHkubectl rollout restart deployment <Release_Name>-k8s-cluster-receiver -
gateway.enabled=trueの場合、Collector のゲートウェイデプロイメントを再起動します。BASHkubectl rollout restart deployment <Release_Name>
-
-
クラスターのポッドのステータスを確認します。
BASHkubectl get pod -n <Namespace> | grep <Release_Name>