Helm 차트를 사용하여 로깅 에이전트 버전 업그레이드하기

Helm 차트를 사용하여 로깅 에이전트 버전을 업그레이드할 수 있습니다.

클러스터에 배포된 에이전트 버전을 업그레이드하려면 다음 단계를 완료하세요:

이전 버전의 로깅 에이전트 을 설치하고 클러스터에서 직접 구성 맵을 수정하여 상담원 구성을 업데이트한 경우에는 helm upgrade 명령을 실행하기 전에 클러스터에서 구성 맵의 복사본을 만드세요. 로깅 에이전트 이 업데이트되면 구성 맵의 모든 변경 사항을 덮어씁니다.

시작하기 전에

  • 네임스페이스를 생성하고 에이전트를 배포할 수 있는 권한으로 Kubernetes 클러스터에 액세스할 수 있는지 확인하세요.

  • 로깅 에이전트에 대한 현재 구성 맵의 복사본을 가져옵니다. 다음을 실행하십시오. kubectl get cm logs-agent -n ibm-observe -o yaml > logging-agent-backup-cm.yaml

  • 다음 CLI를 설치하십시오.

    • IBM Cloud CLI를 사용하여 IBM Cloud 로그인하고 API 키를 생성하는 등 IBM Cloud 서비스를 관리할 수 있습니다.

    • Kubernetes CLI는 kubectl 명령을 사용하여 Kubernetes 클러스터를 관리합니다. 자세히 보기

    • 명령줄에서 OpenShift 클러스터를 관리할 수 있는 Openshift CLI입니다. 자세히 알아보십시오.

  • 로깅 에이전트 대해 읽어보세요.

  • 사용 가능한 상담원 버전을 확인하세요. 자세한 내용은 사용 가능한 상담원 버전 확인하기를 참조하세요. Helm 차트의 버전은 에이전트의 버전과 일치합니다. 예를 들어, 에이전트 버전 1.3.0 사용하는 경우 해당 버전과 함께 제공되는 버전 1.3.0 Helm 차트가 있습니다.

1단계. 로깅 에이전트 대한 Helm 차트 값 파일을 업데이트하세요

배포하려는 에이전트 버전으로 Helm 차트를 수정하려면 다음 단계를 완료하세요:

  1. 에이전트를 배포하는 데 사용한 logs-values.yaml 파일을 다음 콘텐츠로 업데이트합니다:

    logs-values.yaml 파일에는 배포에 특정한 구성이 포함되어 있습니다.

    에이전트를 배포할 때 사용한 logs-values.yaml 파일이 없는 경우에는 에이전트의 현재 컨피그맵 구성을 기반으로 파일을 만드세요.

    metadata:
      name: "logs-agent"
    image:
      version: "1.6.1"  # Modify the agent version and enter the version that you want to deploy
    
    clusterName: "ENTER_CLUSTER_NAME"     # Enter the name of your cluster. This information is used to improve the metadata and help with your filtering.
    
    additionalMetadata: # add additional metadata, for example:
      region: au-syd
      env: production
      logs-agent-version: 1.6.1     # Enter the agent version that you want to deploy
    
    env:
      # ingestionHost is a required field. For example:
      # ingestionHost: "<logs instance>.ingress.us-east.logs.cloud.ibm.com"
      ingestionHost: "" # required
    
      # If you are using private CSE proxy, then use port number "3443"
      # If you are using private VPE Gateway, then use port number "443"
      # If you are using the public endpoint, then use port number "443"
      ingestionPort: "" # required
    
      iamMode: "TrustedProfile"
      # trustedProfileID - trusted profile id - required for iam trusted profile mode
      trustedProfileID: "" # required if iamMode is set to TrustedProfile
    
    

2단계. 상담원 업데이트

' iamMode '을 ' IAMAPIKey '로 사용하는 경우, 아피키는 키 이름 ' IAM_API_KEY'를 가진 ' logs-agent '이라는 이름의 Kubernetes 시크릿에 존재해야 한다. 헬름 설치를 실행할 때 ' --set secret.iamAPIKey=<your iamAPIKey> ' 옵션을 포함하여 Helm 차트를 사용하여 비밀을 생성할 수 있습니다. 비밀번호를 수동으로 만들었거나 ' iamMode=TrustedProfile '을 사용하는 경우에는 이 옵션을 포함하지 마세요.

다음 단계를 완료하십시오.

  1. 클러스터에 로그인하십시오. 자세한 내용은 클러스터에 액세스하기를 참조하세요.

  2. 상담원을 업데이트합니다.

    이전 버전의 로깅 에이전트 을 설치하고 클러스터에서 직접 구성 맵을 수정하여 상담원 구성을 업데이트한 경우에는 helm upgrade 명령을 실행하기 전에 클러스터에서 구성 맵의 복사본을 만드세요. 로깅 에이전트 이 업데이트되면 구성 맵의 모든 변경 사항을 덮어씁니다.

    ' iamMode=TrustedProfile '를 사용하는 경우 전체 명령은 다음과 같습니다:

    helm upgrade <install-name> oci://icr.io/ibm-observe/logs-agent-helm --version <chart-version> --values <PATH>/logs-values.yaml -n ibm-observe
    

    ' iamMode=IAMAPIKey '를 사용하는 경우 전체 명령은 다음과 같습니다:

    helm upgrade <install-name> oci://icr.io/ibm-observe/logs-agent-helm --version <chart-version> --values <PATH>/logs-values.yaml -n ibm-observe --set secret.iamAPIKey=<APIKey-value>
    

    여기서,

    • <install-name> 은 Helm 설치의 이름입니다(logs-agent). 다음 명령을 실행하여 설치 이름을 확인할 수 있습니다: helm list -n ibm-observe
    • <chart-version> '은 헬름 차트의 버전입니다. Helm 차트 버전은 에이전트 이미지 버전과 일치해야 합니다. 자세한 내용은 Helm 차트 버전을 참조하세요.
    • <PATH> '은 ' logs-values.yaml 파일이 있는 디렉토리 경로입니다.
    • <APIKey-value> ServiceID 와 관련된 IAM API 키입니다.

    예를 들어 ' logs-values.yaml ' 파일이 있는 디렉토리에서 다음 명령을 실행할 수 있습니다:

    helm upgrade logs-agent oci://icr.io/ibm-observe/logs-agent-helm --version 1.5.0 --values ./logs-values.yaml -n ibm-observe --set secret.iamAPIKey=<secret>
    

    설치된 에이전트 이름과 차트 버전을 확인하려면 helm list -n NAMESPACE 를 실행하십시오.

  3. 상담원 포드를 다시 시작합니다.

    Kubernetes 클러스터의 경우 실행합니다:

    kubectl -n ibm-observe rollout restart ds/logs-agent
    

    OpenShift 클러스터의 경우 실행합니다:

    oc -n ibm-observe rollout restart ds/logs-agent
    
  4. 모든 파드가 다시 시작되었고 running 상태이며 오류를 보고하지 않는지 확인합니다.

    Kubernetes 클러스터의 경우 실행합니다:

    kubectl get pods -n ibm-observe
    

    OpenShift 클러스터의 경우 실행합니다:

    oc get pods -n ibm-observe
    

3단계. 로그가 대상 대상에 전달되고 있는지 확인하기

다음 단계를 완료하십시오.

  1. IBM Cloud Logs 인스턴스의 웹 UI로 이동합니다.

  2. 상담원이 올바르게 구성되면 기본 대시보드 보기를 통해 로그를 볼 수 있습니다. 로깅 에이전트 클러스터 이름을 포함하는 kubernetes 객체로 로그 레코드에 태그를 지정합니다.

    kubernetes.cluster_name:<CLUSTER_NAME>
    

    ' IBM Cloud Logs ' 인스턴스에서 ' kubernetes.cluster_name:<YOUR_CLUSTER_NAME> ' 쿼리를 실행하여 클러스터에서 생성된 로그를 검색할 수 있습니다.