※この記事は Red Hat Advent Calendar 2023 の 18日目の記事です。
Red Hatのソリューションアーキテクトの井上たかひろです。
Red Hat SSO(Single sing-on)改めRed Hat build of Keycloakが2023年11月にGAになりました。
この記事では、Red Hat SSOからRed Hat build of Keycloakでの主な変更点とマイグレーション情報について記載します。
Red Hat SSOからRed Hat build of Keycloakでの主な変更点
Keycloakがメジャーになりすぎたためや、Red Hat SSOの製品名称がバクっとしてて何かわかりづらかったなどの理由がありやなしやで、 製品名称がRed Hat build of Keycloakになりました。
Keycloakは、2023年4月にCNCFでIncubating Projectで採択されてもっと利用が増えそうな点なども考慮すると、アップストリームのプロジェクト名と製品名が同じなのは、わかりやすくて良いかなと個人的には思っています。
そして、Red Hat SSOからRed Hat build of Keycloakの主な変更点は以下となります。
項目 | Red Hat SSO | Red Hat build of Keycloak |
---|---|---|
ソフトウェア構成 | ランタイムにJBoss EAPを採用 | ランタイムにQuarkusを採用 |
バージョンアップ間隔 | v7.xでは、v7.1からv7.2等 マイナーバージョンアップは約年1回 |
Keycloakと同じバージョン管理 22→24などで、バージョンアップは年2回を想定 |
サブスクリプション | JBoss EAP(JBCS)に含まれる Red Hat Runtimesに含まれる OpenShiftに含まれる |
Red Hat Runtimesに含まれる OpenShiftに含まれる |
サポート構成やソフトウェア構成に関する情報は以下をご確認ください。
Red Hat build of Keycloak Supported Configurations
Red Hat build of Keycloak Component Details
サブスクリプションに関する情報は以下をご確認ください。
Subscriptions or Entitlements Requirements for Red Hat build of Keycloak
サブスクリプションに関しては、JBoss EAPに含まれなくなっている点はご注意ください。
Red Hat build of Keycloak 22の新機能や機能強化
ランタイムがQuarkusになったことで、起動時間の短縮、処理性能向上、メモリリソース効率、コンテナ化がより容易になったなどのメリットも得られています。
OpenShift Operatorについては、作り直しされており、Operator成熟モデルがPhase4のDeep Insightになっています。
詳細は、Red Hat build of Keycloak 22のリリースノートをご確認ください。
Chapter 1. Red Hat build of Keycloak 22.0 Red Hat build of Keycloak 22.0 | Red Hat Customer Portal
Red Hat SSOからRed Hat build of Keycloakへのマイグレーション
ランタイムが、JBoss EAPからQuarkusに変わったため、起動方法や定義部分で大きな変更があり、この対応のためマイグレーションガイドをRed Hat build of Keycloakのマニュアルで整備されています。
マイグレーションガイドは、Red Hat Single Sing-on 7.6からのVMでのデプロイメント、OpenShift Operatorでのデプロイメントなどのデプロイメント別のマイグレーションや、カスタムプロバイダーやカスタムテーマの以降についても記載があります。 また、カスタムプロバイダーについては、Quarkus3.x系をベースにしているため、Java EE から Jakarta EE(Jakarta EE 10) への移行が必要となります。
最後に
簡単ではありますが、Red Hat SSOからのRed Hat build of Keycloakの変更点やマイグレーション情報について、ご紹介しました。 ランタイムがQuarkus変わる大きな変更ですが、Quarkusは環境変数で構成情報(管理者情報、DB接続情報など)を渡せるので、検証したりするのがより簡単になったなぁと思います。QuarkusのDev UI利用などはこれからの検討なのですが、その機能が使えるようになると、内部の動きもわかりやすくなるなと感じています。