K8sでOpenTelemetryコレクターをインストール
15 minutesワークショップパート 1 の振り返り
ワークショップのこの時点で、以下を正常に完了しました
- LinuxホストにSplunk distribution of OpenTelemetryコレクターをデプロイ
- Splunk Observability Cloudにトレースとメトリクスを送信するよう設定
- .NETアプリケーションをデプロイし、OpenTelemetryで計装
- .NETアプリケーションをDocker化し、o11y cloudにトレースが流れることを確認
上記のステップを完了していない場合は、ワークショップの残りの部分に進む前に以下のコマンドを実行してください
重要 これらのファイルがコピーされたら、
/home/splunk/workshop/docker-k8s-otel/helloworld/Dockerfileを エディターで開き、Dockerfile の$INSTANCEをあなたのインスタンス名に置き換えてください。 インスタンス名はecho $INSTANCEを実行することで確認できます。
ワークショップパート 2 の紹介
ワークショップの次の部分では、Kubernetesでアプリケーションを実行したいと思います。 そのため、KubernetesクラスターにSplunk distribution of OpenTelemetryコレクターを デプロイする必要があります。
まず、いくつかの重要な用語を定義しましょう。
重要な用語
Kubernetes とは何ですか?
「Kubernetes は、宣言的な設定と自動化の両方を促進する、コンテナ化されたワークロードとサービスを管理するためのポータブルで拡張可能なオープンソースプラットフォームです。」
Source: https://kubernetes.io/docs/concepts/overview/
Dockerfileに小さな修正を加えた後、アプリケーション用に以前ビルドしたDockerイメージを Kubernetesクラスターにデプロイします。
Helm とは何ですか?
HelmはKubernetes用のパッケージマネージャーです。
「最も複雑な Kubernetes アプリケーションだとしても、定義、インストール、アップグレード役立ちます」
Helm を使用したコレクターのインストール
プロダクト内ウィザードではなくコマンドラインを使用して、コレクターをインストールするための独自の
helm コマンドを作成しましょう。
まず、helmリポジトリを追加する必要があります:ます。」
Source: https://helm.sh/
Helmを使用してK8sクラスターにOpenTelemetryコレクターをデプロイします。
Helm の利点
- 複雑性の管理
- 数十のマニフェストファイルではなく、単一のvalues.yamlファイルを扱う
- 簡単な更新
- インプレースアップグレード
- ロールバックサポート
- helm rollbackを使用してリリースの古いバージョンにロールバック
ホストコレクターのアンインストール
先に進む前に、Linuxホストに先ほどインストールしたコレクターを削除しましょう \
Helm を利用して Collector をインストールする
ウィザードの代わりに、コマンドラインを利用してcollectorをインストールします。
まず初めに、Helmリポジトリに登録する必要があります
リポジトリが最新であることを確認します
helmチャートのデプロイメントを設定するために、/home/splunk ディレクトリに values.yaml という名前の新しいファイルを作成しましょう
Press ‘i’ to enter into insert mode in vi before pasting the text below. “i"を押下すると vi はインサートモードになります。ペースト前に押下してください
そして、下記のコードをコピーしてください
vi での変更を保存するには、
escキーを押してコマンドモードに入り、:wq!と入力してからenter/returnキーを押します。
次のコマンドを使用してコレクターをインストールできます
コレクターが実行中であることを確認
以下のコマンドでコレクターが実行されているかどうかを確認できます
O11y Cloud で K8s クラスターを確認
Splunk Observability Cloudで、Infrastructure -> Kubernetes -> Kubernetes Clustersにナビゲートし、
クラスター名($INSTANCE-cluster)を検索します
