Keycloakのクラスタ環境を構成してみようKeycloak超入門(4)(3/3 ページ)

» 2018年02月07日 05時00分 公開
[茂木昂士株式会社日立製作所]
前のページへ 1|2|3       

クラスタの動作を確認してみよう

 mod_clusterおよびKeycloakが起動すると、Apache HTTPDサーバに対して自動的にKeycloakに対するプロキシ設定が行われます。プロキシ設定を確認するには、「mod_cluster_manager」を利用します。

 httpdが動作しているサーバで「http://localhost:6666/mod_cluster-manager」にアクセスします(画面1)。

画面1 画面1 httpdが動作しているサーバで「http://localhost:6666/mod_cluster-manager」にアクセスした結果。2つのホストが認識されている

 画面1の内容から、mod_clusterに2つのホストが認識されていることが分かります。この状態で、「http://localhost/auth」にアクセスすると、Keycloakの画面が表示されます。

 この状態で画面操作を行いながらアクセスログを確認すると、リクエストが分散されていることが分かります。

  • アクセスログ(keycloak-01)
127.0.0.1  - - [18/Dec/2017:16:58:46 +0900] "GET /auth/admin/realms HTTP/1.1" 200 5109
127.0.0.1  - - [18/Dec/2017:16:58:48 +0900] "GET /auth/admin/realms HTTP/1.1" 200 5109
127.0.0.1  - - [18/Dec/2017:16:58:51 +0900] "GET /auth/admin/realms/demo/client-templates HTTP/1.1" 200 2
127.0.0.1  - - [18/Dec/2017:16:58:51 +0900] "GET /auth/admin/realms HTTP/1.1" 200 5109
127.0.0.1  - - [18/Dec/2017:16:58:51 +0900] "GET /auth/admin/realms/demo/clients HTTP/1.1" 200 13788

  • アクセスログ(keycloak-02)
127.0.0.1  - - [18/Dec/2017:16:58:48 +0900] "GET /auth/admin/realms/demo HTTP/1.1" 200 2436
127.0.0.1  - - [18/Dec/2017:16:58:48 +0900] "GET /auth/admin/realms/demo/clients?viewableOnly=true HTTP/1.1" 200 13788
127.0.0.1  - - [18/Dec/2017:16:58:50 +0900] "POST /auth/realms/master/protocol/openid-connect/token HTTP/1.1" 200 3319
127.0.0.1  - - [18/Dec/2017:16:58:50 +0900] "GET /auth/admin/realms/demo HTTP/1.1" 200 2436
127.0.0.1  - - [18/Dec/2017:16:58:50 +0900] "GET /auth/admin/realms/demo/clients/a8cbdfe1-23ff-4750-aadc-cc7fd41797b4 HTTP/1.1" 200 2672

 次に、フェイルオーバー機能を試すために、片方のKeycloakサーバでプロセスを停止します。片方のプロセスを停止した場合でも、セッション情報などが共有されているため、引き続き同じセッションで接続できることが確認できます。

 以上で2つのKeycloakサーバがクラスタ化されていることが確認できました。今回は単純な構成で構築を行いましたが、「マルチキャストが利用できない場合の構成」「複数データセンター間での構成」など、環境に合わせたさまざまな構成でクラスタ環境を構築できるようになっています。詳しくはKeycloakのドキュメントや、WildFlyのドキュメントを参照してください。

 次回は、Keycloakで外部アイデンティティープロバイダーと連携する方法を解説します。

筆者紹介

茂木 昂士(もぎ たかし)

株式会社日立製作所 OSSソリューションセンタ所属。これまではソフトウェアエンジニアとしてストレージやサーバの管理ソフトウェア開発に従事してきた。現在は、主にアイデンティティー管理OSSやAPI管理OSSの検証、導入支援を行っている。


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。