Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerRuntime Fabric では、独自のレジストリを使用して Runtime Fabric をインストールして管理し、Kubernetes でアプリケーションを実行するために必要な Docker イメージを保存します。セキュリティポリシーで、自分で管理しているレジストリから Docker イメージを取得することが要求されている場合は、これらの Docker イメージを取得して保存するようにローカルレジストリをセットアップできます。
Mule Docker イメージ (アプリケーションデプロイメントの管理用) と Runtime Fabric ソフトウェアイメージ (Runtime Fabric ソフトウェアの更新またはインストール用) を保存するために、すべての Runtime Fabric サポート対象プラットフォームベンダーにわたってローカルレジストリを設定できます。次の詳細と制限事項は、Mule Docker イメージと Runtime Fabric ソフトウェアイメージの両方に適用されます。
OpenShift 上の Runtime Fabric Operator のインストールまたは管理にローカルレジストリを使用することはできません。 |
『Runtime Fabric コマンドラインユーティリティ (rtfctl
)』 バージョン 0.3.150 以降を使用できます。 rtfctl
を使用すると、デフォルトで最新のバージョンに Runtime Fabric エージェントがインストールされます。
Runtime Fabric のインストールとローカルレジストリの設定には Helm を使用できます。
ローカルレジストリを使用できるのは、バージョン 1.12.0 以降の新しい Runtime Fabric インスタンスを作成する場合のみです。
ローカルレジストリをセットアップする場合は、Runtime Fabric を再インストールせずに 1.12.0 より後のバージョンにアップグレードできます。
既存の Runtime Fabric インスタンスにローカルレジストリを追加するには、インストールが Helm ベースの『Helm 管理 Runtime Fabric への移行』であることを確認し、次のセクションのステップを実行してローカルレジストリを追加します。
ローカルレジストリで使用するために Runtime Fabric インスタンスを作成した場合、rtf-runtime-registry
エンドポイントを使用するように後から再設定することはできません。rtf-runtime-registry
エンドポイントを使用するには、標準のインストール手順に従って新しい Runtime Fabric インスタンスをインストールする必要があります。
お客様はローカルレジストリを必要な連動関係と同期する責任を負います。
アプリケーションに必要なサードパーティ連動関係を同期します。
MuleSoft では、サードパーティの連動関係とイメージを同期するための追加のソフトウェアを提供していません。デプロイメントを始める前に、Mule アプリケーションのすべての連動関係イメージをローカルレジストリにプッシュしてください。
認証が必要なローカルレジストリを使用している場合、異なる名前空間の間でのプルシークレットの同期と伝播は各自の責任となります。または、シークレットで次の表示ラベルを使用している場合は、Runtime Fabric により異なる名前空間の間でプルシークレットを同期できます。
labels: rtf.mulesoft.com/synchronized: "true"
ローカルレジストリへのアクセス権を認証する必要がある場合は、 対応するログイン情報が rtf
名前空間で Kubernetes シークレットとして設定されていることを確認してください。Runtime Fabric をインストールするときに設定済みのシークレットの名前が必要になります。
アプリケーションのデプロイメントに使用する Mule Runtime バージョンをレジストリ内で同期するには、「Mule runtime patch updates for Runtime Fabric Release Notes (Runtime Fabric リリースノートの Mule Runtime パッチ更新)」を参照してください。イメージの場所は次の形式に従います: rtf-runtime-registry.kprod.msap.io/mulesoft/
。
Runtime Fabric をインストールするには、まず連動関係イメージをローカルレジストリに同期する必要があります。同期を実行するには自動的にスクリプトを実行するか手動でコマンドを実行します。
自動同期
手動同期
連動関係イメージを自動的に同期するには、docker
、curl
、jq
ツールを使用する bash スクリプトを実行します。
自動レジストリ同期は、Runtime Fabric バージョン 2.6.0 以降で使用できます。このスクリプトを使用して以前の連動関係を取得することはできません。 |
「Runtime Manager のアクセス管理権限」が [Read Runtime Fabric (Runtime Fabric の読み取り)] に設定されていることを確認します。この設定により、組織内で Runtime Fabric を照会できます。
Unix シェルで、次のスクリプトを実行します。agent-version
、authorization-token
、mulesoft-docker-server
、およびその他のパラメーター値は適宜置き換えます。
OpenShift 以外の環境の場合:
##!/usr/bin/env bash dependencies=$(curl <platform-url>/runtimefabric/api/agentmanifests/<agent-version> -H 'Authorization: bearer <authorization-token>' | jq -c '.dependencies |.[] | select(.provider | contains("generic")) | "\(.artifact):\(.version)"' | sed 's/"//g') for i in $dependencies do echo "Processing $i" docker pull <mulesoft-docker-server>/mulesoft/$i docker tag <mulesoft-docker-server>/mulesoft/$i <local-docker-server>/mulesoft/$i docker push <local-docker-server>/mulesoft/$i done
copy
OpenShift 環境の場合:
##!/usr/bin/env bash dependencies=$(curl <platform-url>/runtimefabric/api/agentmanifests/<agent-version> -H 'Authorization: bearer <authorization-token>' | jq -c '.dependencies |.[] | select(.provider | contains("openshift")) | "\(.artifact):\(.version)"' | sed 's/"//g') for i in $dependencies do echo "Processing $i" docker pull <mulesoft-docker-server>/mulesoft/$i docker tag <mulesoft-docker-server>/mulesoft/$i <local-docker-server>/mulesoft/$i docker push <local-docker-server>/mulesoft/$i done
copy
パラメーター | 説明 |
---|---|
|
Anypoint Platform の URL。https://anypoint.mulesoft.com |
|
同期に必要な Runtime Fabric エージェントのリリースバージョン。 |
|
同期を実行するために接続アプリケーションを使用するのに必要な認証トークン。このトークンを使用すると、リンクは接続アプリケーションページにリダイレクトします。 |
|
同期に必要な MuleSoft Docker サーバー。 |
連動関係イメージを手動で同期する手順は次のとおりです。
自分の非公開コンテナレジストリにログインして次のコマンドを実行します。docker-server
は適宜置き換えます。
US コントロールプレーンの場合:
# docker pull rtf-runtime-registry.kprod.msap.io/mulesoft/rtf-agent:v1.12.0 # docker tag rtf-runtime-registry.kprod.msap.io/mulesoft/rtf-agent:v1.12.0 <docker-server>/mulesoft/rtf-agent:v1.12.0 # docker push <docker-server>/mulesoft/rtf-agent:v1.12.0
copy
EU コントロールプレーンの場合:
# docker pull rtf-runtime-registry.kprod-eu.msap.io/mulesoft/rtf-agent:v1.12.0 # docker tag rtf-runtime-registry.kprod-eu.msap.io/mulesoft/rtf-agent:v1.12.0 <docker-server>/mulesoft/rtf-agent:v1.12.0 # docker push <docker-server>:5000/mulesoft/rtf-agent:v1.12.0
copy
ローカルレジストリをセットアップするには、レジストリを同期するために必要なログイン情報を収集して追加する必要があります。
次の作業を必ず実行しておいてください。
非公開の Docker イメージレジストリをセットアップ、設定、およびテストします。
Runtime Fabric のインストールに必要なすべての Docker イメージをローカルレジストリに同期します。
ご使用の Runtime Fabric バージョンの必須の連動関係については、「Runtime Fabric リリースノート」を参照してください。
連動関係バージョンは Runtime Fabric バージョンに固有です。 |
rtfctl
または helm
とローカルレジストリを使用して Runtime Fabric をインストールするには、次のいずれかのオプションを選択します。
RTFCTL
Helm
OpenShift
「rtfctl
コマンドラインユーティリティ」バージョン 0.3.150 以降をダウンロードしてインストールします。
rtf-runtime-registry
ログイン情報を取得します。
# rtfctl get registry-credentials <activation-data>
copy
このコマンドにより、現在のシェル環境で RTF_IMAGE_REGISTRY_ENDPOINT
、RTF_IMAGE_REGISTRY_USER
、RTF_IMAGE_REGISTRY_PASSWORD
が設定されます。
次のコマンドを実行して、rtf-runtime-registry
への Docker ログインが成功することを確認します。
# eval $(rtfctl get registry-credentials <activation-data>) # docker login $RTF_IMAGE_REGISTRY_ENDPOINT --username $RTF_IMAGE_REGISTRY_USER --password $RTF_IMAGE_REGISTRY_PASSWORD
copy
ログインが成功したというメッセージが表示されます。
ローカルレジストリにコンテナイメージを同期します。
Runtime Fabric リリースノートでパブリッシュされているバージョンに基づいて、他のすべての連動関係イメージ (resourceFetcher、clusterOps など) でステップ 3 を繰り返します。
レジストリへのアクセスに認証を使用している場合は、rtf 名前空間で必須のシークレットを作成します。
# kubectl create namespace rtf # kubectl create secret docker-registry regcred --namespace=rtf --docker-server=<docker_server> --docker-username=<docker_username> --docker-email=<docker_email> --docker-password=<docker_password> # kubectl label secret regcred rtf.mulesoft.com/synchronized=true -n rtf
copy
Runtime Fabric インストールを最終処理して、ローカルレジストリから取得するように設定します。
# rtfctl install ‘<activation_data>’ --image-pull-registry <docker-server>
copy
または、レジストリへのアクセスに認証を使用している場合は、次のコマンドを使用します。
# rtfctl install ‘<activation_data>’ --image-pull-registry <docker-server> --image-pull-secret <your-local-reg-secret>
copy
このコマンドにより、Runtime Fabric でローカルレジストリ URL と image-pull-secret
値の必要なオーバーライドが作成され、Runtime Fabric がアップグレード後も引き続きローカルレジストリからイメージを取得するようになります。
レジストリへのアクセスに認証を使用している場合は、インストールの完了後に、RTF 名前空間とアプリケーションをデプロイする他の名前空間でプルシークレットを再作成する必要があります。
Mule ライセンスキーの挿入などの追加の手順については、『インストール手順』を参照してください。
rtfctl uninstall
コマンドにより、インストール中に指定したプルシークレットが削除されます。
rtfctl
を使用してバックアップと復元の手順を実行するときに、バックアップはローカルレジストリ URL とプルシークレットを参照します。
ローカルレジストリにコンテナイメージを同期します。
Runtime Manager で、Helm パスを選択し、画面プラットフォーム上の手順に従います。
非公開の docker-server
、docker-username
、docker-password
を取得します。
Runtime Manager で Helm パスの手順に従って Unix シェルで次のコマンドを実行して Docker サーバーの名前、ユーザー名、パスワードを使用したシークレットを作成します。
kubectl create secret docker-registry rtf-pull-secret --namespace <rtf-namespace> --docker-server=<docker-servername> --docker-username=<docker-username --docker-password=<docker-password> --docker-email=<docker-email>
copy
Helm パスの手順に従って values.yml
ファイルをダウンロードし、その値を変更できるようにします。非公開のレジストリ設定の場合、ローカル Docker サーバーを使用して rtfRegistry
を更新し、pullSecretName
パラメーターを更新します。
Helm パスの手順を続行し、Kubernetes クラスターに Runtime Fabric をインストールします。
ローカルレジストリにコンテナイメージを同期します。
Runtime Manager で、画面プラットフォーム上の手順に従います。
非公開の docker-server
、docker-username
、docker-password
を取得します。
Runtime Manager で手順に従って Unix シェルで次のコマンドを実行して Docker サーバーの名前、ユーザー名、パスワードを使用したシークレットを作成します。
oc create secret docker-registry rtf-pull-secret --namespace <rtf-namespace> --docker-server=<docker-servername> --docker-username=<docker-username --docker-password=<docker-password> --docker-email=<docker-email>
copy
OpenShift フォームビューで、rtfRegistry 値を設定してローカルレジストリを設定します。
OpenShift のインストールを続行します。