1.3. OpenShift 3.11 での Fuse Console の設定
OpenShift 3.11 では、以下のように Fuse Console にアクセスできます。
- プロジェクトで実行しているすべての Fuse コンテナーを監視できるように、Fuse Console を OpenShift プロジェクトに追加する。
- クラスター上のすべてのプロジェクトで稼働中のすべての Fuse コンテナーを監視できるように、Fuse Console を OpenShift クラスターに追加する。
- 実行している単一の Fuse コンテナーを監視できるように、特定の Fuse Pod から Fuse Console を開く。
コマンドラインから Fuse Console テンプレートをデプロイします。
Minishift または CDK ベースの環境変数に Fuse Console をインストールするには、以下の KCS の記事で説明されている手順に従います。
- Minishift または CDK ベースの環境に Fuse Console をインストールするには、KCS 4998441 を参照してください。
- Jolokia 認証を無効にする必要がある場合は、KCS 3988671 で説明されている回避策を参照してください。
前提条件
- Fuse on OpenShift ガイド の説明にしたがって、Fuse Console の Fuse on OpenShift イメージストリームおよびテンプレートをインストールしている。
- Fuse Console のユーザー管理は、OpenShift によって処理されます。
- ロールベースアクセス制御 (デプロイ後に Fuse Console にアクセスするユーザーの場合) は現在 Fuse on OpenShift 3.11 では使用できません。
「OpenShift 3.11 での Fuse Console のデプロイ」
「OpenShift 3.11 の Fuse Console から単一の Fuse Pod を監視」
1.3.1. OpenShift 3.11 での Fuse Console のデプロイ
表1.1「Fuse Console テンプレート」は、Fuse アプリケーションのデプロイメントのタイプに応じて、コマンドラインから Fuse Console をデプロイするために使用する OpenShift 3.11 テンプレートを説明しています。
タイプ | 説明 |
---|---|
| Fuse Console は、複数の namespace またはプロジェクトにまたがってデプロイされた Fuse アプリケーションを検出し、接続することができます。このテンプレートをデプロイするには、OpenShift の cluster-admin ロールが必要です。 |
| このテンプレートは、Fuse Console の現在の OpenShift プロジェクト (namespace) へのアクセスを制限するため、単一のテナントデプロイメントとして動作します。このテンプレートをデプロイするには、現在の OpenShift プロジェクトの admin ロールが必要です。 |
任意で以下のコマンドを実行すると、すべてのテンプレートのパラメーターのリストを表示できます。
oc process --parameters -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-790047-redhat-00005/fis-console-namespace-template.json
Fuse Console のテンプレートは、デフォルトでエンドツーエンド暗号化を設定するため、Fuse Console のリクエストはブラウザーからクラスター内のサービスまでエンドツーエンドでセキュア化されます。
前提条件
OpenShift 3.11 のクラスターモードでは、cluster admin ロールとクラスターモードテンプレートが必要です。以下のコマンドを実行します。
oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:openshift-infra:template-instance-controller
手順
コマンドラインから Fuse Console をデプロイするには、以下を行います。
以下のコマンドの 1 つを実行して、Fuse Console テンプレートをベースとした新しいアプリケーションを作成します。コマンドの myproject はプロジェクトの名前に置き換えます。
Fuse Console の cluster テンプレートの場合は、以下のようになります。
myhost
は Fuse Console にアクセスするホストの名前になります。oc new-app -n myproject -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-790047-redhat-00005/fis-console-cluster-template.json -p ROUTE_HOSTNAME=myhost
Fuse Console の namespace テンプレートの場合は以下のようになります。
oc new-app -n myproject -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-790047-redhat-00005/fis-console-namespace-template.json
注記namespace テンプレートの route_hostname パラメーターは OpenShift によって自動的に生成されるため、省略することが可能です。
以下のコマンドを実行して、Fuse Console デプロイメントの状態と URL を取得します。
oc status
- ブラウザーから Fuse Console にアクセスするには、提供される URL (例: https://fuse-console.192.168.64.12.nip.io) を使用します。
1.3.2. OpenShift 3.11 の Fuse Console から単一の Fuse Pod を監視
OpenShift 3.11 で実行している Fuse Pod の Fuse Console を開きます。
前提条件
Pod ビューで Fuse Console へのリンクを表示するよう OpenShift を設定するには、Fuse on OpenShift イメージを実行している Pod が
jolokia
に設定された name 属性内で TCP ポートを宣言する必要があります。{ "kind": "Pod", [...] "spec": { "containers": [ { [...] "ports": [ { "name": "jolokia", "containerPort": 8778, "protocol": "TCP" }
手順
OpenShift プロジェクトの Applications
Pods ビューで、Pod 名をクリックし、実行している Fuse Pod の詳細を表示します。このページの右側に、コンテナーテンプレートの概要が表示されます。 このビューの Open Java Console リンクをクリックし、Fuse Console を開きます。