12.4. ACK S3 컨트롤러 설치
ACK S3 Operator를 설치할 프로젝트를 생성합니다.
$ oc new-project ack-system
ACK S3 Operator 구성으로 파일을 생성합니다.
참고컨트롤러에서 클러스터의 모든 네임스페이스를 올바르게 조사할 수 있도록
ACK_WATCH_NAMESPACE
는 의도적으로 비워 둡니다.$ cat <<EOF > "${SCRATCH}/config.txt" ACK_ENABLE_DEVELOPMENT_LOGGING=true ACK_LOG_LEVEL=debug ACK_WATCH_NAMESPACE= AWS_REGION=${REGION} AWS_ENDPOINT_URL= ACK_RESOURCE_TAGS=${CLUSTER_NAME} ENABLE_LEADER_ELECTION=true LEADER_ELECTION_NAMESPACE= EOF
이전 단계의 파일을 사용하여 ConfigMap을 생성합니다.
$ oc -n ack-system create configmap \ --from-env-file=${SCRATCH}/config.txt ack-${ACK_SERVICE}-user-config
OperatorHub에서 ACK S3 Operator를 설치합니다.
$ cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: ack-${ACK_SERVICE}-controller namespace: ack-system spec: upgradeStrategy: Default --- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: ack-${ACK_SERVICE}-controller namespace: ack-system spec: channel: alpha installPlanApproval: Automatic name: ack-${ACK_SERVICE}-controller source: community-operators sourceNamespace: openshift-marketplace EOF
배포를 가정하고 다시 시작하려면 AWS IAM 역할로 ACK S3 Operator 서비스 계정에 주석을 답니다.
$ oc -n ack-system annotate serviceaccount ${ACK_SERVICE_ACCOUNT} \ eks.amazonaws.com/role-arn=${ROLE_ARN} && \ oc -n ack-system rollout restart deployment ack-${ACK_SERVICE}-controller
ACK S3 Operator가 실행 중인지 확인합니다.
$ oc -n ack-system get pods
출력 예
NAME READY STATUS RESTARTS AGE ack-s3-controller-585f6775db-s4lfz 1/1 Running 0 51s