• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

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

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

문제 신고

Kubernetes 통합 업그레이드

새 버전의 Kubernetes가 릴리스된 후 클러스터의 제어 평면 노드 및 작업자 노드에서 실행되는 Kubernetes 버전을 업그레이드할 수 있습니다.

Kubernetes 통합 업그레이드

Kubernetes 통합은 활발하게 개발 중이며 정기적으로 버그 수정, 새로운 기능, 최신 Kubernetes 버전 및 클라우드 공급자에 대한 지원을 포함하는 업데이트를 출시합니다. 최상의 경험을 얻으려면 Kubernetes 통합을 정기적으로 업데이트하는 것이 좋습니다.

안내식 설치 및 Helm을 사용하여 업그레이드

안내된 설치 에서 제공하는 Helm 명령을 사용하여 배포된 설치를 업데이트하려면 프로세스를 진행하고 Helm 명령을 다시 실행하세요. 그러면 새 버전의 차트와 해당 종속성을 가져와서 최신 버전으로 업그레이드합니다.

Helm을 통해 설치된 Kubernetes 통합을 수동으로 업그레이드하려는 경우:

  1. 로컬 차트 리포지토리를 업데이트합니다.

    bash
    $
    helm repo update
  2. 위 섹션에서 적절한 helm upgrade --install ... 명령어를 실행하여 릴리스를 업데이트합니다.

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

안내식 설치 및 일반 매니페스트를 사용하여 업그레이드

매니페스트를 직접 사용하는 것보다 더 깔끔한 업그레이드 경로를 제공하기 때문에 Helm을 사용하여 통합을 배포하는 것이 좋습니다.

Helm 대신 사용자 정의 매니페스트를 사용한 경우:

  1. 먼저 이전 설치를 제거합니다.

    bash
    $
    kubectl delete -f previous-manifest-file.yml
  2. 안내된 설치를 다시 진행하세요. 그러면 다음을 사용하여 배포할 수 있는 업데이트된 매니페스트 세트가 생성됩니다.

    bash
    $
    kubectl apply -f manifest-file.yml

이전 파일을 먼저 제거하지 않고 새 버전의 매니페스트 파일을 적용하는 것은 권장하지 않습니다. 클러스터에 남아 있는 일부 구성 요소가 남을 수 있기 때문입니다.

매니페스트를 만드는 고급 방법이 필요한 경우 Helm을 사용하여 템플릿을 만드세요.

nri-bundle 버전 업그레이드

다음은 nri-bundle 업그레이드 시 발생할 수 있는 몇 가지 문제와 해결 방법입니다.

변경된 레이블 선택기

kube-state-metrics (또는 KSM)의 새 버전으로 업그레이드할 때 다음과 같은 오류가 나타날 수 있습니다.

v1.LabelSelector{MatchLabels:map[string]string{"app.kubernetes.io/instance":"newrelic", "app.kubernetes.io/name":"kube-state-metrics"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable

새 버전의 차트에서 레이블 선택기가 변경되었지만 배포 이름은 변경되지 않았습니다. 따라서 업그레이드하려면 helm upgrade 을(를) 실행하기 전에 kube-state-metrics 배포를 제거하거나 통합을 완전히 제거한 다음 다시 설치해야 합니다.

사용되지 않는 값

다음 로그가 나타나는 경우:

warning: skipped value for nri-bundle.kube-state-metrics.collectors: Not a table.
Error: UPGRADE FAILED: template: nri-bundle/charts/kube-state-metrics/templates/role.yaml:18:6: executing "nri-bundle/charts/kube-state-metrics/templates/role.yaml" at <has "certificatesigningrequests" $.Values.collectors>: error calling has: Cannot find has on type map

이는 KSM 차트 값이 변경되고 수집자 맵이 수집자 목록으로 변경되었기 때문입니다. 수집기 목록은 더 이상 필요하지 않으며 새 값에서 제거되었습니다.

정적 Helm 값에 해당 값이 아직 있거나 --reuse-values 플래그를 사용하는 경우 먼저 다음 값을 제거해야 합니다.

kube-state-metrics:
collectors:
certificatesigningrequests: true
ingresses: false

지원되지 않는 Kubernetes 리소스

nri-bundle 을 업그레이드할 때 특정 Kubernetes API에서 지원되지 않는 특정 리소스에 대한 오류가 표시될 수 있습니다. 예를 들어,

Error: UPGRADE FAILED: unable to build kubernetes objects from current release manifest: resource mapping not found for name: "newrelic-bundle-nri-metadata-injection" namespace: "" from "": no matches for kind "MutatingWebhookConfiguration" in version "admissionregistration.k8s.io/v1beta1"

이는 해당 Kubernetes 리소스가 해당 Kubernetes API에서 지원되지 않음을 의미합니다. Helm mapkubeapis 플러그인 저장소 의 지침에 따라 오류를 해결할 수 있습니다.

Copyright © 2024 New Relic Inc.

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