• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページを参照してください。

問題を作成する

Windows でのインストレーション

プレビュー

この機能は現在プレビュー段階です。

Windows ベースの Kubernetes システムを使用している場合は、このオプションを使用します。 Windows インテグレーションにはいくつかの制限があることに注意してください。

互換性と要件

Kubernetes 統合をインストールする前に、 互換性と要件を確認してください。

重要

Windowsでコンテナを使用する場合、コンテナホストのバージョンとコンテナイメージのバージョンが同じである必要があります。当社のKubernetesインテグレーションは、WindowsバージョンLTSC 2019(1809)、20H2、LTSC 2022で動作可能です。

Windows のバージョンを確認するには、コマンド ウィンドウを開いて、次のコマンドを実行します。

bash
$
Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v
$
ReleaseIdcmd.exe

WindowsにKubernetesをインストールする

Windows用のKubernetesインテグレーションは、Helmを使ってインストールできます。Windowsの異なるビルドバージョン(1809と2004)を持つノードを持つクラスタに統合をインストールする方法の例を参照してください。

New Relic Helmリポジトリを追加する

これまでに実行していない場合は、次のコマンドを実行して New Relic Helm リポジトリを追加します。

bash
$
helm repo add newrelic https://helm-charts.newrelic.com

NewRelicのネームスペースを作成する

このコマンドを実行して、newrelic のネームスペースを作成します。

bash
$
kubectl create namespace newrelic

インストール kube-state-metrics

kube-state-metricsをインストールするには、このコマンドを実行します:

bash
$
helm repo add ksm https://kubernetes.github.io/kube-state-metrics
$
helm install ksm ksm/kube-state-metrics --version 2.13.2

重要

このコマンドは、インテグレーションの必須の依存関係であるkube-state-metrics Linux ノードにインストールするためのものです。 Linux 以外のノードへのインストールはサポートされていません。Linux 以外のノードにインストールすると、デプロイメントが失敗する可能性があります。 Linux ノードを選択するには、 nodeSelectorを使用することをお勧めします。 これは、 kube-state-metricsデプロイメントを編集することによって実行できます。

values-newrelic.yamlファイルを作成する

次のデータを含むvalues-newrelic.yamlファイルを作成します。 Helm が使用するものは次のとおりです:

global:
licenseKey: _YOUR_NEW_RELIC_LICENSE_KEY_
cluster: _K8S_CLUSTER_NAME_
enableLinux: true # Set to true if your cluster also has linux nodes
enableWindows: true
windowsOsList:
- version: 2019 # Human-readable version identifier
imageTag: 2-windows-1809-alpha # Tag to be used for nodes running the windows version above
buildNumber: 10.0.17763 # Build number for your nodes running the version above. Used as a selector.
- version: 20h2
imageTag: 2-windows-20H2-alpha
buildNumber: 10.0.19042
- version: 2022
imageTag: 2-windows-ltsc2022-alpha
buildNumber: 10.0.20348
nodeSelector:
kubernetes.io/os: linux # Selector for Linux installation.
windowsNodeSelector:
kubernetes.io/os: windows # Selector for Windows installation.

統合をインストールする

インテグレーションをインストールするには、次のコマンドを実行します。

bash
$
helm upgrade --install newrelic newrelic/newrelic-infrastructure \
>
--namespace newrelic --create-namespace \
>
--version 2.7.2 \
>
-f values-newrelic.yaml

ポッドを確認する

ポッドがデプロイされ、安定した状態になっていることを確認します。

bash
$
kubectl -n newrelic get pods -w

Helm チャートは、リストにある Windows のバージョンごとに 1 つのDaemonSetを作成し、 NodeSelectorを使用してノードごとに対応するポッドをデプロイします。

例: BusyBox コンテナーから Kubernetes for Windows を取得する

これは、BusyBox コンテナーから Kubernetes for Windows を取得する方法の例です。

以下のコマンドを実行します。

bash
$
kubectl exec -it busybox1-766bb4d6cc-rmsnj -- Reg Query
$
"HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ReleaseId

このように表示されます。

bash
$
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
$
ReleaseId REG_SZ 1809

リリース ID と OS バージョンの間の有用なマッピングについては、 ここを参照してください。

Windows 向けKubernetesインテグレーションの制限

Windows エージェントは、 K8sNodeSampleK8sPodSampleなどのKubernetes サンプルのみを送信します。 Windows 用のKubernetesインテグレーションには次の制限が適用されます。

  • SystemSampleStorageSampleNetworkSample 、およびProcessSampleは生成されません。

  • Windows kubelet には存在しないため、いくつかのKubernetesメトリクスが欠落しています。

    • ノードです。

      • fsInodes: 送信されません
      • fsInodesFree: 送信されません
      • fsInodesUsed: 送信されません
      • memoryMajorPageFaultsPerSecond: 値として常にゼロを返します
      • memoryPageFaults: 値として常にゼロを返します
      • memoryRssBytes: 値として常にゼロを返します
      • runtimeInodes: 送信されません
      • runtimeInodesFree: 送信されません
      • runtimeInodesUsed: 送信されません
    • Pod:

      • net.errorsPerSecond: 送信されません
      • net.rxBytesPerSecond: 送信されません
      • net.txBytesPerSecond: 送信されません
    • コンテナです。

      • containerID: 送信されません
      • containerImageID: 送信されません
      • memoryUsedBytes: UIでは、ポッドをクリックしたときに表示されるポッド カードにデータが表示されません。 代わりにmemoryWorkingSetBytesを使用するようにチャートを更新することで、この問題をすぐに修正する予定です。
    • 巻です。

      • fsUsedBytes: ゼロなので、 fsUsedPercentはゼロです

Windows Kubeletの既知の問題

Windows版のKubeletにはいくつかの問題があり、統合機能がデータを取得できないことがあります。

  • 問題 90554:この問題により、インテグレーションが/stats/summaryトークンにリクエストを送信したときに、Kubelet が 500 エラーを返します。 これはKubernetes 1.19リリースに含まれ、リリース1.16.11にバックポートされています。 1.17.7、および 1.18.4。 この問題に対するインテグレーション側での解決策はありませんので、できるだけ早くパッチ バージョンのいずれかに更新することをお勧めします。 詳細ログを有効にして、次のタイプのメッセージを探すことで、この問題の影響を受けているかどうかを確認できます。

    bash
    $
    error querying Kubelet. Get "https://<KUBELET_IP>/stats/summary": error calling kubelet endpoint. Got status code: 500
  • 問題 87730:この問題により、最小負荷で実行しているときに Kubelet メトリックが非常に遅くなります。 タイムアウト エラーが発生して統合が失敗します。 この問題に対するパッチはKubernetes 1.18に追加され、1.15.12にバックポートされました。 1.16.9、および 1.17.5。 できるだけ早くいずれかのパッチ バージョンに更新することをお勧めします。 この問題を軽減するには、 TIMEOUT構成オプションを使用してインテグレーション タイムアウトを増やすことができます。 詳細ログを有効にして、次のタイプのメッセージを探すことで、この問題の影響を受けているかどうかを確認できます。

    bash
    $
    error querying Kubelet. Get "https://<KUBELET_IP>/stats/summary": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.