6장. 네임스페이스 범위의 Argo 롤아웃 설치 지원 활성화


Red Hat OpenShift GitOps는 Argo Rollouts 설치의 두 가지 모드를 지원합니다.

  • 클러스터 범위 설치 (기본값): 모든 네임스페이스에 정의된 Argo Rollouts CR(사용자 정의 리소스)은 Argo Rollouts 인스턴스에 의해 조정됩니다. 결과적으로 클러스터의 모든 네임스페이스에서 Argo Rollouts CR을 사용할 수 있습니다.
  • 네임스페이스 범위 설치: Argo Rollouts 인스턴스는 특정 네임스페이스에 설치되고 동일한 네임스페이스 내에서 Argo 롤아웃 CR만 처리합니다. 이 설치 모드에는 다음과 같은 이점이 있습니다.

    • 이 모드에서는 클러스터 전체 ClusterRole 또는 ClusterRoleBinding 권한이 필요하지 않습니다. 클러스터 권한 없이도 단일 네임 스페이스 내에서 Argo Rollouts를 설치하고 사용할 수 있습니다.
    • 이 모드는 단일 Argo 롤아웃 인스턴스의 클러스터 범위를 특정 네임스페이스로 제한하여 보안 이점을 제공합니다.
참고

의도하지 않은 권한 에스컬레이션을 방지하기 위해 Red Hat OpenShift GitOps는 한 번에 하나의 Argo 롤아웃 설치 모드만 허용합니다.

클러스터 범위 및 네임스페이스 범위의 Argo 롤아웃 설치를 전환하려면 다음 단계를 완료하십시오.

6.1. 네임스페이스 범위의 Argo 롤아웃 설치 구성

Argo Rollouts 설치의 네임스페이스 범위 인스턴스를 구성하려면 다음 단계를 완료합니다.

사전 요구 사항

  • Red Hat OpenShift GitOps 클러스터에 관리자로 로그인되어 있습니다.
  • Red Hat OpenShift GitOps를 Red Hat OpenShift GitOps 클러스터에 설치했습니다.

프로세스

  1. 웹 콘솔의 관리자 화면에서 Administration CustomResourceDefinitions 로 이동합니다.
  2. 서브스크립션을 검색하고 Subscription CRD를 클릭합니다.
  3. Instances 탭을 클릭한 다음 openshift-gitops-operator 서브스크립션을 클릭합니다.
  4. YAML 탭을 클릭하고 YAML 파일을 편집합니다.

    1. .spec.config.env 속성에 값이 true 로 설정된 NAMESPACE_SCOPED_ARGO_ROLLOUTS 환경 변수를 지정합니다.

      네임스페이스 범위의 Argo 롤아웃 설치 구성 예

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: openshift-gitops-operator
      spec:
        # (...)
        config:
          env:
            - name: NAMESPACE_SCOPED_ARGO_ROLLOUTS
              value: 'true' 1

      1
      'true' 로 설정된 값은 네임스페이스 범위 설치를 활성화합니다. 값을 'false' 로 설정하거나 지정하지 않으면 설치 기본값은 cluster-scoped mode입니다.
    2. 저장을 클릭합니다.

      Red Hat OpenShift GitOps Operator는 네임스페이스 범위 설치 내에서 Argo Rollouts 사용자 정의 리소스를 쉽게 조정할 수 있습니다.

  5. GitOps 컨테이너의 로그를 확인하여 Red Hat OpenShift GitOps Operator에서 네임스페이스 범위 Argo Rollouts 설치를 활성화했는지 확인합니다.

    1. 웹 콘솔의 관리자 화면에서 워크로드 Pod 로 이동합니다.
    2. openshift-gitops-operator-controller-manager Pod를 클릭한 다음 로그 탭을 클릭합니다.
    3. 다음 로그 문을 찾습니다. namespaced -scoped 모드에서 실행 중입니다. 이 성명은 Red Hat OpenShift GitOps Operator가 네임스페이스 범위 Argo Rollouts 설치를 활성화했음을 나타냅니다.
  6. RolloutManager 리소스를 생성하여 네임스페이스 범위의 Argo Rollouts 설치를 완료합니다.

    1. Operator 설치된 Operator Red Hat OpenShift GitOps 로 이동하여 RolloutManager 탭을 클릭합니다.
    2. RolloutManager 생성 을 클릭합니다.
    3. YAML 보기를 선택하고 다음 스니펫을 입력합니다.

      네임스페이스 범위 Argo 롤아웃 설치에 대한 RolloutManager CR의 예

      apiVersion: argoproj.io/v1alpha1
      kind: RolloutManager
      metadata:
        name: rollout-manager
        namespace: my-application 1
      spec:
        namespaceScoped: true

      1
      네임스페이스 범위 Argo Rollouts 인스턴스를 설치할 프로젝트의 이름을 지정합니다.
    4. 생성을 클릭합니다.

      RolloutManager CR이 생성되면 Red Hat OpenShift GitOps가 네임스페이스 범위 Argo Rollouts 인스턴스를 선택한 네임스페이스에 설치하기 시작합니다.

  7. 네임스페이스 범위의 설치에 성공했는지 확인합니다.

    1. RolloutManager 탭의 RolloutManagers 섹션에서 RolloutManager 인스턴스의 Status 필드가 Phase: Available 인지 확인합니다.
    2. RolloutManagers 섹션의 YAML 탭에서 다음 출력을 검사하여 설치에 성공했는지 확인합니다.

      네임스페이스 범위의 Argo 롤아웃 설치 YAML 파일의 예

      spec:
        namespaceScoped: true
      status:
        conditions:
          lastTransitionTime: '2024-07-10T14:20:5z`
          message: ''
          reason: Success
          status: 'True' 1
          type: 'Reconciled'
        phase: Available
        rolloutController: Available

      1
      이 상태는 네임스페이스 범위의 Argo 롤아웃 설치가 성공적으로 활성화되었음을 나타냅니다.

      클러스터 범위의 설치가 클러스터에 이미 존재하는 동안 네임스페이스별 Argo Rollouts 인스턴스를 설치하려고 하면 오류 메시지가 표시됩니다.

      오류 메시지가 포함된 잘못된 설치의 예

      spec:
        namespaceScoped: true
      status:
        conditions:
         lastTransitionTime: '2024-07-10T14:10:7z`
         message: 'when Subscription has environment variable NAMESPACE_SCOPED_ARGO_ROLLOUTS set to False, there may not exist any namespace-scoped RolloutManagers: only a single cluster-scoped RolloutManager is supported'
         reason: InvalidRolloutManagerScope
         status: 'False' 1
         type: 'Reconciled'
        phase: Failure
        rolloutController: Failure

      1
      이 상태는 네임스페이스 범위의 Argo 롤아웃 설치가 성공적으로 활성화되지 않았음을 나타냅니다. 설치 기본값은 cluster-scoped 모드입니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.