Helm を使用した Data Grid クラスターのビルドおよびデプロイ
OpenShift で Data Grid クラスターを作成する
概要
Red Hat Data Grid リンクのコピーリンクがクリップボードにコピーされました!
Data Grid は、高性能の分散型インメモリーデータストアです。
- スキーマレスデータ構造
- さまざまなオブジェクトをキーと値のペアとして格納する柔軟性があります。
- グリッドベースのデータストレージ
- クラスター間でデータを分散および複製するように設計されています。
- エラスティックスケーリング
- サービスを中断することなく、ノードの数を動的に調整して要件を満たします。
- データの相互運用性
- さまざまなエンドポイントからグリッド内のデータを保存、取得、およびクエリーします。
Data Grid のドキュメント リンクのコピーリンクがクリップボードにコピーされました!
Data Grid のドキュメントは、Red Hat カスタマーポータルで入手できます。
Data Grid のダウンロード リンクのコピーリンクがクリップボードにコピーされました!
Red Hat カスタマーポータルで Data Grid Software Downloads にアクセスします。
Data Grid ソフトウェアにアクセスしてダウンロードするには、Red Hat アカウントが必要です。
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、用語の置き換えは、今後の複数のリリースにわたって段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 Helm チャートリリースとしての Data Grid クラスターのデプロイメント リンクのコピーリンクがクリップボードにコピーされました!
Helm を使用して Data Grid クラスターのビルド、設定、およびデプロイを行います。Data Grid は、OpenShift で Data Grid クラスターを実行するためのリソースをパッケージ化する Helm チャートを提供します。
Data Grid チャートをインストールして、Helm リリースを作成します。これにより、OpenShift プロジェクトで Data Grid クラスターがインスタンス化されます。
1.1. OpenShift コンソールを使用した Data Grid チャートのインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Web コンソールを使用して、Red Hat 開発者カタログから Data Grid チャートをインストールします。チャートをインストールすると、Data Grid クラスターをデプロイする Helm リリースが作成されます。
前提条件
- OpenShift にアクセスできる。
手順
- OpenShift Web コンソールにログインします。
- Developer パースペクティブを選択します。
- Add ビューを開き、Helm Chart を選択して Red Hat 開発者カタログを参照します。
- Data Grid チャートを探し、選択します。
- チャートの名前を指定し、バージョンを選択します。
Data Grid チャートの以下のセクションで値を定義します。
- Images は、Data Grid クラスターの Pod を作成する際に使用するコンテナーイメージを設定します。
Deploy は Data Grid クラスターを設定します。
ヒント各値の説明を見つけるには、YAML ビュー オプションを選択し、スキーマにアクセスします。yaml 設定を編集して、Data Grid チャートをカスタマイズします。
- Install を選択します。
検証
- Developer パースペクティブで Helm ビューを選択します。
- 作成した Helm リリースを選択して、詳細、リソース、およびその他の情報を表示します。
1.2. コマンドラインでの Data Grid チャートのインストール リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインを使用して OpenShift に Data Grid チャートをインストールし、Data Grid クラスターをインスタンス化します。チャートをインストールすると、Data Grid クラスターをデプロイする Helm リリースが作成されます。
前提条件
-
helmクライアントをインストールしている。 - OpenShift Helm チャートリポジトリー を追加している。
- OpenShift クラスターにアクセスできる。
-
ocクライアントがある。
手順
Data Grid クラスターを設定する values ファイルを作成します。
たとえば、以下の values ファイルは、2 つのノードで設定されるクラスターを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Data Grid チャートをインストールし、values ファイルを指定します。
helm install infinispan openshift-helm-charts/redhat-data-grid --values infinispan-values.yaml
$ helm install infinispan openshift-helm-charts/redhat-data-grid --values infinispan-values.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
--set フラグを使用して、デプロイメントの設定値を上書きします。たとえば、3 つのノードで設定されるクラスターを作成するには、以下のように設定します。
--set deploy.replicas=3
--set deploy.replicas=3
検証
Pod を監視して、Data Grid クラスターのすべてのノードが正常に作成されていることを確認します。
oc get pods -w
$ oc get pods -w
1.3. Data Grid Helm リリースのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Helm リリースをアップグレードして、実行時に Data Grid クラスター設定を変更します。
前提条件
- Data Grid チャートをデプロイしている。
-
helmクライアントがある。 -
ocクライアントがある。
手順
- 適宜、Data Grid デプロイメントの values ファイルを変更します。
helmクライアントを使用して変更を適用します。以下に例を示します。helm upgrade infinispan openshift-helm-charts/redhat-data-grid --values infinispan-values.yaml
$ helm upgrade infinispan openshift-helm-charts/redhat-data-grid --values infinispan-values.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
Pod の再ビルドを監視して、すべての変更が Data Grid クラスターに正常に適用されているのを確認します。
oc get pods -w
$ oc get pods -w
1.4. Data Grid Helm リリースのアンインストール リンクのコピーリンクがクリップボードにコピーされました!
Data Grid チャートのリリースをアンインストールし、Pod およびその他のデプロイメントアーティファクトを削除します。
この手順では、コマンドラインで Data Grid デプロイメントをアンインストールする方法を説明しますが、代わりに OpenShift Web コンソールを使用することもできます。特定の手順は、OpenShift のドキュメントを参照してください。
前提条件
- Data Grid チャートをデプロイしている。
-
helmクライアントがある。 -
ocクライアントがある。
手順
インストールされている Data Grid Helm リリースをリスト表示します。
helm list
$ helm listCopy to Clipboard Copied! Toggle word wrap Toggle overflow helmクライアントを使用してリリースをアンインストールし、Data Grid クラスターを削除します。helm uninstall <helm_release_name>
$ helm uninstall <helm_release_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow ocクライアントを使用して、生成されたシークレットを削除します。oc delete secret <helm_release_name>-generated-secret
$ oc delete secret <helm_release_name>-generated-secretCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.5. デプロイメント設定の値 リンクのコピーリンクがクリップボードにコピーされました!
デプロイメント設定の値により、Data Grid クラスターをカスタマイズできます。
Data Grid チャートの README で、フィールドおよび値の説明を確認することもできます。
| フィールド | 説明 | デフォルト値 |
|---|---|---|
|
| 内部 Kubernetes クラスタードメインを指定します。 |
|
|
| Pod を作成する Data Grid クラスター内のノードの数を指定します。 |
|
|
| JVM オプションを Data Grid Server に渡します。 | デフォルト値はありません。 |
|
| サーバー起動前にダウンロードするライブラリー。URL または Maven 座標として表される複数のアーティファクトをスペースで区切って指定します。.tar、.tar.gz、または .zip 形式のアーカイブアーティファクトが抽出されます。 | デフォルト値はありません。 |
|
| ストレージが一時的または永続的であるかどうかを定義します。 |
デフォルト値は |
|
| 各 Data Grid Pod に割り当てられるストレージの量を定義します。 | 1Gi |
|
|
永続ボリューム要求 (PVC) に使用する |
デフォルト値はありません。デフォルトでは、永続ボリューム要求は |
|
| 各 Data Grid Pod の CPU の制限を CPU 単位で定義します。 | 500 m |
|
| 各 Data Grid Pod のメモリーの最大量をバイト単位で定義します。 | 512 Mi |
|
| 各 Data Grid Pod について、最大の CPU リクエストを CPU 単位で指定します。 | 500 m |
|
| 各 Data Grid Pod について、最大のメモリー要求をバイト単位で指定します。 | 512 Mi |
|
| 認証情報を作成し、セキュリティー承認を設定するシークレットの名前を指定します。 |
デフォルト値はありません。カスタムのセキュリティーシークレットを作成する場合、 |
|
| 起動時に認証情報を作成しセキュリティー承認を設定する、Data Grid コマンドラインインターフェイス (CLI) のバッチファイルを指定します。 | デフォルト値はありません。 |
|
| ネットワークに Hot Rod および REST エンドポイントを公開し、Data Grid コンソールなどの Data Grid クラスターへのアクセスを提供するサービスを指定します。 |
|
|
| 30000 から 32767 のデフォルト範囲で、ノードポートサービスのネットワークポートを指定します。 | 0 ポートを指定しないと、プラットフォームは利用可能なポートを選択します。 |
|
| オプションとして、Route が公開されるホスト名を指定します。 | デフォルト値はありません。 |
|
| ネットワークに Data Grid を公開するサービスにアノテーションを追加します。 | デフォルト値はありません。 |
|
| Data Grid クラスターのログカテゴリーおよびレベルを設定します。 | デフォルト値はありません。 |
|
| 作成する各 Data Grid Pod にラベルを追加します。 | デフォルト値はありません。 |
|
| 作成する各サービスにラベルを追加します。 | デフォルト値はありません。 |
|
| Pod およびサービスを含むすべての Data Grid リソースにラベルを追加します。 | デフォルト値はありません。 |
|
|
各 Data Grid Server ノードの |
|
|
| StatefulSet Pod で使用される securityContext を設定します。 |
|
|
|
|
|
|
| すべての Data Grid クラスターリソースの名前を指定します。 | Helm チャートのリリース名。 |
|
| クラスターの StatefulSet で使用される nodeAffinity ポリシーを定義します。 |
|
|
| クラスターの StatefulSet で使用される podAffinity ポリシーを定義します。 |
|
|
| クラスターの StatefulSet で使用される podAntiAffinity ポリシーを定義します。 |
|
|
| Data Grid Server の設定。 | Data Grid は、デフォルトのサーバー設定を提供します。サーバーインスタンスの設定に関する詳細は Data Grid Server の設定値 を参照してください。 |
第2章 Data Grid Server の設定 リンクのコピーリンクがクリップボードにコピーされました!
カスタム Data Grid Server 設定をデプロイメントに適用します。
2.1. Data Grid Server 設定のカスタマイズ リンクのコピーリンクがクリップボードにコピーされました!
カスタムの deploy.infinispan 値を適用する Data Grid クラスターは、Cache Manager およびセキュリティーレルムまたは Hot Rod および REST エンドポイントなどの基礎となるサーバーメカニズムを設定します。
deploy.infinispan 値を変更する場合は、常にすべての Data Grid Server 設定を指定する必要があります。
Data Grid クラスターのモニタリング機能を使用する場合は、デフォルトの "metrics" 設定を変更または削除しないでください。
手順
必要に応じて Data Grid Server 設定を変更します。
deploy.infinispan.cacheContainerフィールドで、Cache Manager の設定値を指定します。たとえば、任意の Data Grid 設定で起動時にキャッシュを作成したり、キャッシュテンプレートを追加し、それを使用してオンデマンドでキャッシュを作成したりできます。
-
deploy.infinispan.cacheContainer.security.authorizationフィールドで、ユーザーロールとパーミッションを制御するセキュリティー承認を設定します。 -
デフォルトの JGroups スタックのいずれかを選択するか、
deploy.infinispan.cacheContainer.transportフィールドでクラスタートランスポートを設定します。 -
deploy.infinispan.server.endpointsフィールドで、Data Grid Server エンドポイントを設定します。 -
deploy.infinispan.server.interfacesフィールドおよびdeploy.infinispan.server.socketBindingsフィールドで、Data Grid Server のネットワークインターフェイスおよびポートを設定します。 -
deploy.infinispan.server.securityフィールドで、Data Grid Server のセキュリティーメカニズムを設定します。
2.2. Data Grid Server の設定値 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid Server の設定値で、Cache Manager をカスタマイズし、OpenShift Pod で実行するサーバーインスタンスを変更できます。
Data Grid Server の設定
Data Grid キャッシュの設定
キャッシュテンプレート
クラスタートランスポート
第3章 認証および承認の設定 リンクのコピーリンクがクリップボードにコピーされました!
認証情報を追加し、異なるパーミッションを持つロールを割り当てて、Data Grid クラスターへのアクセスを制御します。
3.1. デフォルトの認証情報 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid は、デフォルトの認証情報を <helm_release_name>-generated-secret シークレットに追加します。
| ユーザー名 | 説明 |
|---|---|
|
|
Data Grid リソースへのフルアクセスを持つ |
|
|
ポート |
3.1.1. 認証情報の取得 リンクのコピーリンクがクリップボードにコピーされました!
認証シークレットから Data Grid の認証情報を取得します。
前提条件
- Data Grid Helm チャートをインストールしている。
-
ocクライアントがある。
手順
以下のコマンドを使用して、
<helm_release_name>-generated-secretからデフォルトの認証情報を取得するか、別のシークレットからカスタムの認証情報を取得します。oc get secret <helm_release_name>-generated-secret \ -o jsonpath="{.data.identities-batch}" | base64 --decode$ oc get secret <helm_release_name>-generated-secret \ -o jsonpath="{.data.identities-batch}" | base64 --decodeCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2. カスタムのユーザー認証情報またはクレデンシャルストアの追加 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid ユーザー認証情報を作成し、クラスターアクセスのセキュリティー承認を付与するロールを割り当てます。
手順
deploy.security.batchフィールドにuser createコマンドを指定して、認証情報を作成します。暗黙的な承認を持つユーザー
deploy: security: batch: 'user create admin -p changeme'deploy: security: batch: 'user create admin -p changeme'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 特定のロールを持つユーザー
deploy: security: batch: 'user create personone -p changeme -g deployer'deploy: security: batch: 'user create personone -p changeme -g deployer'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.1. ユーザーロールとパーミッション リンクのコピーリンクがクリップボードにコピーされました!
Data Grid はロールベースのアクセス制御を使用して、ユーザーがクラスターリソースおよびデータにアクセスするのを承認します。セキュリティーを強化するには、認証情報を追加する際に Data Grid ユーザーに適切なロールを付与する必要があります。
| Role | パーミッション | 説明 |
|---|---|---|
|
| すべて | Cache Manager ライフサイクルの制御など、すべてのパーミッションを持つスーパーユーザー。 |
|
| ALL_READ、ALL_WRITE、LISTEN、EXEC、MONITOR、CREATE |
|
|
| ALL_READ、ALL_WRITE、LISTEN、EXEC、MONITOR |
|
|
| ALL_READ、MONITOR |
|
|
| MONITOR | Data Grid クラスターの統計を表示できます。 |
3.2.2. クレデンシャルストアの追加 リンクのコピーリンクがクリップボードにコピーされました!
サーバー設定の ConfigMap でパスワードがクリアテキストで公開されるのを防ぐために、Data Grid クレデンシャルストアを作成します。ユースケースについては、「TLS 暗号化の有効化」 を参照してください。
手順
deploy.security.batchフィールドにcredentials addコマンドを指定して、クレデンシャルストアを作成します。ストアへのパスワードの追加
deploy: security: batch: 'credentials add keystore -c password -p secret --path="credentials.pfx"'deploy: security: batch: 'credentials add keystore -c password -p secret --path="credentials.pfx"'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次に、クレデンシャルストアをサーバー設定に追加する必要があります。
クレデンシャルストアの設定
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.3. 認証シークレットを使用した複数の認証情報の追加 リンクのコピーリンクがクリップボードにコピーされました!
認証シークレットを使用して、複数の認証情報を Data Grid クラスターに追加します。
前提条件
-
ocクライアントがある。
手順
認証情報を追加するコマンドが含まれる
identities-batchファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow identities-batchファイルから認証シークレットを作成します。oc apply -f identities-batch.yaml
$ oc apply -f identities-batch.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow deploy.security.SecretNameフィールドに認証シークレットを指定します。deploy: security: authentication: true secretName: 'connect-secret'deploy: security: authentication: true secretName: 'connect-secret'Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Data Grid Helm リリースをインストールまたはアップグレードします。
3.3. 認証の無効化 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーが Data Grid クラスターにアクセスでき、認証情報を提供せずにデータを操作できるようにします。
OpenShift クラスターの外部からエンドポイントにアクセスできる場合は、認証を無効にしないでください。開発環境の認証のみを無効にする必要があります。
手順
-
"default" セキュリティーレルムから
propertiesRealmフィールドを削除します。 - Data Grid Helm リリースをインストールまたはアップグレードします。
3.4. セキュリティー承認の無効化 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid ユーザーがロールに関係なく任意の操作を実行できるようにします。
手順
nullをdeploy.infinispan.cacheContainer.securityフィールドの値として設定します。ヒントhelmクライアントで--set deploy.infinispan.cacheContainer.security=null引数を使用します。- Data Grid Helm リリースをインストールまたはアップグレードします。
第4章 暗号化の設定 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid の暗号化を設定します。
4.1. TLS 暗号化の有効化 リンクのコピーリンクがクリップボードにコピーされました!
暗号化は、エンドポイントとクラスタートランスポートに対して個別に有効にできます。
前提条件
- 証明書またはキーストアを含むシークレット。エンドポイントとクラスターで別々のシークレットを使用してください。
- キーストアにアクセスするために必要なパスワードを含むクレデンシャルキーストア。クレデンシャルキーストアの追加 を参照してください。
手順
デプロイ設定でシークレット名を設定します。
キーストアを含むシークレットの名前を指定します。
deploy: ssl: endpointSecretName: "tls-secret" transportSecretName: "tls-transport-secret"deploy: ssl: endpointSecretName: "tls-secret" transportSecretName: "tls-transport-secret"Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスタートランスポートの TLS を有効にします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow エンドポイントの TLS を有効にします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
第5章 ネットワークアクセスの設定 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid デプロイメントのネットワークアクセスを設定し、内部ネットワークサービスを確認します。
5.1. ネットワークへの Data Grid クラスターの公開 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid コンソールならびに REST および Hot Rod エンドポイントにアクセスできるように、ネットワークで Data Grid クラスターが利用できるようにします。デフォルトでは、Data Grid チャートはルートを介してデプロイメントを公開しますが、ロードバランサーまたはノードポートを介してクラスターを公開するように設定できます。また、デプロイメントをネットワークに公開せず、内部的に OpenShift クラスターだけが利用できるように Data Grid チャートを設定することもできます。
手順
deploy.expose.typeフィールドに、以下のいずれかを指定します。Expand オプション 説明 Routeルートを使用して Data Grid を公開します。これはデフォルト値です。
LoadBalancerロードバランサーサービスを介して Data Grid を公開します。
NodePortノードポートサービスを介して Data Grid を公開します。
""(空の値)ネットワークに Data Grid を公開するのを無効にします。
-
ルートを介して Data Grid を公開する場合は、オプションとして
deploy.expose.hostフィールドでホスト名を指定します。 -
ノードポートサービスを介して Data Grid を公開する場合は、オプションとして
deploy.expose.nodePortフィールドでポートを指定します。 - Data Grid Helm リリースをインストールまたはアップグレードします。
5.2. ネットワークサービスの詳細の取得 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid クラスターに接続できるように、ネットワークサービスの詳細を取得します。
前提条件
- ネットワークに Data Grid クラスターを公開している。
-
ocクライアントがある。
手順
以下のコマンドのいずれかを使用して、ネットワークサービスの詳細を取得します。
ルートを使用して Data Grid を公開する場合:
oc get routes
$ oc get routesCopy to Clipboard Copied! Toggle word wrap Toggle overflow ロードバランサーまたはノードポートサービスを介して Data Grid を公開する場合:
oc get services
$ oc get servicesCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.3. ネットワークサービス リンクのコピーリンクがクリップボードにコピーされました!
Data Grid のチャートは、内部アクセス用のデフォルトのネットワークサービスを作成します。
| サービス | ポート | Protocol | 説明 |
|---|---|---|---|
|
|
| TCP | Data Grid Hot Rod および REST エンドポイントへのアクセスを提供します。 |
|
|
| TCP | Data Grid メトリックへのアクセスを提供します。 |
|
|
| TCP | Data Grid Pod 同士が相互に検出し、クラスターを形成できるようにします。 |
以下のように、内部ネットワークサービスの詳細を取得できます。
oc get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) infinispan ClusterIP 192.0.2.0 <none> 11222/TCP,11223/TCP infinispan-ping ClusterIP None <none> 8888/TCP
$ oc get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S)
infinispan ClusterIP 192.0.2.0 <none> 11222/TCP,11223/TCP
infinispan-ping ClusterIP None <none> 8888/TCP
第6章 Data Grid クラスターへの接続 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid クラスターの設定およびデプロイ後に、Data Grid コンソール、コマンドラインインターフェイス (CLI)、Hot Rod クライアント、または REST API を使用してリモート接続を確立できます。
6.1. Data Grid コンソールへのアクセス リンクのコピーリンクがクリップボードにコピーされました!
コンソールにアクセスして、キャッシュの作成、管理操作の実行、および Data Grid クラスターの監視を行います。
前提条件
- ネットワークに Data Grid クラスターを公開している。
- ネットワークサービスの詳細を取得している。
手順
$SERVICE_HOSTNAME:$PORTで任意のブラウザーから Data Grid コンソールにアクセスします。$SERVICE_HOSTNAME:$PORTを、ネットワーク上で Data Grid を使用できるホスト名とポートに置き換えます。
6.2. コマンドラインインターフェイス (CLI) を使用した接続 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid CLI を使用してクラスターに接続し、キャッシュの作成、データの操作、管理操作を行います。
前提条件
- ネットワークに Data Grid クラスターを公開している。
- ネットワークサービスの詳細を取得している。
- Data Grid ソフトウェアダウンロード から、ネイティブ Data Grid CLI ディストリビューションをダウンロードします。
-
ネイティブ Data Grid CLI ディストリビューションの
.zipアーカイブをホストファイルシステムにデプロイメントします。
手順
-c引数の値としてネットワークサービスを指定して、Data Grid CLI を起動します。以下に例を示します。{native_cli} -c http://cluster-name-myroute.hostname.net/$ {native_cli} -c http://cluster-name-myroute.hostname.net/Copy to Clipboard Copied! Toggle word wrap Toggle overflow - プロンプトが表示されたら、Data Grid の認証情報を入力します。
必要に応じて CLI 操作を実行します。
ヒントTab キーを押すか、
--help引数を使用して、利用可能なオプションとヘルプテキストを表示します。-
quitコマンドを使用して CLI を終了します。
6.3. OpenShift で実行されている Hot Rod クライアントの接続 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid クラスターと同じ OpenShift クラスターで実行している Hot Rod クライアントを使用して、リモートキャッシュにアクセスします。
前提条件
- ネットワークサービスの詳細を取得している。
手順
クライアント設定で、Data Grid クラスターの内部ネットワークサービスの詳細を指定します。
以下の設定例では、
$SERVICE_HOSTNAME:$PORTは、Data Grid クラスターへのアクセスが許可されるホスト名およびポートを示します。- クライアントが Data Grid に対して認証できるように、認証情報を指定します。
必要に応じてクライアントのインテリジェンスを設定します。
OpenShift 上で実行される Hot Rod クライアントは、Data Grid Pod の内部 IP アドレスにアクセスできるため、任意のクライアントのインテリジェンスを使用できます。
デフォルトのインテリジェンスであるHASH_DISTRIBUTION_AWAREが推奨されます。これにより、クライアントはリクエストをプライマリーオーナーにルーティングできるようになり、パフォーマンスが向上します。
プログラムによる設定
Hot Rod クライアントプロパティー
6.3.1. すべての Data Grid Pod の IP アドレスを取得する リンクのコピーリンクがクリップボードにコピーされました!
実行中の Data Grid Pod の全 IP アドレスを含むリストを取得できます。
OpenShift で実行されている Hot Rod クライアントの接続 が推奨される方法です。利用可能ないずれかの Pod への初期接続が確保されるためです。
手順
次の方法で、実行中の Data Grid Pod の全 IP アドレスを取得します。
OpenShift API を使用する場合:
-
${APISERVER}/api/v1/namespaces/<chart-namespace>/endpoints/<helm-release-name>にアクセスして、<helm-release-name>サービスに関連付けられているendpointsOpenShift リソースを取得します。
-
OpenShift DNS サービスを使用する場合:
-
DNS サービスに
<helm-release-name>-pingという名前をクエリーして、クラスター内の全ノードの IP を取得します。
-
DNS サービスに
6.4. OpenShift の外部で実行されている Hot Rod クライアントの接続 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid クラスターをデプロイしている OpenShift クラスターの外部で実行されている Hot Rod クライアントを使用して、リモートキャッシュにアクセスします。
前提条件
- ネットワークに Data Grid クラスターを公開している。
- ネットワークサービスの詳細を取得している。
手順
クライアント設定で、Data Grid クラスターの内部ネットワークサービスの詳細を指定します。
以下の設定例では、
$SERVICE_HOSTNAME:$PORTは、Data Grid クラスターへのアクセスが許可されるホスト名およびポートを示します。- クライアントが Data Grid に対して認証できるように、認証情報を指定します。
-
BASICインテリジェンスを使用するようにクライアントを設定します。
プログラムによる設定
Hot Rod クライアントプロパティー
6.5. REST API へのアクセス リンクのコピーリンクがクリップボードにコピーされました!
Data Grid は、HTTP クライアントを使用して対話できる RESTful インターフェイスを提供します。
前提条件
- ネットワークに Data Grid クラスターを公開している。
- ネットワークサービスの詳細を取得している。
手順
$SERVICE_HOSTNAME:$PORT/rest/v2の任意の HTTP クライアントで REST API にアクセスします。$SERVICE_HOSTNAME:$PORTを、ネットワーク上で Data Grid を使用できるホスト名とポートに置き換えます。