preview
We're still working on this feature, but we'd love for you to try it out!
This feature is currently provided as part of a preview program pursuant to our pre-release policies. Check the Kubernetes integration installation guide for the latest instructions.
Checking the Windows Version
重要
When using containers in Windows, the container host version and the container image version must be the same. Our Kubernetes integration can run on Windows versions LTSC 2019 and LTSC 2022.
To check your Windows version, open a Powershell or command prompt window, and run:
$systeminfo
Look for the lines beginning with OS Name
and OS Version
. These lines provide the OS information and build number. This check is only to confirm that your environment is compatible; you do not need to specify this version information during installation.
- Windows Server LTSC 2019: Corresponds to build number
10.0.17763
. - Windows Server LTSC 2022: Corresponds to build number
10.0.20348
.
Windows DaemonSets
When Windows monitoring is enabled, a Kubernetes DaemonSet is created for each supported Windows version, but pods are created only for Windows node versions that exist in the cluster. This means you may see multiple Windows-specific DaemonSets
, but not all of them will have a "desired"
pod count.
For example, in a cluster with two Linux nodes, one Windows LTSC 2022 node, and no Windows LTSC 2019 nodes, the output would be similar to this:
$kubectl -n newrelic get daemonsets$NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE$<...snip...>$newrelic-bundle-nrk8s-kubelet 2 2 2 2 2 kubernetes.io/os=linux 24h$newrelic-bundle-nrk8s-kubelet-windows-ltsc2019 0 0 0 0 0 kubernetes.io/os=windows,node.kubernetes.io/windows-build=10.0.17763 24h$newrelic-bundle-nrk8s-kubelet-windows-ltsc2022 1 1 1 1 1 kubernetes.io/os=windows,node.kubernetes.io/windows-build=10.0.20348 24h
If you want, you can prevent the chart from creating unnecessary DaemonSets
by including the windowsOsList
key in your custom values.yaml
file while installing via Helm Chart and specifying only the desired version:
windowsOsList: - version: ltsc2022 # Human-readable version identifier imageTagSuffix: ltsc2022 # Tag to be used for nodes running the windows version above buildNumber: 10.0.20348 # Build number for the nodes running the version above. Used as a selector.
Limitations to the Kubernetes integration for Windows
The New Relic agent for Windows sends Kubernetes data samples, such as K8sNodeSample
and K8sPodSample
. The following limitations apply to the Kubernetes integration for Windows:
SystemSample
,StorageSample
,NetworkSample
, andProcessSample
are not generated due to permission limitations for Windows containers in Kubernetes.Using
hostNetwork
in a Kubernetes pod spec is not supported for Windows pods.Some Kubernetes metrics are missing because the Windows kubelet doesn't have them or they are not relevant for Windows:
- Node:
memoryMajorPageFaultsPerSecond
: Always returns0
.memoryPageFaults
: Always returns0
.memoryRssBytes
: Always returns0
.net.errorsPerSecond
: Not sent.net.rxBytesPerSecond
: Not sent.net.txBytesPerSecond
: Not sent.- Not relevant for Windows:
fsInodes
: Not sent.fsInodesFree
: Not sent.fsInodesUsed
: Not sent.runtimeInodes
: Not sent.runtimeInodesFree
: Not sent.runtimeInodesUsed
: Not sent.
- Container:
containerID
: Not sent.containerImageID
: Not sent.memoryMappedFileBytes
: Not sent.memoryUsedBytes
: Not sent. UsememoryWorkingSetBytes
as an alternative.memoryUtilization
: Not sent (relies onmemoryUsedBytes
). You can compute a similar metric usingmemoryWorkingSetBytes
/memoryLimitBytes
.requestedMemoryUtilization
: Not sent (relies onmemoryUsedBytes
). You can compute a similar metric usingmemoryWorkingSetBytes
/memoryRequestedBytes
.- Not relevant for Windows:
cpuCfs*
: AllcpuCfs*
values not sent.
- Volume:
fsUsedBytes
: Always returns0
.fsUsedPercent
: Always returns0
(relies onfsUsedBytes
).
- Node: