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

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

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

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

制限事項

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

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

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

File name データの種類 説明
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 ファイル

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

diskInfo ファイル

想定される型 説明
MachineId 文字列 仮想マシンの固有識別子。
DiskLabel 文字列 ディスクラベル。
SizeInGib int64 ディスクの合計容量。
UsedInGib int64 ディスクで使用されている合計容量。
StorageTypeLabel 文字列 ディスクラベルの種類(BIOS、GPT など)。

perfInfo ファイル

想定される型 説明
MachineId 文字列 仮想マシンの固有識別子。
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 ファイル

想定される型 説明
MachineId 文字列 仮想マシンの固有識別子。
Key 文字列 ラベルキー。
文字列 ラベルの値。

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

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

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

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

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

次のステップ