Istio とNew Relic Kubernetesインテグレーションの両方が環境にインストールされ有効になっている場合、問題が発生する可能性があります。 このページでは、 New Relic Kubernetesインテグレーションがインストールされている場合の Istio に関するこれらの問題について説明します。
Istio クラスターの xds_grpc メトリック
問題
クラスターで Istio が有効になっている場合、Istio にデプロイされた Envoy プロキシには、Prometheus メトリクスを公開する Prometheus メトリクス エンドポイントがあります。
これらの指標は、専用の cluster_name
に xds-grpc
として関連付けられています。New Relic Kubernetes 統合で Prometheus エージェントも有効にすると、エージェントは global.cluster
で定義された cluster_name
のメトリックに加えて、 cluster_name
を xds_grpc
としてこれらの Envoy 関連のメトリックを収集します。
解決
次のクエリを実行して、Envoy プロキシ メトリックの完全なリストを取得します。
FROM `Metric`SELECT uniques(metricName)WHERE cluster_name = 'xds-grpc' SINCE 1 week ago
メタデータ挿入ポッドの Istio を無効にする
問題
Istio が newrelic
名前空間でアクティブ化されると、その名前空間内にある New Relic Kubernetes 統合ポッドで複雑な問題が発生する可能性があります。これらの問題は、ポッドがまったく作成されなくなるほど深刻になる可能性があります。
このような問題の例は、Kubernetes 統合のインストール中に発生する可能性があります。このエラー メッセージが表示された場合:
$W0518 02:00:14.984463 1 client_config.go:615] Neither --kubeconfig nor --master was specified. Using the inClusterConfig. This might not work.${"err":"secrets \"newrelic-bundle-nri-metadata-injection-admission\" not found","level":"info","msg":"no secret found","source":"k8s/k8s.go:229","time":"2023-05-18T02:00:15Z"} {"level":"info","msg":"creating new secret","source":"cmd/create.go:28","time":"2023-05-18T02:00:15Z"} ...
これは、Istio が newrelic
名前空間でアクティブである可能性があることを示しています。この場合、 newrelic-bundle-nri-metadata-injection-admission-create
ジョブがシークレットを正常に作成した後でも、Envoy プロキシは終了しません。その結果、Kubernetes ジョブは進行中に停止し、完了できなくなります。
解決
newrelic ネームスペース内のnri-metadata-injection
Pod の Istio サイドカー インジェクションを無効にすることをお勧めします。 これを実現するには、 nri-bundle
インストールするときに、 helm
コマンドに--set-string nri-metadata-injection.labels."sidecar\.istio\.io/inject"=false
含めます。