3.2. Migration Toolkit for Applications Operator とユーザーインターフェイスのインストール
Migration Toolkit for Applications (MTA) とユーザーインターフェイスは、Red Hat OpenShift バージョン 4.18、4.17 にインストールできます。
前提条件
- 4 つ vCPU、8 GB RAM、および 40 GB の永続ストレージ。
- クラウドサービス版またはセルフホスト版のバージョン 4.18、4.17 の Red Hat OpenShift。
-
cluster-admin権限を持つユーザーとしてログインしている。
詳細は、OpenShift Operator のライフサイクル を参照してください。
手順
-
Red Hat OpenShift Web コンソールで、Operators
OperatorHub をクリックします。 - Filter by keyword フィールドを使用して、MTA を検索します。
- Migration Toolkit for Applications Operator をクリックし、Install をクリックします。
- Install Operator ページで、Install をクリックします。
-
Operators
Installed Operators をクリックして、MTA Operator が openshift-mtaプロジェクトにSucceededステータスで表示されることを確認します。 - MTA Operator をクリックします。
Provided APIs で Tackle を見つけ、Create Instance をクリックします。
Create Tackle ウィンドウが Form ビューで開きます。
- カスタムリソース (CR) 設定を確認します。デフォルトの選択で問題ありませんが、ストレージ、メモリー、およびコアのシステム要件を確認してください。
YAML ファイルを直接操作する場合は、YAML ビューをクリックして、YAML ファイルの
specセクションに列挙されている CR 設定を確認します。最も一般的に使用される CR 設定を次の表に示します。
Expand 表3.2 タックル CR 設定 名前 デフォルト 説明 cache_data_volume_size100Giキャッシュボリュームに要求されるサイズ。
rwx_supported=falseの場合は、無視されます。cache_storage_classデフォルトのストレージクラス
キャッシュボリュームに使用されるストレージクラス。
rwx_supported=falseの場合は、無視されます。feature_auth_requiredtrueキークローク認証が必要かどうかを示すフラグ (単一ユーザー/“認証なし”)。
feature_isolate_namespacetrueネットワークポリシーを使用した名前空間の分離が有効かどうかを示すフラグ
hub_database_volume_size10GiHub database ボリュームに要求されるサイズ
hub_bucket_volume_size100GiHub bucket ボリュームに要求されるサイズ
hub_bucket_storage_classデフォルトのストレージクラス
バケットボリュームに使用されるストレージクラス。
keycloak_database_data_volume_size1GiKeycloak データベースボリュームに要求されたサイズ
keycloak_sso_req_passwd_updatetrueフラグが
trueに設定されている場合、ユーザーは初回ログイン後にパスワードを更新する必要があります。pathfinder_database_data_volume_size1GiPathfinder データベースボリュームに要求されたサイズ
maven_data_volume_size100GiMaven m2 キャッシュボリュームに要求されるサイズ。MTA 6.0.1 で非推奨。
disable_maven_searchfalseフラグを
trueに設定すると、MTA が分析中に Maven 検索インデックスを利用して、依存関係が一般に公開されているものであるか (オープンソースの依存関係など)、Java バイナリーアプリケーション内部のものであるかを判別できなくなります。Maven 検索を無効にすると、MTA は最初に JAR ファイルの POM ファイル (存在する場合) から依存関係を特定しようとします。この方法が成功しない場合、MTA はディレクトリー構造を調べて依存関係を特定します。この方法では、信頼できる依存関係の分類が生成されない可能性があります。パッケージの構造が MTA が予期するものと異なる場合があるためです。一部の依存関係が誤って内部のものとして分類される可能性があるため、より多くのインシデントが表示される場合があります。
デフォルトでは、
disable_maven_searchはfalseに設定されています。そのため、MTA は JAR ファイルの SHA ダイジェストを使用して Maven 検索インデックスを検索します。この設定により、より正確な依存関係が生成されますが、Maven 検索インデックスが頻繁に利用できなくなるという欠点があります。rwx_storage_classNA
Tackle RWX ボリュームに要求されるストレージクラス。MTA 6.0.1 で非推奨。
rwx_supportedtrueクラスターストレージが RWX モードをサポートしているかどうかを示すフラグ。
rwo_storage_classNA
Tackle RW0 ボリュームに要求されたストレージクラス
analyzer_container_limits_cpu1Pod が使用できる CPU の最大数
analyzer_container_limits_memory1GiPod が使用できるメモリーの最大量。Pod に
OOMKilledエラーが表示される場合は、この制限を増やすことができます。analyzer_container_requests_cpu1Pod の実行に必要な CPU の最小数
analyzer_container_requests_memory512 MiPod の実行に必要なメモリーの最小量
ui_container_limits_cpu500 mUI Pod リソースが使用できる CPU の最大数
ui_container_limits_memory800 MiUI Pod リソースが使用できるメモリーの最大量。Pod に
OOMKilledエラーが表示される場合は、この制限を増やすことができます。ui_container_requests_cpu100 mUI Pod リソースの実行に必要な CPU の最小数
ui_container_requests_memory350MiUI Pod リソースの実行に必要なメモリーの最小量
provider_java_container_limits_cpu1Java プロバイダーリソースが使用できる CPU の最大数
provider_java_container_limits_memory2.5GiJava プロバイダーリソースが使用できるメモリーの最大量。Pod に
OOMKilledエラーが表示される場合は、この制限を増やすことができます。provider_java_container_requests_cpu1Java プロバイダーリソースの実行に必要な CPU の最小数
provider_java_container_requests_memory2.5GiJava プロバイダーリソースの実行に必要なメモリーの最小量
サンプル YAML ファイル
kind: Tackle apiVersion: tackle.konveyor.io/v1alpha1 metadata: name: mta namespace: openshift-mta spec: hub_bucket_volume_size: "25Gi" maven_data_volume_size: "25Gi" rwx_supported: "false"- 必要に応じて CR 設定を編集し、Create をクリックします。
-
Administration ビューで、Workloads
Pods をクリックして、MTA Pod が実行されていることを確認します。 -
OpenShift 内の
mta-uiアプリケーションによって公開されたルートを使用して、ブラウザーからユーザーインターフェイスにアクセスします。 次の認証情報を使用してログインします。
- ユーザー名: admin
- パスワード:Passw0rd!
- プロンプトが表示されたら、新しいパスワードを作成します。
3.2.1. エビクションしきい値 リンクのコピーリンクがクリップボードにコピーされました!
各ノードには一定量のメモリーが割り当てられています。そのメモリーの一部はシステムサービス用に予約されています。残りのメモリーは Pod の実行に使用されます。Pod が割り当てられた量を超えるメモリーを使用すると、メモリー不足イベントがトリガーされ、ノードは OOMKilled エラーで終了します。
メモリー不足イベントを回避し、ノードを保護するには、--eviction-hard 設定を使用します。この設定は、ノードが Pod をエビクトするメモリーの可用性のしきい値を指定します。設定値は絶対値またはパーセント値に指定できます。
ノードのメモリー割り当て設定の例
-
ノード容量:
32Gi -
--system-reserved設定:3Gi -
--eviction-hard設定:100Mi
このノードで Pod を実行するために使用できるメモリーの量は 28.9 GB です。この量は、ノードの全体的な容量から system-reserved と eviction-hard 値を差し引くことによって計算されます。メモリー使用量がこの量を超えると、ノードは Pod のエビクトを開始します。