手動で生成したテーブルをインポートする

Migration Center では、提供されたテンプレートを使用して手動で入力するデータのテーブルをアップロードできます。 これは、インフラストラクチャのアセット数が限られており、データを手動で作成したい場合に便利です。

手動で入力したテーブルをインポートするには、次の手順を行います。

  1. 利用可能なテンプレートのリストからテンプレートをダウンロードします。
  2. インフラストラクチャからのデータをテーブルに手動で入力します。
  3. Migration Center にテーブルをアップロードします。

制限事項

  • ファイル アップロードの最大サイズは 100 MB です。

利用可能なデータ テンプレート

次の表に、インフラストラクチャ データを Migration Center にアップロードする際に使用できるファイル テンプレートを示します。 テンプレートには、テーブルの入力方法に関する提案としてサンプルデータが含まれています。 必要なデータ形式の詳細については、インポート ファイルの仕様をご覧ください。

File name データの種類 Description
vmInfo.csv マシンの情報 このテンプレートは、CPU、メモリなどの個々のアセットの情報や、その他の構成パラメータを提供する場合に使用します。このテーブルは、新しいインポートを作成するたびに必要です。
perfInfo.csv パフォーマンス データ 省略可: アセットのパフォーマンス データを時系列形式で提供する場合に使用します。
diskInfo.csv ディスクデータ 省略可: ディスクとその使用率に関する情報を提供する場合に使用します。
tagInfo.csv システムタグ 省略可: アセットにラベルを割り当てるには、このテンプレートを使用します。ラベルは Google Cloud のラベルの要件に従う必要があります。

各ファイルの仕様の詳細については、インポート ファイルの仕様をご覧ください。

テーブルをアップロードする

ファイルをアップロードする手順は次のとおりです。

コンソール

  1. [データ インポート] ページに移動します。

    [データ インポート] に移動

  2. [データを追加] > [ファイルをアップロード] をクリックします。

  3. [ファイルのアップロードの設定] セクションで、ファイル アップロードの名前を入力します。

  4. [ファイル形式] リストから [手動で入力した CSV テンプレート] を選択します。

  5. [アップロードするファイルを選択] をクリックし、アップロードするファイルをすべて選択します。

  6. ファイルのアップロードを確認して開始するには、[ファイルをアップロード] をクリックします。

  7. ファイルが正しく検証された場合、ファイルからアセットを作成するには、[データをインポート] をクリックしてから [確認] をクリックします。

API

  1. インポート ジョブを作成します。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs?importJobId=IMPORT_JOB_ID
    
    {
      "asset_source": "projects/PROJECT_ID/locations/REGION/sources/SOURCE_ID"
    }
    

    以下を置き換えます。

    • PROJECT_ID: インポート ジョブを作成するプロジェクトの ID。
    • REGION: インポート ジョブを作成するリージョン。
    • IMPORT_JOB_ID: 新しいインポート ジョブの ID。
    • SOURCE_ID: インポート ジョブに関連付ける既存のソースの ID。
  2. 省略可: インポート ジョブが正しく作成されたことを確認するには、インポート ジョブを取得します。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID
    
  3. インポート ジョブにアタッチされるインポート データファイルを作成します。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID/importDataFiles?import_data_file_id=DATA_FILE_ID
    
    {
      "format": "IMPORT_JOB_FORMAT"
    }
    

    以下を置き換えます。

    • DATA_FILE_ID: 新しいデータファイルの ID
    • IMPORT_JOB_FORMAT: IMPORT_JOB_FORMAT_MANUAL_CSV
  4. データファイルを取得します。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID/importDataFiles/DATA_FILE_ID
    
  5. レスポンスの signedUrl フィールドから URL をコピーします。

  6. コピーした URL にファイルをアップロードします。

    PUT -H 'Content-Type: application/octet-stream' --upload-file UPLOAD_FILE_PATH 'COPIED_URL'
    

    以下を置き換えます。

    • UPLOAD_FILE_PATH: アップロードするファイルのローカルパス。
    • COPIED_URL: プレビュー手順からコピーした署名付き URL。
  7. 省略可: 同じインポート ジョブでデータファイルをさらに作成するには、手順 3 ~ 6 を繰り返します。

  8. 省略可: インポート ジョブのすべてのデータファイルを取得します。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID/importDataFiles
    
  9. インポート ジョブを検証します。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID:validate
    
  10. インポート ジョブを取得して、検証レポートを表示します。状態が READY の場合、次のステップに進むことができます。 それ以外の場合は、ジョブまたは特定のファイルを修正する必要があります。その場合、ファイルの削除や新しいファイルのアップロードが必要になることがあります。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID
    
  11. インポート ジョブを実行します。

    POST https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID:run
    
  12. インポート ジョブを取得し、実行レポートを表示します。状態が COMPLETED の場合、ジョブは正常に実行されています。 それ以外の場合、ジョブが失敗して終了状態の場合、実行レポートにはエラーが含まれます。 新しいインポート ジョブを作成し、必要な変更を適用します。

    GET https://migrationcenter.googleapis.com/v1alpha1/projects/PROJECT_ID/locations/REGION/importJobs/IMPORT_JOB_ID
    

ファイルのアップロードで問題が発生した場合は、一般的なエラー メッセージのトラブルシューティングをご覧ください。

アップロードを確認する

ファイルをアップロードすると、Migration Center はこれらのファイルが正式に正しいかどうかを検証します。検証に成功すると、Migration Center はデータを処理して、新しいアセットを作成するか、既存のアセットを更新します。アップロード ジョブのステータスは Google Cloud コンソールで確認できます。

アップロード ジョブのステータスを確認するには、次の手順に従います。

  1. [データ インポート] ページに移動し、[ファイルのアップロード] をクリックします。
  2. ファイル インポートのリストから、確認するアップロードを選択します。
  3. [ファイルのアップロード] ページの [データ インポートの進行状況] で、アップロードしたファイルの [ステータス] を確認します。

ファイルは次のいずれかのステータスで表示されます。

ステータスのリスト

  • 完了。ファイルのインポートに成功しました。
  • 準備完了。ファイルが検証に合格し、インポートできる状態になっています。
  • 保留中。ファイルは別のファイルの処理が完了するのを待機しています。
  • 実行中。ファイルは現在処理中です。
  • 検証中。ファイルは検証中です。
  • 検証失敗。いくつかのエラーがファイルに含まれています。エラーを修正してから、もう一度ファイルをアップロードしてみてください。
  • 失敗。ファイルをインポートできませんでした。

エラーの詳細を確認

ファイルのインポート後にエラーが発生した場合は、Google Cloud コンソールでエラー メッセージを直接確認できます。

アップロード ジョブのエラーを確認する手順は次のとおりです。

  1. [データ インポート] ページに移動し、[ファイルのアップロード] をクリックします。
  2. 警告またはエラーが表示されたインポート ファイルをクリックします。インポート ファイルの詳細ページに、エラーの一覧が表示されます。

インポート ファイルの詳細ページで、エラーの原因となるアセットとデータ フィールドを確認し、エラーの説明を確認できます。ファイルのインポート ジョブのエラーにより、Migration Center が新しいアセットを作成したり、既存のアセットを新しい変更で更新したりできなくなる場合があります。エラーを修正するには、ファイルを編集して、新しいファイル インポート ジョブを作成し、もう一度アップロードします。

発生する可能性のあるエラー メッセージの詳細については、ファイル インポート エラーのトラブルシューティングをご覧ください。

インポート ファイルの仕様

次の表に、手動インポートに使用されるテンプレート ファイルの技術仕様を示します。

vmInfo ファイル

想定される型 Description
MachineId string 仮想マシンの固有識別子。
MachineName string 仮想マシンの表示名。
PrimaryIPAddress string マシンの IP アドレス。
PrimaryMACAddress string マシンの MAC アドレス。これは、マシンを識別する目的でのみ使用されます。
PublicIPAddress string マシンのパブリック IP アドレス。
IpAddressListSemiColonDelimited メッセージの一覧 割り振られているまたは割り当てられているネットワーク アドレスのリスト。
TotalDiskAllocatedGiB int64 ディスクの合計容量。
TotalDiskUsedGiB int64 ディスクの使用済み容量の合計。
MachineTypeLabel string AWS または Azure マシンタイプのラベル。
AllocatedProcessorCoreCount int64 仮想マシンの CPU コア数。
MemoryGiB int32 仮想マシンのメモリ量。
HostingLocation string マシンのロケーション(AWS または Azure 形式)。
OsType string マシンの OS。
OsName string マシンの OS。
OsVersion string マシンの OS のバージョン。
MachineStatus string マシンの電源状態。
ProvisioningState string プロビジョニング状態(Azure VM のみ)。
CreateDate タイムスタンプ マシンの作成タイムスタンプ。
IsPhysical string マシンが物理マシンまたは仮想マシンかどうか。
ソース クリックします。 AWS または Azure マシンのソースの詳細。

diskInfo ファイル

想定される型 Description
MachineId string 仮想マシンの固有識別子。
DiskLabel string ディスクラベル。
SizeInGib int64 ディスクの合計容量。
UsedInGib int64 ディスクの使用済み容量の合計。
StorageTypeLabel string ディスクラベルのタイプ(BIOS、GPT など)。

perfInfo ファイル

想定される型 Description
MachineId string 仮想マシンの固有識別子。
TimeStamp サンプルが収集されたときのタイムスタンプ。
CpuUtilizationPercentage float 使用されている合計 CPU 容量の割合。0 ~ 100 の範囲内にする必要があります。
MemoryUtilizationPercentage float 使用されているシステムメモリの割合。0 ~ 100 の範囲内にする必要があります。
UtilizedMemoryBytes float 使用メモリの合計(バイト単位)。
DiskReadOperationsPerSec float 短い時間枠でサンプリングされた平均 IOPS。
DiskWriteOperationsPerSec float 短い時間枠でサンプリングされた平均 IOPS。
NetworkBytesPerSecSent float 短い時間枠でサンプリングされた、B/s 単位の平均ネットワーク下り(外向き)。
NetworkBytesPerSecReceived float 短いウィンドウでサンプリングされた、B/s 単位の平均ネットワーク上り(内向き)。

tagInfo ファイル

想定される型 Description
MachineId string 仮想マシンの固有識別子。
キー string ラベルキー。
string ラベルの値。

ラベルの解析アルゴリズム

tagInfo ファイルを使用してアップロードするラベルは、Google Cloud のラベルの要件に従う必要があります。 ラベルが要件を満たしていない場合、Migration Center は次の方法を使用してラベルを変換します。

  1. キーの場合のみ、英字ではない先頭文字をすべて削除します。
  2. すべての大文字を小文字に置き換えます。
  3. 無効な文字はすべてアンダースコア(_)に置き換えられます。
  4. ラベルは最大 62 文字に切り捨てられます。
  5. 元の文字列に基づいて計算された _<CRC32> 接尾辞が追加されます。

ラベルが変換されるたびに警告メッセージが表示されます。

検証が失敗した場合、またはキーがすでに存在する場合は、インポートによって行がスキップされ、警告メッセージが表示されます。

次のステップ