핵심 요약
本記事は Public Preview 中の機能になります。
現時点での最新情報はお届けしますが GA の際には情報が変わる可能性があることをご注意下さい。
詳細は pre-release policy をご確認下さい。
Kubernetes Agent Operator(k8s agent operator) は New Relic のKubernetes Agent(k8s agent) と並行して APM の導入を自動化することによって Kubernetes 環境における可視化を効率的に行えることを期待されて設計されています。開発者は APM Agent を手動で管理する必要が無くなります。
インストール、アップデート、削除の作業もオペレーターが自動的に行ってくれるものになります。
本記事ではその導入方法を紹介していきます。
現在、Java、.NET、Node.js、Python、Rubyをサポートしており、追加の言語(PHPとGo)も追加される予定です。EKSとオンプレミスクラスタでAMDノードを実行していることがテストされています。
事前準備
k8s クラスタの準備と Helm、 cert-manager を利用できるようにしておきましょう。
New Relic の k8s agent の環境要件に関してはドキュメントを参照下さい。
cert-manager のインストール
k8s agent をデプロイする前に cert-manger をデプロイしておきます。
オペレーターのインストール
オペレーターのインストール方法として2種類あります。
New Relic の Kubernetes 統合に加えてのインストール(推奨)
スタンドアローンインストール
今回は推奨の方法で実施をします。
Kubernetes 統合は nri-bundle という helm charts を利用するので helm 経由でインストールをします
また values.yaml を利用する方法も用意されています。
シークレットの作成とCRDのデプロイ
APM Agent を動作させたいネームスペースに対してシークレットを作成します。
次にオペレーターを各ネームスペースで動作させるための CRD をデプロイします。
アプリケーションに対して APM の自動挿入を有効化する
k8s agent operator が APM Agent の自動挿入対象を把握させるために以下のアノテーションを対象の言語に併せて付与させます。
サンプルとしてDeployment の例を載せます。
アプリケーションをデプロイして APM Agent がセットアップされているか確認しましょう。
問題なくセットアップされていることが確認できました。
筆者は Bookinfo というサンプルアプリを利用して分散トレースが繋がるかどうかも確認して問題なく利用できることが確認できました。
다음 단계
これでアプリケーション側に手を加えること無く APM Agent の導入ができるようになりました。
本記事での紹介は以上になりますが上手く導入できなかった場合などはトラブルシュートなどを参照下さい。
また Kubernetes 連携をしたことによってアプリケーションとの連携も利用できるようになりましたので併せてお試し下さい。
이 블로그에 표현된 견해는 저자의 견해이며 반드시 New Relic의 견해를 반영하는 것은 아닙니다. 저자가 제공하는 모든 솔루션은 환경에 따라 다르며 New Relic에서 제공하는 상용 솔루션이나 지원의 일부가 아닙니다. 이 블로그 게시물과 관련된 질문 및 지원이 필요한 경우 Explorers Hub(discuss.newrelic.com)에서만 참여하십시오. 이 블로그에는 타사 사이트의 콘텐츠에 대한 링크가 포함될 수 있습니다. 이러한 링크를 제공함으로써 New Relic은 해당 사이트에서 사용할 수 있는 정보, 보기 또는 제품을 채택, 보증, 승인 또는 보증하지 않습니다.