This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.5.4.3.3.2. 클러스터에서 Ansible 기반 Operator 테스트
Ansible 기반 Operator 내부에서 로컬로 Ansible 논리를 실행하는 방법을 익히면 OpenShift Container Platform과 같은 Kubernetes 클러스터의 Pod 내부에서 Operator를 테스트할 수 있습니다. 프로덕션 환경에서는 클러스터에서 포드로 실행하는 것이 좋습니다.
절차
test1-operator
이미지를 빌드하여 레지스트리로 내보냅니다.operator-sdk build quay.io/example/test1-operator:v0.0.1
$ operator-sdk build quay.io/example/test1-operator:v0.0.1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push quay.io/example/test1-operator:v0.0.1
$ podman push quay.io/example/test1-operator:v0.0.1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 배포 매니페스트는
deploy/operator.yaml
파일에 생성됩니다. 이 파일의 배포 이미지는 플레이스 홀더REPLACE_IMAGE
에서 이전에 빌드된 이미지로 수정해야 합니다. 이를 수행하려면 다음 명령을 실행합니다.sed -i 's|REPLACE_IMAGE|quay.io/example/test1-operator:v0.0.1|g' deploy/operator.yaml
$ sed -i 's|REPLACE_IMAGE|quay.io/example/test1-operator:v0.0.1|g' deploy/operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow macOS에서 이러한 단계를 수행하는 경우 대신 다음 명령을 사용합니다.
sed -i "" 's|REPLACE_IMAGE|quay.io/example/test1-operator:v0.0.1|g' deploy/operator.yaml
$ sed -i "" 's|REPLACE_IMAGE|quay.io/example/test1-operator:v0.0.1|g' deploy/operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow test1-operator
를 배포합니다.oc create -f deploy/crds/test1_v1alpha1_test1_crd.yaml
$ oc create -f deploy/crds/test1_v1alpha1_test1_crd.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- CRD가 아직 없는 경우에만 필요합니다.
oc create -f deploy/service_account.yaml
$ oc create -f deploy/service_account.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f deploy/role.yaml
$ oc create -f deploy/role.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f deploy/role_binding.yaml
$ oc create -f deploy/role_binding.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f deploy/operator.yaml
$ oc create -f deploy/operator.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow test1-operator
가 실행 중인지 확인합니다.oc get deployment
$ oc get deployment
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE test1-operator 1 1 1 1 1m
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE test1-operator 1 1 1 1 1m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제
test1-operator
에 대한 Ansible 로그를 볼 수 있습니다.oc logs deployment/test1-operator
$ oc logs deployment/test1-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow