検索

1.5. Red Hat build of Keycloak の起動を最適化する

download PDF

Red Hat build of Keycloak を実稼働環境にデプロイする前に、Red Hat build of Keycloak を最適化して起動を高速化し、メモリー消費量を改善することが推奨されます。このセクションでは、最適なパフォーマンスと実行時の動作を実現するために、Red Hat build of Keycloak の最適化を適用する方法を説明します。

1.5.1. 最適化された Red Hat build of Keycloak ビルドの作成

デフォルトでは、start または start-dev コマンドを使用すると、Red Hat build of Keycloak は便宜上、内部で build コマンドを実行します。

この build コマンドは、起動時と実行時の動作に対して一連の最適化を実行します。ビルドプロセスには数秒かかる場合があります。特に、Kubernetes や OpenShift などのコンテナー化された環境で Red Hat build of Keycloak を実行する場合、起動時間は重要です。無駄な時間を発生させないために、起動前に build (CI/CD パイプラインの別のステップなど) を明示的に実行します。

1.5.1.1. 最初のステップ: build を明示的に実行する

build を実行するには、次のコマンドを入力します。

bin/kc.[sh|bat] build <build-options>

このコマンドは、入力した build options を表示します。Red Hat build of Keycloak は、build コマンドの実行時に使用できる ビルドオプション と、サーバーの起動時に使用できる 設定オプション を区別します。

Red Hat build of Keycloak の起動が最適化されていない場合、この区別には意味がありません。ただし、起動前に build を実行する場合、build コマンドではオプションのサブセットしか使用できません。この制限は、最適化された Red Hat build of Keycloak イメージに対して build オプションが永続化されることが原因です。たとえば、db-password (設定オプション) などの認証情報の設定は、セキュリティー上の理由から永続化することは禁止されています。

警告

すべてのビルドオプションは、プレーンテキストで保持されます。機密データは、ビルドオプションとして保存しないでください。これは、KeyStore Config Source を含む、使用可能なすべての設定ソースに適用されます。したがって、ビルドオプションを Java KeyStore に保存することも推奨されません。設定オプションに関しては、主に機密データの保存に KeyStore Config Source を使用することが推奨されます。機密性のないデータの場合は、残りの設定ソースを使用できます。

ビルドオプションは、All configuration でツールアイコンでマークされます。利用可能なビルドオプションを見つけるには、次のコマンドを入力します。

bin/kc.[sh|bat] build --help

例: 起動前に build を実行してデータベースを PostgreSQL に設定する

bin/kc.[sh|bat] build --db=postgres

1.5.1.2. 2 番目のステップ: --optimized を使用して Red Hat build of Keycloak を起動する

ビルドが成功すると、次のコマンドを入力して Red Hat build of Keycloak を起動し、デフォルトの起動動作をオフにできます。

bin/kc.[sh|bat] start --optimized <configuration-options>

--optimized パラメーターは、Red Hat build of Keycloak に対して、事前にビルドおよび最適化された Red Hat build of Keycloak の使用を前提とするように指示します。その結果、Red Hat build of Keycloak の起動時にビルドの直接確認と実行は行われず、時間が短縮されます。

起動時にすべての設定オプションを入力できます。これらのオプションは、All configuration でツールアイコンが 付いていない オプションです。

  • 起動時に、build の入力時に使用した値と同じ値のビルドオプションが見つかった場合、--optimized パラメーターを使用すると、そのオプションは暗黙的に無視されます。
  • そのオプションの値が、ビルドの入力時に使用した値と異なる場合、ログに警告が表示され、以前にビルドした値が使用されます。この値を有効にするには、起動する前に新しい build を実行します。

最適化されたビルドを作成する

次の例は、Red Hat build of Keycloak の起動時に、--optimized パラメーターを使用して最適化されたビルドを作成する方法を示しています。

  1. build コマンドを使用して、PostgreSQL データベースベンダーのビルドオプションを設定します。

    bin/kc.[sh|bat] build --db=postgres
  2. conf/keycloak.conf ファイルで、postgres の実行時設定オプションを設定します。

    db-url-host=keycloak-postgres
    db-username=keycloak
    db-password=change_me
    hostname=mykeycloak.acme.com
    https-certificate-file
  3. 最適化されたパラメーターでサーバーを起動します。

    bin/kc.[sh|bat] start --optimized

build コマンドを使用すると、起動時と実行時の動作のほとんどを最適化できます。また、keycloak.conf ファイルを設定ソースとして使用すると、CLI 自体の初期化など、コマンドラインパラメーターが必要となる起動時の一部の手順を回避できます。その結果、サーバーの起動時間がさらに短縮されます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.