ColdFusion 2016 API Manager での Redis クラスターの作成

ColdFusion 2016 API Manager では、データストアとして Redis クラスターを使用できます。

Redis クラスターを使用すると、Redis ノードを追加または削除して API Manager のスケールを変更することや、スレーブを作成して自動フェイルオーバーを管理することができます。

Redis クラスターは、API Manager クラスターから独立しています。

Redis クラスターには、少なくとも 3 台のマスターノードが必要です。可用性と信頼性を向上させるために、対応する 3 台のスレーブノードを作成することをお勧めします。

Redis クラスターを作成するには、クラスターを構成する個々の Redis ノードをインストールする必要があります。次の手順では、ノードをクラスターに追加し、Redis クラスターの情報を API Manager に渡します。

Redis ノードのインストール

Redis ノードは、API Manager のアドオンインストーラーを使用してインストールできます。

各 Redis ノードをインストールするときに、「クラスタ設定を有効にする」チェックボックスをオンにします。

各 Redis ノードには、2 つのオープン TCP 接続が必要です。

1 つは、(インストール時に提供される)データストアポートです(例えば、6379 とします)。もう 1 つは、データストアポートに 10000 を足したポートです。(この例では、16379 になります)。

この 2 つ目のポートは、バイナリプロトコルを使用するノード間通信チャネルであるクラスターバスに使用されます。

クラスターバスポートは、他のすべてのクラスターノードから到達可能でなければなりません。両方の TCP ポートが開いていないと、クラスターは正常に動作しません。

Redis クラスターの作成

Redis クラスターを作成するには、個々の Redis ノードをクラスターに追加し、ノード間の通信を確立します。

  1. http://rubyinstaller.org/downloads/ から Windows 用の Ruby インストーラーをダウンロードします。Windows 以外のプラットフォームの場合は、ソースからインストーラーをコンパイルします。

    https://rubygems.org/ から redis.gem をダウンロードします。

    構文:gem install <path-to-gem-file>

  2. <APIM_AddOn_Home>\datastore\ruby-script にある Ruby スクリプト redis-trib.rb を実行します。

    このスクリプトは、Ruby がプリインストールされ、redis.gem が追加されているマシンで実行できます。 

  3. 次のコマンドを実行して、3 台のマスターノードと 0 台のスレーブノードで Redis クラスターを設定します。

    ruby redis-trib.rb create <machine-ip>:<port> <machine-ip>:<port> <machine-ip>:<port>

  4. 次のコマンドを実行して、3 台のマスターノードと 3 台のスレーブノードで Redis クラスターを設定します。

    ruby redis-trib.rb create --replicas 1 <machine-ip>:<port> <machine-ip>:<port> <machine-ip>:<port> <machine-ip>:<port> <machine-ip>:<port> <machine-ip>:<port>

詳細については、Redis クラスターのドキュメント(http://redis.io/topics/cluster-tutorial)を参照してください。

API Manager に Redis クラスターの情報を渡す

インストール時に API Manager に Redis クラスターの情報を渡すには、次の操作を行います。

  1. データストア」チェックボックスをオフにします。

  2. データストアと API Manager クラスタの設定」ダイアログで、「Redis Cluster」に対して「はい」を選択し、Redis クラスターのいずれかのノードの詳細を入力します。

    インストール後に Redis クラスターに移動するには、API Manager Administrator/サーバー/API データストアで詳細を指定します。

    また、ここで「移行を実行」チェックボックスをオンにして、単一のノードの全データを Redis クラスターに移行することもできます。

    Redis クラスターから単一のノードおよびクラスターからクラスターの設定はサポートされていません。

    コマンドラインから Redis を起動すると、ログに記録されません。ログは redis.log ファイルに記録されます。このファイルは、datastoreフォルダーにあります。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー