適合性評価ツールの使用
コンテナへの移行は、VM ワークロード上で実行される適合性評価ツールを提供し、ワークロードの適合コンテナに移行できます。適合性評価ツールには以下の機能があります。
- vCenter への直接接続により VMware VM に関する評価情報を取得できる機能。
- 該当する評価ルールに関する詳細なレポート。
- 新しい収集スクリプトと評価ツール
mfit
。
生成された評価レポートには、移行前に解決する必要がある問題と全体的な適合性評価が示されます。全体的な適合性評価は次のいずれかになります。
- 非常に適した用途。
- 適合性良好、ただし確認が必要な部分がある。
- 移行前に少量の作業が必要。
- 移行前に中程度の作業が必要。
- 移行前に大量の作業が必要。
- 適合していない。
- データ不足。
このツールが VM に対する全体的な適合性の評価を行う方法の説明については、評価オペレーションをご覧ください。
リリースノート
バージョン 1.11.1 の更新
- バグを修正しました。
バージョン 1.11.0 の更新
- エグゼクティブ向けサマリレポート - このリリースには新しいレポートの種類が追加され、デフォルトの動作が変更されました。新しいエグゼクティブ向けサマリレポートでは、モダナイゼーションのプロセスの概要を確認できます。このレポートでは、モダナイゼーション工程を「低労力と高モダナイゼーション」の 2 つのバケットに分類しています。この両極(メリットと必要な労力)を知ることで、ビジネス上の重要な意思決定を行うことができます。さらに、VM の移行(リフト&シフト分析)、コンテナへのリファクタリング、オンプレミス VM のモダナイゼーション(シフトまたはベアメタル上の VM から Anthos クラスタへの接続)の適合性と技術上の制限を示すサブセクションもあります。以前のリリースでは詳細レポートがデフォルトのレポートタイプでしたが、このリリースでは、新しいエグゼクティブ向けサマリレポートに変更されています。
- Google Cloud VMware Engine への移行のワークロードを評価する - 新しい評価機能を追加した適合性評価ツールによって、Google Cloud VMware Engine に移行するためにワークロードを評価できるようになりました。
バージョン 1.10.0 の更新
バージョン 1.10.0 の適合性評価ツールには、次のような新機能が追加されています。
- Autopilot、Cloud Run、Compute Engine の評価のサポート
- 適合性評価用に追加された Tomcat ルール
- RVTools のエクスポートから vSphere データを取得する機能
- バージョンの自動チェック
- 適合性評価ツールの構成
ツールの仕組み
適合性評価ツールは、次の個別のフェーズに沿って動作します。
データの検出および収集フェーズ - 移行する VM に関するデータを収集します。このデータは次の 2 つの方法で収集できます。
データの検出(VMware のみ):
mfit
ツールを実行して、インベントリの検出を行います。VMware - vSphere API を使用して、vCenter の VM に関するデータを収集します。
mfit
ツールは、ツールに渡されたユーザー名とパスワードを使用してリモート vCenter に接続します。RVTools - RVTools を使用して vSphere に関するレポートを作成するときに、
mfit
ツールを使用して、RVTools によって生成された XLSX レポートをインポートできます。
検出を行うことで、オペレーティング システムの種類、ストレージ、コア数、その他の基本情報など、対象の VM の特性をすばやく識別できます。ただし、完全な適合性評価を算出するには、VM で
mfit-linux-collect.sh
bash スクリプトを実行する必要があります。mfit
ツールは、評価データとログ情報をホストマシンの~/.mfit
ディレクトリに保存します。収集: 移行する VM でデータ収集スクリプトを実行して、VM のコンテナ化全体の適合性評価に使用する詳細情報を収集します。完全な適合性評価を生成するには、VM で収集スクリプトを実行する必要があります。
このスクリプトは VM に関するデータを収集し、そのデータを出力、tar ファイル(Linux)または ZIP ファイル(Windows)に書き込みます。Linux VM の場合、その後の移行時に使用できるように、データのコピーを VM ファイル システム上に残すこともできます。
スクリプトは、VM 上でローカルに実行することも、
mfit
を使用してリモートで実行することもできます。mfit
は、VMware にデプロイされた Linux VM と Windows VM、およびssh
経由でmfit
からアクセスできる Linux VM に対して、リモート実行をサポートします。
評価フェーズ:
mfit
ツールを使用して、データの検出および収集フェーズのデータを解析し、一連のルールを適用して、各 VM で評価された適合性評価のスコアを作成します。通常、
mfit
を単一の Linux マシンにインストールしてから、収集スクリプトによって作成された tar ファイル(Linux)または ZIP ファイル(Windows)をそのマシンにアップロードして、評価を行います。レポート フェーズ:
mfit
ツールを使用して、各 VM の評価を示す詳細なレポートを作成します。レポートは、HTML、JSON、CSV ファイルとして作成できます。
ワークロード移行との統合
収集フェーズ中に、適合性評価ツールによって取得された、移行元の VM に関するデータは、Migrate to Containers を使用して、VM の移行計画の一部を生成できます。
たとえば、適合性評価ツールによって収集されたデータは、移行元 VM によって公開されたサービス エンドポイントに関する情報を検出するために使用されます。したがって、サービス エンドポイントに関する情報を自動的に入力する場合は、ソース VM でツールを実行する必要があります。詳細については、サービス エンドポイントのカスタマイズをご覧ください。
モダナイゼーションの工程
適合性評価レポートツールは、可能なモダナイゼーション タスクのセットを工程で説明します。このツールで定義された一般的な工程は次のとおりです。
- なし - ワークロードに関して該当するモダナイゼーションの工程はありません。
- シフト | Compute Engine VM - VMware から Compute Engine に VM を移行します。
シフト | Google Cloud VMware Engine - VMware から Google Cloud VMware Engine に VM を移行します。
コンテナ化 | Anthos と Google Kubernetes Engine - Anthos クラスタまたは GKE で実行されているコンテナに VM または VM 上のアプリケーションを移行します。
コンテナ化 | Google Kubernetes Engine Autopilot - Google Kubernetes Engine Autopilot に VM または VM 上のアプリケーションを移行します。
コンテナ化 | Cloud Run - VM または VM 上のアプリケーションを Cloud Run に移行します。
コンテナ化 | Tomcat アプリコンテナ - Tomcat サーバーとアプリケーションを VM からアプリケーション コンテナに移行します。Tomcat のコンテナ化については、Tomcat アプリケーションの移行をご覧ください。
適合性評価レポートの表示
mfit
ツールによる詳細なレポート出力を表示するには、次のいずれかを行います。
ブラウザで HTML ファイルを開きます。適合性評価ツールには強化された HTML 出力機能があるので、評価結果を簡単に確認できます。
Google Cloud Console に JSON ファイルをアップロードします。
CSV ファイルを独自のデータ可視化ユーティリティにインポートします。
詳細な HTML 出力の表示
ブラウザで HTML ファイルを開いて、レポートを表示します。次の図は、41 台の VM の評価に関する詳細レポートを示しています(サマリー テーブルの最初の 6 行のみが表示されています)。
ここで
最初のセクションには、レポートを作成したユーザーと日時に関する情報が表示されます。
[Summary]、[Journey Scores]、[OS Distributions] の各セクションには、分析されたすべての VM の結果の概要が表示されます。
テーブルの一番上の行で、レポート内での検索条件を指定できます。
テーブルには、分析対象の VM ごとに 1 行が割り当てられ、次の内容が表示されます。
- VM name - VM を最もよく表す名前。コレクション ソースに基づいた名前です。
- Platform VM ID - プラットフォーム別の VM 識別子。vSphere の場合、これは vCenter のホスト名と MoRef です。AWS と Google Cloud の場合はインスタンス ID です。
- Fit result - 推奨されるモダナイゼーションの工程に対する適合性評価の結果です。この値は、選択した移行工程に応じてテストされたルールの結果によって決まります。このフィールドでは、移行を実行する前に最も多くの作業が必要になる結果が定義されます。適合性評価が「非常に適した用途」の場合は最良の結果となり、移行実施のために必要な追加作業はありません。
- Recommended journey - さまざまな工程の適合性スコアの比較、最適な適合性スコアの工程の選択に基づいて推奨されるモダナイゼーションの工程。
- Operating System - OS 名の長い形式が表示されます。
- OS Type - VM のオペレーティング システムが表示されます。
テーブルの各行を開くと、VM に関する次のような情報が表示されます。
- 検出された情報。アプリケーション、リスニング ポート、ディスク マウント、ゲストツールがインストールされているか、ネイティブ プラットフォーム コンソールの VM へのリンクパスなど。
- 評価される工程テーブルと、それに対応する適合性評価の結果。
評価される工程テーブルの各行を開いて、評価ルールの内訳を表示します。
- Assessed condition - 特定の移行工程に影響を与える、モダナイゼーション候補のワークロードでテストされる技術的条件。
- Rule ID - 評価ルールの一意の識別子。各ルールは、特定のプロセスに必要な特定の条件をチェックします。
- Fit result - 特定の評価ルールに対する適合性評価の結果値。この値は、自動移行用のワークロードを準備するための推奨タスクに必要な労力のレベルで決まります。適合性評価が「非常に適した用途」の場合は最良の結果となり、移行実施のために必要な追加作業はありません。
- Summary - 条件が満たされたときのルールの概要。
- Recommendations and findings - 自動移行を可能にするための推奨の変更と、適合性評価により得られたデータから導き出される検出結果。
JSON ファイルを Google Cloud Console にアップロードする
Google Cloud Console でレポートを表示するには:
Google Cloud Console で [コンテナへの移行] ページを開きます。
[適合性評価] タブを選択します。
[参照] を選択し、アップロードする JSON ファイルを選択します。
[開く] を選択してレポートを表示します。
レポートには次の情報が表示されます。
- [作成者]、[評価日]、[適合性評価ツール] の各フィールドには、レポートに関する概要情報が表示されます。
- [移行の工程の詳細] には次の情報が表示されます。
- 分析された VM の合計数。
- 移行またはコンテナ化の準備が完了している VM の数。
- 移行の準備ができていない VM の数。
- 分析した VM ごとに 1 行(VM の適合性評価を含む)。
[評価した VM] テーブルで、VM の名前を選択して、VM の詳細(リスニング ポート、マウント ポイント、NFS マウント ポイントなど)を表示します。
選択した VM について、各ルールの説明とルール ID が表示されます。また、VM にルールを適用した結果も表示されます。
適合性評価ツールのインストール
mfit
と収集スクリプトをインストールします。
mfit:
mfit
ツールを 1 台の中心となる Linux マシンにダウンロードします。その後、収集スクリプトによって生成されたデータをこのマシンにアップロードして分析します。mfit-linux-collect.sh(Linux): 収集スクリプトを Linux VM にダウンロードして、データ収集を行います。
mfit-windows-collect.ps1(Windows): 収集スクリプトを Windows VM にダウンロードして、データ収集を行います。
収集スクリプトを各 VM にローカルにダウンロードするのではなく、mfit
ツールを使用して、リモートでデータ収集スクリプトを実行することもできます。このオプションは、VMware 上で実行されている VM、または mfit
をホストしているマシンからのリモート ssh
接続を許可する Linux VM でサポートされます。
前提条件
適合性評価を行うには、次の前提条件を満たす必要があります。
mfit
適合性評価ツール(
mfit
)は、Linux カーネル バージョン 2.6.23 以降で動作します。VMware 検出を使用してデータを収集するために
mfit
を使用するには:mfit
を実行している Linux マシンが vCenter に接続できる必要があります。 これには、ファイアウォール ルールで必要なすべてのポートを開き、mFit ツール収集マシンとターゲット vCenter サーバー間のネットワーク接続を確保することが含まれます。vSphere vCenter サーバーのバージョンは 5.5 以降である必要があります。
ツールに渡されるユーザー名には、1 つ以上の VM に対する読み取り権限が必要です。このツールは、指定したユーザーがアクセス可能な VM に関する情報のみを検出できます。読み取り権限は通常、
No Access
を除くすべてのロールに割り当てられます。ツールに渡されるユーザー名には、ホスト ESX に対する読み取り権限が必要です。複数の ESX サーバーが存在する場合、検出された VM をホストする ESX ごとに読み取り権限が必要です。
mFit を実行しているユーザーには、mFit を実行しているマシンに対する読み取り、書き込み、実行の権限が必要です。
mfit
を使用して VMware VM の収集スクリプトをリモートで実行するには:VMware 検出を実行するには、上記の権限が必要です。
vSphere に接続するためにツールに渡されるユーザー名には、VM に対する権限
Guest operation modifications
、Guest operation program execution
、Guest operation queries
が必要です。mfit
がスクリプトの実行に使用する VM ユーザー認証情報には、Windows VM のターゲット マシンに対する管理者権限が必要です。
mfit
を使用して、SSH で収集スクリプトをリモートで実行するには:mfit
をホストする Linux マシンには、ソース Linux VM に対するssh
アクセス権が必要です(Windows VM はサポートされません)。
収集スクリプト
mfit-linux-collect.sh
(Linux)は、すべての Linux バージョンで動作します。mfit-windows-collect.ps1
(Windows)を使用するには、PowerShell 2.0 以降(PowerShell Core ではない)が必要です。また、GUI シェル(サーバーコアではない)あるいは .Net フレームワーク 4.5 以降も必要です。Windows 7 と Windows Server 2008r2 マシンの大部分と同様に、Windows 8 と Windows Server 2012 以降のすべての Windows バージョンがこれらの要件をサポートしています。
インストール
次の手順では、mfit
と収集スクリプトのインストール方法について説明します。
mfit をインストールするには:
Linux VM に
mfit
ツールのディレクトリを作成します。mkdir m4a cd m4a
評価ツールをダウンロードして実行可能にします。
curl -O "https://mfit-release.storage.googleapis.com/$(curl -s https://mfit-release.storage.googleapis.com/latest)/mfit" chmod +x mfit
mfit
コマンドのヘルプ情報を表示するには、--help
オプションを使用します。次に例を示します。./mfit --help
特定のコマンドのヘルプを表示するには、そのコマンドで
--help
オプションを使用します。次に例を示します。./mfit discover import --help
mfit-linux-collect.sh をインストールするには:
VM にログインします。
収集スクリプト用のディレクトリを作成します。
mkdir m4a cd m4a
収集スクリプトを VM にダウンロードして実行可能にします。
curl -O "https://mfit-release.storage.googleapis.com/$(curl -s https://mfit-release.storage.googleapis.com/latest)/mfit-linux-collect.sh" chmod +x mfit-linux-collect.sh
mfit-windows-collect.ps1 をインストールするには:
VM にログインします。
[管理者として実行] オプションを使用して PowerShell を開きます。
収集スクリプト用のディレクトリを作成します。
mkdir ~\m4a cd ~\m4a
PowerShell を使用して収集スクリプトをダウンロードします。
$version = Invoke-WebRequest -UseBasicParsing https://mfit-release.storage.googleapis.com/latest $WebClient = New-Object System.Net.WebClient $WebClient.DownloadFile("https://mfit-release.storage.googleapis.com/"+$version+"/mfit-windows-collect.ps1", (Get-Location).Path + "\mfit-windows-collect.ps1")
評価の実施
次の評価フェーズをすべて行い、評価を実施します。
データの検出と収集
データの収集方法:
検出(VMware のみ):
mfit
ツールを実行して、インベントリの検出を行います。VMware - vSphere API を使用して、vCenter 内のすべての VM に関するデータを収集、ツールを実行しているユーザーに表示します。
mfit
ツールは、ツールに渡されたユーザー名とパスワードを使用してリモート vCenter に接続します。評価を実行するには、これらの認証情報が必要です。RVTools - 適合性評価ツールで、単一の VMware vCenter からの RVTools.xlsx レポート ファイルを分析できるようになりました。次のコマンドを実行すると、RVTools データソースを使用して、既存の RVTools のエクスポートに基づいて詳細な適合性評価レポートを生成できます。
$./mfit discover rvtools name.xlsx.
収集: 移行する VM でデータ収集スクリプトを実行します。このスクリプトは VM に関するデータを収集し、そのデータを tar ファイル(Linux)または ZIP ファイル(Windows)に書き込みます。
mfit
ツールを使用して評価するために、ファイルを 1 台のマシンにアップロードします。スクリプトは、VM 上でローカルに実行することも、
mfit
を使用してリモートで実行することもできます。mfit
は、VMware にデプロイされた Linux VM と Windows VM、およびssh
経由でmfit
からアクセスできる Linux VM に対して、リモート実行をサポートします。
次のセクションでは、検出の実行方法(VMware のみ)と収集スクリプトの実行方法について説明します。
- 検出の実行(VMware のみ)
- 検出のスコープを設定する
- VMware ツールを使用してリモートでデータを収集する
- SSH 経由でリモートでデータを収集する
- 個々の Linux VM でデータを収集する
- 個々の Windows VM でデータを収集する
検出の実行(VMware のみ)
m4a
ディレクトリに移動します。cd ~/m4a
次のコマンドを実行して検出を行います。
./mfit discover vsphere -u USERNAME --url https://VSPHERE_URL
メッセージが表示されたら、vCenter パスワードを入力します。
ダウンロードした tar を
mfit discover import
でインポートしたら、以下の説明に沿って収集されたデータを評価できます。
検出のスコープを設定する
ルートで検出を行うには、次のコマンドを実行します。
./mfit discover vsphere --url https://VSPHERE_URL -u USERNAME --path /
特定のフォルダで検出を行うには、次のコマンドを実行します。
./mfit discover vsphere --url https://VSPHERE_URL -u USERNAME --path datacenter/vm/folder
特定のクラスタで検出を行うには、次のコマンドを実行します。
./mfit discover vsphere --url https://VSPHERE_URL -u USERNAME --path datacenter/host/cluster
特定のデータセンターで検出を行うには、次のコマンドを実行します。
./mfit discover vsphere --url https://VSPHERE_URL -u USERNAME --path datacenter
mfit discover import
を実行すると、次のセクションで説明するように、収集されたデータを評価できるようになります。
VMware ツールを使用してリモートでデータを収集する
vSphere でホストされている VM の場合、mfit
は VMware ツールを使用して、Linux VM と Windows VM の両方にリモートで収集スクリプトをデプロイして実行できます。VMware ツールを使用する場合、mfit
ツールは以下の処理を行います。
- 収集スクリプトを VM にアップロードする
- VM でスクリプトを実行する
- 結果をダウンロードしてインポートする
データをリモートで収集するには、次の 2 組の認証情報が必要です。
vSphere に接続するためにツールに渡される vCenter Server ユーザー名には、VM に対する権限
Guest operation modifications
、Guest operation program execution
、Guest operation queries
が必要です。VM のユーザー認証情報:
- Windows の場合は、管理者権限が必要です。
- Linux の場合、root 権限は必要ありませんが、この権限を使用すると、mfit はすべての適合性評価データを収集できます。
VMware ツールを使用してデータを収集するには:
mfit
をホストする Linux VM にログインします。m4a
ディレクトリに移動します。cd ~/m4a
VM の電源がオンであることを確認し、vCenter Server ユーザー、VM ユーザー認証情報、VM_ID(VM または MOREF の名前)をコマンドに渡します。
mfit discover vsphere guest --url https://VSPHERE_URL \ -u VCENTER_USER --vm-user VM_USER VM_ID
VCENTER_USER と VM_USER のパスワードを入力するよう求められます。
vSphere クラスタに複数のデータセンターがある場合は、
--dc
オプションを使用してデータセンター名を指定する必要があります。mfit discover vsphere guest --url https://VSPHERE_URL --dc DATACENTER_NAME \ -u VCENTER_USER --vm-user VM_USER VM_ID
SSH 経由でリモートでデータを収集する
mfit
をホストしている Linux マシンにソース Linux VM への ssh
アクセス権が付与されている場合(Windows VM はサポートされていません)、mfit
は ssh
を介してリモートの VM に接続してデータを収集できます。
ssh
ツールを使用する場合、mfit
ツールは次の処理を行います。
- 収集スクリプトを VM にアップロードします。
mfit
に渡された VM ユーザー認証情報で、VM でスクリプトを実行します。VM ユーザーの認証情報には root アクセス権は不要ですが、ルートアクセス権があると、mfit
がすべての適性評価データを収集できることが保証されます。- 結果をダウンロードしてインポートします。
ssh
を実行するには、次の 2 つのモードを使用できます。
ネイティブ(デフォルト):
ssh
バイナリとmfit
マシンの構成を使用します。ネイティブ モードでは、~/.ssh/config
や~/.ssh/known_hosts
など、ホストするワークステーションのローカル SSH 構成ファイルがデフォルトで使用されます。プロンプトが表示されたらパスワードを入力します。または、sshpass を使用してコマンドラインでパスワードまたは秘密鍵ファイルのパスフレーズを渡します。次に例を示します。
sshpass -p password mfit discover ssh IP-ADDRESS
組み込み: 組み込みの
ssh
ライブラリを使用します。このモードを使用すると、ネイティブ モードが正常に動作しない場合に、組み込みのssh
クライアントを使用できます。ただし、デフォルトではローカル SSH 構成ファイルは使用されません。-i
オプションを使用して、SSH 秘密鍵ファイルを指定できます。
ssh
でデータを収集するには:
mfit
をホストしている Linux VM にログインします。m4a
ディレクトリに移動します。cd ~/m4a
mfit
を実行します。ネイティブ モード(デフォルト)を使用してデータを収集します。
mfit discover ssh VM_IP_HOSTNAME
mfit
を呼び出すユーザーの SSH 秘密鍵ファイルは、SSH 認証に使用されます。Linux VM 上のアカウントのユーザー名を求められたら入力します。収集スクリプトはこれらの認証情報を使用して実行されます。
mfit
を呼び出したユーザーの SSH 秘密鍵がユーザー名で VM の認証に失敗した場合も、パスワードの入力を求められます。ネイティブ モードで VM ユーザーを指定します。
mfit discover ssh -u USER VM_IP_HOSTNAME
プロンプトが表示されたら、ユーザーのパスワードを入力します。
-v
オプションを使用して詳細モードを指定します。mfit discover ssh -u USER -v VM_IP_HOSTNAME
-i
オプションを使用して SSH 秘密鍵ファイルを指定します。たとえば、.ssh/my_private_key
を指定する場合:mfit discover ssh -i ~/.ssh/my_private_key -u USER VM_IP_HOSTNAME
埋め込みモードを使用して、コマンドラインでパスワードを指定します。
mfit discover ssh --ssh-client embedded -u USER --password PASSWORD VM_IP_HOSTNAME
コマンドの埋め込み形式では、デフォルトでローカル SSH 構成ファイルが使用されないため、コマンドで指定された USER は、
ssh
を介して VM にアクセスでき、その VM で収集スクリプトを実行できる権限を持つ必要があります。埋め込みモードで
-i
オプションを使用します。mfit discover ssh --ssh-client embedded -i ~/.ssh/id_rsa -u USER --password PASSWORD VM_IP_HOSTNAME
mfit
コマンドでは、ほとんどのssh
フラグを指定できます。これらのフラグは、-a/--ssh-args
オプションを使用してssh
コマンドに渡されます。たとえば、socks プロキシを使用するには:mfit discover ssh -u USER \ -a '-o' -a 'ProxyCommand=nc -X 5 -x 127.0.0.1:proxy port %h %p' VM_IP_HOSTNAME
個々の Linux VM でデータを収集する
VM に mfit-linux-collect
スクリプトを実行し、その VM に関するデータを収集できます。これをインポートするには、mfit
がインストールされているマシンに tar ファイルをダウンロードして mfit discover import path-to-tar
を実行します。通常は、sudo
オプションを指定してスクリプトを実行します。このツールを実行するユーザーの権限でスクリプトを実行することもできます。ただし、スクリプトによっては、すべての評価データを収集できない場合があります。
VM にログインします。
m4a
ディレクトリに移動します。cd ~/m4a
VM で収集スクリプトを実行します。
sudo ./mfit-linux-collect.sh
このスクリプトは、
m4a-collect-MACHINE_NAME-TIMESTAMP.tar
という名前の tar ファイルを現在のディレクトリと/var/m4a/m4a-collect-TIMESTAMP.tar
に出力します。タイムスタンプの形式はYYYY-MM-DD-hh-mm
です。tar ファイル形式の詳細については、収集スクリプトの処理をご覧ください。必要に応じて次のような引数をスクリプトに渡すことができます。
--user
: ツールを実行しているユーザーの権限を使用してスクリプトを実行します(このオプションで実行する場合はsudo
を省略します)。--user
を指定して実行すると、sudo
アクセスが必要な一部のデータが収集されず、適合性評価の品質が低下する可能性があります。--readonly
:/var/m4a/m4a-collect-TIMESTAMP.tar
への出力の書き込みを省略します。コンテナへの移行機能の一部は、この情報に依存していることに注意してください。詳細については、ワークロード移行との統合をご覧ください。--output
: 指定したパスに tar ファイルを保存します。
これで、以下で説明する収集したデータの評価ができるようになりました。
個々の Windows VM でデータを収集する
VM にログインします。
[管理者として実行] オプションを使用して PowerShell を開きます。
m4a
ディレクトリに移動します。cd ~/m4a
VM で収集スクリプトを実行します。
powershell -ExecutionPolicy ByPass -File .\mfit-windows-collect.ps1
このスクリプトは、
m4a-collect-MACHINE_NAME-TIMESTAMP.zip
という名前の ZIP ファイルを現在のディレクトリに出力します。別の場所を指定するには、出力パスを含めます。.\mfit-windows-collect.ps1 \path\to\output\file.zip
これで、以下で説明する収集したデータの評価ができるようになりました。
収集したデータの評価
評価を行うには、収集フェーズで収集されたデータに対して mfit
を実行します。
評価を行うには:
評価を実施します。
./mfit assess
GCP
ターゲット プラットフォームはデフォルトで評価されます。target-platform
を指定します。./mfit assess --target-platform TARGET-PLATFORM
使用できるオプションは、gcp
、anthos
、anthosbm
、all
です。どの方法も、評価対象の工程の異なるセットを指定します。
gcp
は、Compute Engine と Google Cloud VMware Engine へのシフト工程と、Google Kubernetes Engine、Google Kubernetes Engine Autopilot、Cloud Run へのコンテナ化の工程を評価します。anthos
は、ベアメタル版 Anthos へのシフトと接続の工程、Google Kubernetes Engine と Cloud Run へのコンテナ化の工程を評価します。anthosbm
はanthos
と同等です。all
は、可能なすべての工程を評価します。
ターゲット プラットフォームごとに工程を選択する方法は次のとおりです。
工程名 Compute Engine Anthos / ベアメタル版 Anthos すべて 移行 | Compute Engine VM 含まれる 除外 含まれる シフト | Google Cloud VMware Engine 含まれる 除外 含まれる 移行 | ベアメタル版 Anthos VM 除外 含まれる 含まれる 接続 | ベアメタル版 Anthos VM 除外 含まれる 含まれる コンテナ化 | Anthos と GKE 含まれる 含まれる 含まれる コンテナ化 | Autopilot 含まれる 除外 含まれる コンテナ化 | Cloud Run 含まれる 含まれる 含まれる コンテナ化 | Tomcat アプリコンテナ 含まれる 含まれる 含まれる これで、レポートを生成して評価結果を確認できるようになりました。
レポートの生成
mfit
ツールを使用して概要レポートまたは詳細レポートを作成します。デフォルトでは概要レポートが生成されます。詳細レポートを実行するには、--full
フラグを追加します。レポートは、HTML、JSON、または CSV ファイルとして出力できます。
レポートを実行するには:
m4a
ディレクトリに移動します。cd ~/m4a
評価の HTML レポートを生成するには:
次のコマンドを実行します。
./mfit report --format html > REPORT_NAME.html
または、次を実行して詳細レポートを取得します。
./mfit report --format html --full > REPORT_NAME.html
このツールは、REPORT_NAME.html という名前の HTML ファイルを現在のディレクトリに出力します。
レポートを表示するには、ブラウザで REPORT_NAME html を開きます。詳細レポートのファイル形式については、レポートの内容をご覧ください。
評価の JSON レポートを生成するには:
次のコマンドを実行します。
./mfit report --format json > REPORT_NAME.json
このツールは、REPORT_NAME.json という名前の JSON ファイルを現在のディレクトリに出力します。
Google Cloud Console に JSON ファイルをアップロードします。
出力ファイルには、評価に関する情報(適合性評価など)が含まれています。詳しくは、レポートの内容をご覧ください。
評価の CSV レポートを生成するには:
次のコマンドを実行します。
./mfit report --format csv > REPORT_NAME.csv
このツールは、REPORT_NAME.csv という名前の CSV ファイルを現在のディレクトリに出力します。
CSV レポートをデータ可視化ユーティリティにインポートします。
出力ファイルには、評価に関する情報(適合性評価など)が含まれています。詳しくは、レポートの内容をご覧ください。
収集スクリプト オペレーション
収集スクリプトは、一連の Linux コマンドを実行して移行元の VM に関する情報を収集します。また、VM 上の複数のファイルからも情報を収集します。
以降のセクションでは、スクリプトの処理について説明します。また、スクリプトをテキスト エディタで開くと、処理の詳細を確認できます。
スクリプト コマンド
このスクリプトは、次の Linux コマンドを実行します。
コマンド | 説明 |
---|---|
netstat -tlnp |
アクティブなリスニング ポートの一覧を取得する |
ps -o pid,user,%mem,comm,args -e |
実行中のユーザー プロセスの一覧を取得する |
dpkg -l |
インストール済みパッケージの一覧を取得する(debian ベース) |
rpm -qa |
インストール済みパッケージの一覧を取得する(rpm ベース) |
sestatus |
SELinux のステータスを取得する |
lsmod |
読み込まれているカーネル モジュールを取得する |
systemctl |
実行中のサービスの一覧を取得する(SystemD baseD) |
service --status-all |
実行中のサービスの一覧を取得する(Init.d /Upstart ベース) |
lsof /dev / |
ファイルとハードウェア デバイスに対するオープン ハンドルの一覧を取得する |
docker ps |
実行中の Docker コンテナの一覧を取得する |
ip addr |
NIC に割り当てられた IP アドレスの一覧を取得する |
ifconfig |
NIC 構成ファイルと割り当て済みの IP を表示する |
blkid |
ブロック デバイス属性の一覧を取得する |
lsblk --json -p --output NAME,PARTFLAGS,PARTTYPE,UUID,LABEL,FSTYPE" |
ブロック デバイスの一覧を取得する |
収集されるファイル
このスクリプトが生成した tar ファイルには次のファイルがコピーされています。
パス | 説明 |
---|---|
/etc/fstab |
起動時にマウントされるマウントのリスト |
/etc/hosts
|
ホストのエイリアスと DNS データ |
/etc/issue
|
Linux ディストリビューションの名前 |
/etc/network/interfaces
|
構成済みのインターフェース |
/proc/cpuinfo |
CPU 情報 |
/proc/meminfo |
VM の現在のメモリ使用量と合計量 |
/proc/self/mounts |
現在マウントされているデバイス |
/etc/exports |
NFS エクスポートのリスト |
/opt/IBM/WebSphere/AppServer/properties/version/installed.xml |
WebSphere のバージョン(デフォルトでインストールされている場合) |
/opt/IBM/WebSphere/AppServer/properties/version/WAS.product |
WebSphere 情報(デフォルトでインストールされている場合) |
/sys/class/net/* |
NIC 情報 |
調査されるディレクトリ
スクリプトは、次のディレクトリを 2 つ下のレベルまで検索し、ユーティリティとソフトウェアがインストールされているディレクトリを特定します。
/opt/
/usr/share/
/etc/
/usr/sbin/
/usr/local/bin/
tar ファイル形式の収集
m4a-fit-collect.sh
スクリプトは、m4a-collect-machinename-timestamp.tar
という名前の tar ファイルを現在のディレクトリと /var/m4a/m4a-collect-timestamp.tar
に出力します。
また、次のコマンドを使用して tar ファイルを展開することもできます(必須ではありません)。
tar xvf m4a-collect-machinename-timestamp.tar
tar ファイルの形式は次のとおりです。
collect.log # Log output of the script files # Directory containing files with their full path from root. For example: |- etc/fstab |- etc/hostname |- etc/network/interfaces |- ... commands # Output of commands run by the script: |- dpkg |- netstat |- ps |- ... found_paths # Text file with the list of installation directories machinename # Text file with machine name ostype # Text file with operating system type (Linux) timestamp # Text file with collection timestamp version # Text file with version number of the script
簡単な評価を行う
収集スクリプトによって作成されたアーティファクトを使用して、簡単な評価を行うことができます。
評価を簡単に行うには:
m4a
ディレクトリに移動します。cd ~/m4a
評価を実施します。
./mfit assess sample /path/to/mfit-linux-collect-results.tar
これは、一時データベースに対して次のコマンドを実行することと同じです。
./mfit discover import /path/to/mfit-linux-collect-results.tar --db /tmp/db ./mfit assess --db /tmp/db ./mfit report --db /tmp/db
生成されたレポートを確認します。
各ルールの説明については、適合性評価ルールをご覧ください。
バージョンの自動チェック
適合性評価ツールは、デフォルトでバージョン チェックを実行します。バージョン チェックが機能するには、インターネット接続が必要です。mfit
が実行され、新しいバージョンが利用可能になると、アラート メッセージが表示されます。
インターネットにアクセスするためにプロキシが必要な場合は、次のコマンドを実行してプロキシを設定します。
mfit config set proxy PROXY
バージョンの自動チェックを無効にするには、disable_version_checking
オプションを設定します。
mfit config set disable_version_checking true
適合性評価ツールの構成
適合性評価ツールには構成プロパティがあり、config コマンドを使用して管理できます。
すべての構成プロパティとその値を出力するには:
mfit config list
構成プロパティの値を出力するには:
mfit config get proxy
構成プロパティを設定するには:
mfit config set proxy PROXY
構成プロパティをデフォルト値にリセットするには:
mfit config unset proxy