11.4. 사용자 정의 리소스를 사용하여 Red Hat Single Sign-On 설치
Operator를 사용하여 Keycloak 사용자 정의 리소스를 생성하여 Red Hat Single Sign-On 설치를 자동화할 수 있습니다. 사용자 지정 리소스를 사용하여 Red Hat Single Sign-On을 설치할 때 여기에 설명된 구성 요소 및 서비스를 생성하고 다음 그래픽에 설명되어 있습니다.
-
Keycloak-db-secret- 데이터베이스 사용자 이름, 암호 및 외부 주소와 같은 속성 저장(외부 데이터베이스에 연결하는 경우) -
credentials-<CR-Name> - Red Hat Single Sign-On 관리자 콘솔에 로그인하기 위한 관리자 사용자 이름과 암호(<CR-Name>은Keycloak사용자 정의 리소스 이름을 기반으로 함) -
Keycloak - 고가용성 지원을 통한 StatefulSet으로 구현된 Keycloak 배포 사양
-
Keycloak-postgresql- PostgreSQL 데이터베이스 설치 시작 -
Keycloak-discoveryService -JDBC_PING검색을 수행합니다. -
Keycloak 서비스 - HTTPS를 통해 Red Hat Single Sign-On에 연결(HTTP는 지원되지 않음) -
Keycloak-postgresql서비스 - 내부 및 외부 연결(사용되는 경우 데이터베이스 인스턴스) -
Keycloak 경로 - OpenShift에서 Red Hat Single Sign-On 관리 콘솔에 액세스하기 위한 URL
Operator 구성 요소 및 서비스가 상호 작용하는 방법
11.4.1. Keycloak 사용자 정의 리소스 링크 복사링크가 클립보드에 복사되었습니다!
Keycloak 사용자 정의 리소스는 설치에 대한 매개변수를 정의하는 YAML 파일입니다. 이 파일에는 세 개의 속성이 포함되어 있습니다.
-
instances- 고가용성 모드에서 실행 중인 인스턴스 수를 제어합니다. -
externalAccess-활성화된것이True이면 Operator는 Red Hat Single Sign-On 클러스터에 대한 OpenShift의 경로를 생성합니다. -
External
Database - 외부호스팅 데이터베이스에 연결하기 위한 것입니다. 해당 주제는 이 가이드의 외부 데이터베이스 섹션에서 다룹니다. false로 설정하면 테스트 목적으로만 사용해야 하며 포함된 PostgreSQL 데이터베이스를 설치합니다. 프로덕션 환경에서는 externalDatabase: false 가 지원되지 않습니다.
Keycloak 사용자 정의 리소스의 YAML 파일의 예
YAML 파일을 업데이트할 수 있으며 Red Hat Single Sign-On 관리 콘솔에 변경 사항이 표시되지만 관리 콘솔의 변경 사항은 사용자 정의 리소스를 업데이트하지 않습니다.
11.4.2. OpenShift에서 Keycloak 사용자 정의 리소스 생성 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift에서 사용자 정의 리소스를 사용하여 관리 콘솔의 URL인 경로를 생성하고 관리 콘솔의 사용자 이름과 암호가 있는 시크릿을 찾습니다.
사전 요구 사항
- 이 사용자 정의 리소스에 대한 YAML 파일이 있습니다.
- cluster-admin 권한 또는 관리자가 부여한 동등한 수준의 권한이 있어야 합니다.
절차
YAML 파일
oc create -f <filename>.yaml -n <namespace>를 사용하여 경로를 생성합니다. 예를 들면 다음과 같습니다.oc create -f sso.yaml -n sso keycloak.keycloak.org/example-sso created
$ oc create -f sso.yaml -n sso keycloak.keycloak.org/example-sso createdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 경로는 OpenShift에서 생성됩니다.
- OpenShift 웹 콘솔에 로그인합니다.
Networking,Routes를 선택하고 Keycloak을 검색합니다.OpenShift 웹 콘솔의 경로 화면
Keycloak 경로가 있는 화면에서
위치아래의 URL을 클릭합니다.Red Hat Single Sign-On 관리자 콘솔 로그인 화면이 나타납니다.
관리자 콘솔 로그인 화면
OpenShift 웹 콘솔에서 관리자 콘솔의 사용자 이름과 암호를 찾습니다.
워크로드에서 시크릿을클릭하고Keycloak을 검색합니다.OpenShift 웹 콘솔의 시크릿 화면
관리자 콘솔 로그인 화면에 사용자 이름과 암호를 입력합니다.
관리자 콘솔 로그인 화면
이제 Keycloak 사용자 정의 리소스에서 설치한 Red Hat Single Sign-On 인스턴스에 로그인했습니다. 영역, 클라이언트 및 사용자에 대한 사용자 정의 리소스를 생성할 준비가 되었습니다.
Red Hat Single Sign-On 마스터 영역
사용자 정의 리소스의 상태를 확인합니다.
oc describe keycloak <CR-name>
$ oc describe keycloak <CR-name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
결과
Operator에서 사용자 정의 리소스를 처리한 후 다음 명령으로 상태를 확인합니다.
oc describe keycloak <CR-name>
$ oc describe keycloak <CR-name>
Keycloak 사용자 정의 리소스 상태
추가 리소스
- Red Hat Single Sign-On 설치가 완료되면 realm 사용자 정의 리소스를 생성할 준비가 된 것입니다.
- 외부 데이터베이스는 지원되는 옵션이며 Keycloak 사용자 정의 리소스에서 활성화해야 합니다. 이 옵션을 테스트용으로만 비활성화하고 프로덕션 환경으로 전환할 때만 활성화할 수 있습니다. 외부 데이터베이스에 연결을 참조하십시오.