8.5. 3scale Operator가 사용자 정의 리소스가 연결되는 테넌트를 식별하는 방법
3scale CR(사용자 정의 리소스)을 배포하여 다양한 3scale 오브젝트를 관리할 수 있습니다. 3scale CR은 정확히 하나의 테넌트에 연결됩니다.
3scale CR로 연결되는 테넌트를 식별하려면 다음 중 하나를 수행할 수 있습니다.
3scale CR이 포함된 네임스페이스에
threescale-provider-account보안을 생성합니다. 3scale CR을 배포할 때 Operator는 이 시크릿을 읽고 CR이 연결되는 테넌트를 식별합니다. Operator가 이 시크릿을 사용하려면 다음 중 하나가 true여야 합니다.-
3scale CR은
spec.providerAccountRef필드를 null로 지정합니다. 3scale CR은
spec.providerAccountRef필드를 생략합니다.threescale-provider-account시크릿은 CR이 연결되는 테넌트를 식별합니다. 시크릿에는 토큰 형태로 해당 3scale 인스턴스에서 테넌트에 액세스하기 위한 URL 및 인증 정보 형태로 3scale 인스턴스에 대한 참조가 포함되어야 합니다. 예를 들면 다음과 같습니다.oc create secret generic threescale-provider-account --from-literal=adminURL=https://3scale-admin.example.com --from-literal=token=1234563scale-provider-account시크릿은 HTTP 연결을 사용할 수 있는 한 3scale 인스턴스에서 테넌트를 식별할 수 있습니다. 즉, CR을 연결하는 테넌트가 다른 네임스페이스에 있거나 다른 OpenShift 클러스터에 있을 수 있는 테넌트가 포함된 3scale CR 및 3scale 인스턴스입니다.
-
3scale CR은
3scale CR에서
spec.providerAccountRef를 지정하고 로컬 참조의 이름으로 테넌트를 식별하는 OpenShiftSecret으로 설정합니다. 다음 3scaleDeveloperAccountCR 예제에서mytenant는 시크릿입니다.apiVersion: capabilities.3scale.net/v1beta1 kind: DeveloperAccount metadata: name: developeraccount-simple-sample spec: orgName: Ecorp providerAccountRef: name: mytenant시크릿에서 다음을 수행합니다.
-
adminURL은 네임스페이스에 있을 수 있는 3scale 인스턴스의 URL을 지정합니다. 토큰은 해당 3scale 인스턴스에서 테넌트에 액세스할 수 있는 자격 증명을 지정합니다.예를 들면 다음과 같습니다.
apiVersion: v1 kind: Secret metadata: name: mytenant type: Opaque stringData: adminURL: https://my3scale-admin.example.com:443 token: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
-
3scale Operator가 CR 링크하는 테넌트를 식별할 수 없는 경우 Operator에서 오류 메시지를 생성합니다.