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

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

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

問題を作成する

Windows ノードをモニターする

New Relic Kubernetesインテグレーションは、同じクラスタ内のLinuxノードとともにWindowsノードの監視をネイティブにサポートしているため、別のHelmチャートやインストレーションは必要ありません。

Windowsノード監視を有効にして設定する方法を説明します。特権的および非特権的実行モデルとセキュリティに関する考慮事項の詳細については、特権的モードと非特権的モードを参照してください。Windows固有のメトリクスの制限事項については、Windowsの制限事項とトラブルシューティングを参照してください。

前提条件

Windows監視を有効にする前に、クラスタが以下の要件を満たしていることを確認してください。

  • Windowsノードの互換性および要件
  • Windows Server LTSC 2019(ビルド10.0.17763)またはLTSC 2022(ビルド10.0.20348)。
  • コンテナイメージのバージョンは、WindowsホストOSのバージョンと完全に一致する必要があります。Windows はプロセス分離のみをサポートしており、Hyper-V 分離はサポートしていません。
  • Red Hat OpenShiftクラスタで動作するWindowsノードはサポートされていません。

重要

Windowsコンテナは、Windowsバージョンとビルド番号がまったく同じホストでのみ実行できます。インテグレーションは、サポートされているWindowsバージョンごとに1つのDaemonSetを作成し、一致するOSビルドを持つノードにのみポッドをスケジュールします。

お使いのWindowsノードのバージョンを確認する

ノードで実行されているWindowsのバージョンが不明な場合は、ノードのラベルを直接クエリしてください:

bash
$
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.node\.kubernetes\.io/windows-build}{"\n"}{end}'

これにより、インテグレーションのDaemonSet nodeSelectorが照合する、各ノードのnode.kubernetes.io/windows-buildラベルの値が出力されます。ノード自体でsysteminfoを実行し、ビルド番号を照合することもできます:

Windowsバージョンビルド番号
Windows Server LTSC 201910.0.17763
Windows Server LTSC 202210.0.20348

Windowsの監視を有効にする

Windows監視を有効にするには、values.yamlenableWindows: trueを設定します。nri-bundleを介してデプロイする場合、これをnewrelic-infrastructureキーの下に渡します:

newrelic-infrastructure:
enableWindows: true

helm upgradeを使用して変更を適用します:

bash
$
helm upgrade newrelic-bundle newrelic/nri-bundle \
>
--namespace newrelic \
>
--reuse-values \
>
--set newrelic-infrastructure.enableWindows=true

デフォルトでは、Windowsを有効にすると、LTSC 2019とLTSC 2022の両方のDaemonSetが作成されます。これを制限するには、特定のWindowsバージョンの構成を参照してください。

特定のWindowsバージョン用に設定する

windowsOsListキーは、どのWindowsバージョンがDaemonSetを取得するかを制御します。デフォルトでは、両方のサポート対象バージョンが含まれています。クラスタに実際に存在するWindowsバージョンのみに監視を制限するには、values.yamlでオーバーライドします:

newrelic-infrastructure:
enableWindows: true
windowsOsList:
- version: ltsc2022
imageTagSuffix: ltsc2022
buildNumber: 10.0.20348

各エントリは個別のDaemonSetを生成します。ポッドは、node.kubernetes.io/windows-buildラベルがbuildNumberフィールドと一致するノードにのみスケジュールされます。これにより、空のDaemonSetがクラスタに表示されるのを防ぎます。

LinuxとWindowsの混在クラスタ

v3では、WindowsおよびLinuxノードは同じnewrelic-infrastructureチャートを使用してモニターされます — v2のように個別のチャートのインストレーションは必要ありません。チャートは以下を自動作成します:

  • 〜を備えたLinux DaemonSet nodeSelector: kubernetes.io/os: linux
  • windowsOsList のエントリごとに1つの Windows DaemonSet、それぞれに nodeSelector: kubernetes.io/os: windows および一致するビルド番号セレクタ

ハイブリッドクラスタ用の最小限のvalues.yaml

global:
licenseKey: YOUR_NEW_RELIC_LICENSE_KEY
cluster: YOUR_CLUSTER_NAME
newrelic-infrastructure:
enableWindows: true
windowsOsList:
- version: ltsc2022
imageTagSuffix: ltsc2022
buildNumber: 10.0.20348

次を使用してインストールまたはアップグレードします:

bash
$
helm upgrade --install newrelic-bundle newrelic/nri-bundle \
>
--namespace newrelic --create-namespace \
>
-f values.yaml

特権モード

Windowsの監視はデフォルトで特権モードになり、Windows HostProcessコンテナを使用して、CPU、メモリ、ディスク、ネットワークなど、完全なノードレベルのメトリクスを収集します。WindowsノードからSystemSampleStorageSample、およびNetworkSampleデータを受信するために必要です。

重要

GKEがサポートしていないため、GKE上のWindowsノードでは特権モードを利用できません。windows.privileged: falseを非特権モードで実行するように設定します。

代わりに非特権モードで実行するには:

newrelic-infrastructure:
enableWindows: true
windows:
privileged: false

非特権モードはホストレベルのメトリクスを無効にしますが、クラスタのセキュリティポリシーによって必要になる場合があります。影響を受けるデータの詳細については、特権モードと非特権モードの比較を参照してください。

インストレーションを確認する

インストールまたはアップグレード後、DaemonSetが作成されたことを確認します:

bash
$
kubectl -n newrelic get daemonsets

Linux DaemonSetと並んで、設定したWindowsの各バージョンに対するDaemonSetが表示されるはずです:

bash
$
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR
$
newrelic-bundle-nrk8s-kubelet 2 2 2 2 2 kubernetes.io/os=linux
$
newrelic-bundle-nrk8s-kubelet-windows-ltsc2019 0 0 0 0 0 kubernetes.io/os=windows,node.kubernetes.io/windows-build=10.0.17763
$
newrelic-bundle-nrk8s-kubelet-windows-ltsc2022 1 1 1 1 1 kubernetes.io/os=windows,node.kubernetes.io/windows-build=10.0.20348

WindowsバージョンにおけるDESIREDの数が0であることは、そのビルド番号を持つノードがクラスタ内に存在しないことを意味します — これは想定される動作であり、エラーではありません。

Windowsポッドがノードで実行されていることを確認するには:

bash
$
kubectl -n newrelic get pods -o wide | grep windows

追加設定

ノードセレクターを追加

デフォルトでは、Windows DaemonSetはkubernetes.io/os: windowsを使用してノードを選択します。Windowsノードの特定のサブセットに監視を制限するために、追加のセレクタを追加できます:

kubelet:
windowsNodeSelector:
kubernetes.io/os: windows
node.kubernetes.io/windows-build: "10.0.20348"
newrelic.com/monitoring-allowed: "true" # custom label you control

プライベートコンテナレジストリを使用する

デフォルトではなくプライベートレジストリからWindowsイメージをプルするには:

images:
windowsIntegration:
registry: your-registry.example.com
pullPolicy: Always
windowsAgent:
registry: your-registry.example.com
pullPolicy: Always
pullSecrets:
- name: registry-credentials

リソース制限を設定する

HostProcessコンテナは、Windowsノード上で直接リソースをめぐって競合します。チャートはデフォルトのメモリ上限を設定します。調整するか、CPU制限を設定できます。詳細については、リソース要件を参照してください。

kubelet:
resources:
requests:
cpu: 50m
memory: 150Mi
limits:
memory: 300Mi

デフォルトではCPU制限は設定されていません。ノードの負荷時に厳格なCPU上限を設けると、スクレイプ間隔を逃すリスクがあるためです。クラスタポリシーで必要な場合は、設定する前にそのトレードオフを比較検討してください。

次のステップ

特権モードと非特権モード

HostProcessコンテナとは何か、どのようなホストアクセス権限を付与するのか、およびWindows特権モードのセキュリティのベストプラクティスをご覧ください。

Windowsのトラブルシューティング

一般的なWindowsノードの問題を解決し、Windowsメトリクスの制限を理解し、非特権モードでどのメトリクスが利用できるかを確認します。

Kubernetesデータのモニター

LinuxワークロードとともにWindowsノードのメトリクスをクエリして詳しく調べる方法をご覧ください。

Copyright © 2026 New Relic株式会社。

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