2.3. CLI를 사용하여 Red Hat OpenShift GitOps Operator 설치
CLI를 사용하여 OperatorHub에서 Red Hat OpenShift GitOps Operator를 설치할 수 있습니다.
GitOps 버전 1.10 이상의 경우 기본 네임스페이스가 openshift-operators 에서 openshift-gitops Operator 로 변경되었습니다.
사전 요구 사항
-
cluster-admin권한으로 OpenShift Container Platform 클러스터에 액세스하기 위한 로그인 인증 정보가 있어야 합니다. -
ocCLI 를 설치했습니다.
절차
openshift-gitops-operator네임스페이스를 생성합니다.$ oc create ns openshift-gitops-operator출력 예:
namespace/openshift-gitops-operator created참고openshift.io/cluster-monitoring=true라벨을 적용하여openshift-gitops-operator또는 네임스페이스에서 클러스터 모니터링을 활성화할 수 있습니다.$ oc label namespace <namespace> openshift.io/cluster-monitoring=true출력 예:
namespace/<namespace> labeledOperatorGroup오브젝트 YAML 파일을 생성합니다(예:gitops-operator-group.yaml):예제 OperatorGroup:
apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: openshift-gitops-operator namespace: openshift-gitops-operator spec: upgradeStrategy: Default클러스터에
OperatorGroup을 적용합니다.$ oc apply -f gitops-operator-group.yaml출력 예:
operatorgroup.operators.coreos.com/openshift-gitops-operator created서브스크립션오브젝트 YAML 파일을 생성하여 Red Hat OpenShift GitOps Operator에 네임스페이스를 서브스크립션합니다(예:openshift-gitops-sub.yaml).서브스크립션 예:
apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: openshift-gitops-operator namespace: openshift-gitops-operator spec: channel: latest installPlanApproval: Automatic name: openshift-gitops-operator source: redhat-operators sourceNamespace: openshift-marketplace다음과 같습니다.
metadata.name- Operator를 서브스크립션할 채널 이름을 지정합니다.
metadata.namespace- 구독할 Operator의 이름을 지정합니다.
spec.channel- Operator를 제공하는 CatalogSource의 이름을 지정합니다.
spec.source(openshift-marketplace 네임스페이스)-
CatalogSource의 네임스페이스를 지정합니다. 기본 OperatorHub CatalogSources에는
openshift-marketplace를 사용합니다.
클러스터에
서브스크립션을 적용합니다.$ oc apply -f openshift-gitops-sub.yaml출력 예:
subscription.operators.coreos.com/openshift-gitops-operator created설치가 완료되면
openshift-gitops네임스페이스의 모든 Pod가 실행 중인지 확인합니다.$ oc get pods -n openshift-gitops출력 예:
NAME READY STATUS RESTARTS AGE cluster-785cfc5f75-669wq 1/1 Running 0 76s gitops-plugin-6664c749dd-dx64s 1/1 Running 0 76s openshift-gitops-application-controller-0 1/1 Running 0 74s openshift-gitops-applicationset-controller-549d7f6686-wzckt 1/1 Running 0 74s openshift-gitops-dex-server-5d4ffdb9b9-lb7b7 1/1 Running 0 74s openshift-gitops-redis-6d65c94d4b-k9l8k 1/1 Running 0 75s openshift-gitops-repo-server-79db854c58-279jr 1/1 Running 0 75s openshift-gitops-server-f488b848-xntbc 1/1 Running 0 75sopenshift-gitops-operator네임스페이스의 Pod가 실행 중인지 확인합니다.$ oc get pods -n openshift-gitops-operator출력 예:
NAME READY STATUS RESTARTS AGE openshift-gitops-operator-controller-manager-6fdc5cd9dc-jr9mn 2/2 Running 0 41s