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 サービス - 内部および外部 (使用されている場合) のデータベースインスタンスを接続します。
  • keycloak ルート - OpenShift から Red Hat Single Sign-On 管理コンソールにアクセスするための URL

Operator コンポーネントおよびサービスがどのように対話するか

operator components

11.3.1. Keycloak カスタムリソース

Keycloak カスタムリソースは、インストールのパラメーターを定義する YAML ファイルです。このファイルには、3 つのプロパティーが含まれます。

  • instances - 高可用性モードで実行中のインスタンス数を制御します。
  • externalAccess - enabledTrue の場合、Operator は Red Hat Single Sign-On クラスターの OpenShift のルートを作成します。Route に自動選択されるホスト名を上書きするように host を設定できます。
  • externalDatabase - 外部でホストされているデータベースに接続するため。このトピックは、本ガイドの 外部データベース のセクションで説明しています。false に設定すると、テスト目的でのみ使用され、組み込み PostgreSQL データベースがインストールされます。externalDatabase:false は実稼働環境ではサポートされていないことに注意してください。

Keycloak カスタムリソースの YAML ファイルのサンプル

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

注記

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>)。以下は例になります。

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

    ルートは OpenShift に作成されます。

  2. OpenShift Web コンソールにログインします。
  3. NetworkingRoutes を選択し、Keycloak を検索します。

    OpenShift Web コンソールのルート画面

    route ocp

  4. Keycloak ルートのある画面で、Location の下にある URL をクリックします。

    Red Hat Single Sign-On の管理コンソールのログイン画面が表示されます。

    管理コンソールのログイン画面

    login empty

  5. OpenShift Web コンソールで管理コンソールのユーザー名およびパスワードを確認します。WorkloadsSecrets をクリックし、Keycloak を検索します。

    OpenShift Web コンソールのシークレット画面

    secrets ocp

  6. 管理コンソールのログイン画面に、ユーザー名とパスワードを入力します。

    管理コンソールのログイン画面

    login complete

    次に、Keycloak カスタムリソースによってインストールされた Red Hat Single Sign-On のインスタンスにログインしている。レルム、クライアント、およびユーザーのカスタムリソースを作成できます。

    Red Hat Single Sign-On マスターレルム

    new install cr

  7. カスタムリソースのステータスを確認します。

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

結果

Operator がカスタムリソースを処理した後に、以下のコマンドでステータスを表示します。

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

Keycloak カスタムリソースのステータス

Copy to Clipboard Toggle word wrap
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:

関連資料

  • Red Hat Single Sign-On のインストールが完了すると、レルムカスタムリソースを作成 する準備が整います。
  • 外部データベースはサポートされているオプションであり、Keycloak カスタムリソースで有効にする必要があります。このオプションはテストでのみ無効にし、実稼働環境に切り替えるときに有効にすることができます。外部データベースへの接続 を参照してください。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.