• 로그인지금 시작하기

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

Windows에 Kubernetes 통합 설치

한정 출시

이 기능은 제한된 릴리스입니다.

현재 버전 3에서는 Windows 노드가 지원되지 않으므로 버전 2 Kubernetes 통합만 설치할 수 있습니다.

호환성 및 요구 사항

New Relic의 Kubernetes 통합 을 설치하기 전에 호환성 및 요구 사항 을 검토하십시오.

중요

Windows에서 컨테이너를 사용하는 경우 컨테이너 호스트 버전과 컨테이너 이미지 버전이 동일해야 합니다. Kubernetes 통합은 Windows 버전 LTSC 2019(1809), 20H2 및 LTSC 2022에서 실행할 수 있습니다.

Windows 버전을 확인하려면:

  1. 명령 창을 엽니다.

  2. 다음 명령을 실행합니다.

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

예: BusyBox 컨테이너에서 Windows용 Kubernetes를 가져옵니다.

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 버전 간의 유용한 매핑은 여기 에서 찾을 수 있습니다.

설치

Helm을 사용하여 Windows용 Kubernetes 통합을 설치할 수 있습니다. 다른 빌드 버전의 Windows(1809 및 2004)가 있는 노드가 있는 클러스터에 통합을 설치하는 방법에 대한 예를 참조하십시오.

  1. New Relic Helm 차트 리포지토리 추가:
bash
$
helm repo add newrelic https://helm-charts.newrelic.com
  1. newrelic에 대한 네임스페이스 생성:
bash
$
kubectl create namespace newrelic
  1. 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 노드가 없으면 위의 명령이 작동하지 않을 수 있습니다. New Relic은 Linux가 아닌 노드에 kube-state-metrics를 설치하는 방법에 대한 지원을 제공할 수 없습니다.

  1. Helm에서 사용할 다음 데이터로 values.yml 파일을 만듭니다.
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
  1. 다음과 통합 설치:
bash
$
helm upgrade --install newrelic newrelic/newrelic-infrastructure \
>
--namespace newrelic --create-namespace \
>
--version 3.2.11 \
>
-f values-newrelic.yaml
  1. Pod가 배포되고 안정적인 상태에 도달하는지 확인합니다.
bash
$
kubectl -n newrelic get pods -w

Helm 차트는 목록에 있는 Windows의 각 버전당 하나의 DeamonSet을 만들고 NodeSelector를 사용하여 노드당 해당 Pod를 배포합니다.

While you wait for your data to come in...

Did this doc help you install?

제한 사항

Windows용 Kubernetes 통합에는 다음 제한 사항이 적용됩니다.

  • Windows 에이전트는 Kubernetes 샘플 ( K8sNodeSample , K8sPodSample 등)만 보냅니다.

    • SystemSample, StorageSample , NetworkSampleProcessSample 는 생성되지 않습니다.
  • Windows kubelet에 없기 때문에 일부Kubernetes 메트릭 이 누락되었습니다.

    • 마디:

      • fsInodes: 전송되지 않음
      • fsInodesFree: 전송되지 않음
      • fsInodesUsed: 전송되지 않음
      • memoryMajorPageFaultsPerSecond: 항상 0을 값으로 반환
      • memoryPageFaults: 항상 0을 값으로 반환
      • memoryRssBytes: 항상 0을 값으로 반환
      • runtimeInodes: 전송되지 않음
      • runtimeInodesFree: 전송되지 않음
      • runtimeInodesUsed: 전송되지 않음
    • 현물 상환 지불:

      • net.errorsPerSecond: 전송되지 않음
      • net.rxBytesPerSecond: 전송되지 않음
      • net.txBytesPerSecond: 전송되지 않음
    • 컨테이너:

      • containerID: 전송되지 않음
      • containerImageID: 전송되지 않음
      • memoryUsedBytes: UI에서 포드를 클릭하면 나타나는 포드 카드에 표시되며 데이터가 표시되지 않습니다. 대신 memoryWorkingSetBytes 을 사용하도록 차트를 업데이트하여 곧 이 문제를 해결할 것입니다.
    • 용량:

      • fsUsedBytes: 0이므로 fsUsedPercent 은 0입니다.

Windows Kubelet의 알려진 문제

통합에서 데이터를 가져오는 것을 방지할 수 있는 몇 가지 문제가 Kubelet의 Windows 버전에 있습니다.

  • 문제 90554: 이 문제로 인해 통합이 /stats/summary 엔드포인트에 요청할 때 Kubelet이 500 오류를 반환합니다. Kubernetes 1.19 릴리스에 포함될 예정이며 릴리스 1.16.11, 1.17.7 및 1.18.4로 백포트되었습니다. 이 문제에 대한 통합 측의 솔루션은 없습니다. 가능한 한 빨리 패치 버전 중 하나로 업데이트하는 것이 좋습니다. 자세한 로그를 활성화 하고 다음 유형의 메시지를 찾아 이 문제의 영향을 받고 있는지 확인할 수 있습니다.
bash
$
error querying Kubelet. Get "https://<var><KUBELET_IP></var>/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://<var><KUBELET_IP></var>/stats/summary": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Copyright © 2022 New Relic Inc.

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