11.4. 영역 사용자 정의 리소스 생성
Operator를 사용하여 사용자 정의 리소스에서 정의한 대로 Red Hat Single Sign-On에서 영역을 생성할 수 있습니다. YAML 파일에서 realm 사용자 정의 리소스의 속성을 정의합니다.
YAML 파일을 생성하거나 삭제하여 영역만 만들거나 삭제할 수 있으며, 변경 사항은 Red Hat Single Sign-On 관리 콘솔에 표시됩니다. 그러나 관리 콘솔에 대한 변경 사항은 반영되지 않으며 영역이 생성된 후 CR의 업데이트가 지원되지 않습니다.
CloudEvent 사용자 정의 리소스의 YAML
파일의 예
apiVersion: keycloak.org/v1alpha1 kind: KeycloakRealm metadata: name: test labels: app: sso spec: realm: id: "basic" realm: "basic" enabled: True displayName: "Basic Realm" instanceSelector: matchLabels: app: sso
apiVersion: keycloak.org/v1alpha1
kind: KeycloakRealm
metadata:
name: test
labels:
app: sso
spec:
realm:
id: "basic"
realm: "basic"
enabled: True
displayName: "Basic Realm"
instanceSelector:
matchLabels:
app: sso
사전 요구 사항
- 이 사용자 정의 리소스에 대한 YAML 파일이 있습니다.
-
YAML 파일에서
instanceSelector
의앱은
Keycloak 사용자 정의 리소스의 레이블과 일치합니다. 이러한 값을 일치시켜 Red Hat Single Sign-On의 오른쪽 인스턴스에서 영역을 만들 수 있습니다. - cluster-admin 권한 또는 관리자가 부여한 동등한 수준의 권한이 있어야 합니다.
절차
생성한 YAML 파일에서 이 명령을 사용합니다.
oc create -f <realm-name>.yaml
. 예를 들면 다음과 같습니다.oc create -f initial_realm.yaml
$ oc create -f initial_realm.yaml keycloak.keycloak.org/test created
Copy to Clipboard Copied! - Red Hat Single Sign-On의 관련 인스턴스에 대해 관리 콘솔에 로그인합니다.
Select CloudEvent를 클릭하고 생성한 영역을 찾습니다.
새 영역이 열립니다.
관리자 콘솔 마스터 영역
결과
Operator에서 사용자 정의 리소스를 처리한 후 다음 명령으로 상태를 확인합니다.
oc describe keycloak <CR-name>
$ oc describe keycloak <CR-name>
영역 사용자 정의 리소스 상태
Name: example-keycloakrealm Namespace: keycloak Labels: app=sso Annotations: <none> API Version: keycloak.org/v1alpha1 Kind: KeycloakRealm Metadata: Creation Timestamp: 2019-12-03T09:46:02Z Finalizers: realm.cleanup Generation: 1 Resource Version: 804596 Self Link: /apis/keycloak.org/v1alpha1/namespaces/keycloak/keycloakrealms/example-keycloakrealm UID: b7b2f883-15b1-11ea-91e6-02cb885627a6 Spec: Instance Selector: Match Labels: App: sso Realm: Display Name: Basic Realm Enabled: true Id: basic Realm: basic Status: Login URL: Message: Phase: reconciling Ready: true Events: <none>
Name: example-keycloakrealm
Namespace: keycloak
Labels: app=sso
Annotations: <none>
API Version: keycloak.org/v1alpha1
Kind: KeycloakRealm
Metadata:
Creation Timestamp: 2019-12-03T09:46:02Z
Finalizers:
realm.cleanup
Generation: 1
Resource Version: 804596
Self Link: /apis/keycloak.org/v1alpha1/namespaces/keycloak/keycloakrealms/example-keycloakrealm
UID: b7b2f883-15b1-11ea-91e6-02cb885627a6
Spec:
Instance Selector:
Match Labels:
App: sso
Realm:
Display Name: Basic Realm
Enabled: true
Id: basic
Realm: basic
Status:
Login URL:
Message:
Phase: reconciling
Ready: true
Events: <none>
추가 리소스
- 영역 생성이 완료되면 클라이언트 사용자 정의 리소스를 생성할 준비가 된 것입니다.