11.3. 사용자 정의 리소스를 사용하여 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-discovery 서비스 - JDBC_PING 검색 수행
  • Keycloak 서비스 - HTTPS를 통해 Red Hat Single Sign-On에 연결(HTTP는 지원되지 않음)
  • Keycloak-postgresql Service - 사용하는 경우 데이터베이스 인스턴스를 내부 및 외부 연결
  • Keycloak 경로 - OpenShift에서 Red Hat Single Sign-On 관리 콘솔에 액세스하기 위한 URL

Operator 구성 요소 및 서비스가 상호 작용하는 방법

operator components

11.3.1. Keycloak 사용자 정의 리소스

Keycloak 사용자 정의 리소스는 설치에 대한 매개변수를 정의하는 YAML 파일입니다. 이 파일에는 세 가지 속성이 포함되어 있습니다.

  • instances - 고가용성 모드에서 실행 중인 인스턴스 수를 제어합니다.
  • externalAccess - 활성화된 경우 Operator 는 Red Hat Single Sign-On 클러스터에 대한 OpenShift 경로를 생성합니다. 경로에 대해 자동으로 선택된 호스트 이름을 덮어쓰도록 host를 설정할 수 있습니다.
  • externalDatabase - 외부 호스트 데이터베이스에 연결하려면To connect to an external hosted database 이 주제는 이 가이드의 외부 데이터베이스 섹션에서 다룹니다. false로 설정하는 것은 테스트 목적으로만 사용해야 하며 포함된 PostgreSQL 데이터베이스를 설치합니다. 프로덕션 환경에서는 externalDatabase: false 가 지원되지 않습니다.

Keycloak 사용자 정의 리소스의 YAML 파일의 예

apiVersion: keycloak.org/v1alpha1
kind: Keycloak
metadata:
  name: example-sso
  labels:
    app: sso
spec:
  instances: 1
  externalAccess:
    enabled: True
Copy to Clipboard

참고

YAML 파일과 Red Hat Single Sign-On 관리 콘솔에 변경 사항이 표시될 수 있지만 관리 콘솔에 대한 변경 사항은 사용자 정의 리소스를 업데이트하지 않습니다.

11.3.2. OpenShift에서 Keycloak 사용자 정의 리소스 생성

OpenShift에서 사용자 지정 리소스를 사용하여 관리 콘솔의 URL인 경로를 생성하고 관리 콘솔의 사용자 이름 및 암호가 포함된 시크릿을 찾습니다.

사전 요구 사항

  • 이 사용자 정의 리소스에 대한 YAML 파일이 있습니다.
  • cluster-admin 권한 또는 관리자가 부여한 동등한 수준의 권한이 있어야 합니다.

절차

  1. YAML 파일을 사용하여 경로를 생성합니다. oc create -f <filename>.yaml -n <namespace>. 예를 들면 다음과 같습니다.

    $ oc create -f sso.yaml -n sso
    keycloak.keycloak.org/example-sso created
    Copy to Clipboard

    경로는 OpenShift에서 생성됩니다.

  2. OpenShift 웹 콘솔에 로그인합니다.
  3. 네트워킹,경로 를 선택하고 Keycloak을 검색합니다.

    OpenShift 웹 콘솔의 경로 화면

    route ocp

  4. Keycloak 경로가 있는 화면에서 위치 아래에서 URL을 클릭합니다.

    Red Hat Single Sign-On 관리자 콘솔 로그인 화면이 표시됩니다.

    관리자 콘솔 로그인 화면

    login empty

  5. OpenShift 웹 콘솔에서 admin 콘솔의 사용자 이름과 암호를 찾습니다. Workloads 에서 Secrets 를 클릭하고 Keycloak을 검색합니다.

    OpenShift 웹 콘솔의 시크릿 화면

    secrets ocp

  6. admin 콘솔 로그인 화면에 사용자 이름과 암호를 입력합니다.

    관리자 콘솔 로그인 화면

    login complete

    이제 Keycloak 사용자 정의 리소스에서 설치한 Red Hat Single Sign-On 인스턴스에 로그인되어 있습니다. 영역, 클라이언트 및 사용자에 대한 사용자 정의 리소스를 생성할 준비가 되어 있습니다.

    Red Hat Single Sign-On 마스터 영역

    new install cr

  7. 사용자 정의 리소스의 상태를 확인합니다.

    $ oc describe keycloak <CR-name>
    Copy to Clipboard

결과

Operator에서 사용자 정의 리소스를 처리한 후 다음 명령으로 상태를 확인합니다.

$ oc describe keycloak <CR-name>
Copy to Clipboard

Keycloak 사용자 정의 리소스 상태

Name:         example-keycloak
Namespace:    keycloak
Labels:       app=sso
Annotations:  <none>
API Version:  keycloak.org/v1alpha1
Kind:         Keycloak
Spec:
  External Access:
    Enabled:  true
  Instances:  1
Status:
  Credential Secret:  credential-example-keycloak
  Internal URL:       https://<External URL to the deployed instance>
  Message:
  Phase:              reconciling
  Ready:              true
  Secondary Resources:
    Deployment:
      keycloak-postgresql
    Persistent Volume Claim:
      keycloak-postgresql-claim
    Prometheus Rule:
      keycloak
    Route:
      keycloak
    Secret:
      credential-example-keycloak
      keycloak-db-secret
    Service:
      keycloak-postgresql
      keycloak
      keycloak-discovery
    Service Monitor:
      keycloak
    Stateful Set:
      keycloak
  Version:
Events:
Copy to Clipboard

추가 리소스

  • Red Hat Single Sign-On 설치가 완료되면 영역 사용자 정의 리소스를 만들 준비가 된 것입니다.
  • 외부 데이터베이스는 지원되는 옵션이며 Keycloak 사용자 정의 리소스에서 활성화해야 합니다. 테스트에서만 이 옵션을 비활성화하고 프로덕션 환경으로 전환할 때 활성화할 수 있습니다. 외부 데이터베이스에 연결을 참조하십시오.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat