リプラットフォームから EC2 - AWS での Cloud Migration Factory

リプラットフォームから EC2

AWS での Cloud Migration Factory ソリューションを使うと、EC2 インスタンスのグループをデータストアで定義された設定から自動的に起動し、EBS ボリュームがアタッチされた EC2 インスタンスをデプロイできます。これにより、新しい EC2 インスタンスをプロビジョニングできるようになるため、AWS CloudFormation 経由でリプラットフォームを行い、単一の CMF ユーザーインターフェイス内で AWS MGN を使ってオンプレミスサーバーをリホストすることができます。この機能を使用するには、データストアにサーバーの定義が含まれている必要があります。この問題を解決したら、サーバーをウェーブにリンクする必要があります。EC2 インスタンスを起動することにした場合、ユーザーはウェーブに対して以下のアクションを開始できます。

  • EC2 入力の検証

  • EC2 が CF テンプレートを生成する

  • EC2 デプロイ

前提条件

リプラットフォーム属性アクセスを追加する権限。

スクリプト実行プラットフォームの選択

自動化スクリプトをデプロイする前に、ニーズに最適なコンピューティングプラットフォームを決定します。

  • 従来の自動化サーバー: 複雑な依存関係、複数のプログラミング言語、または特定の OS 要件を必要とするシナリオに最適

  • SSM 自動化ドキュメント: オンプレミス環境へのアクセスを必要としない標準の Python ベースの自動化スクリプトに推奨

初期設定

新しい EC2 インスタンスの設定は、ユーザーインターフェイスを使用して新しいサーバーアイテムを作成する方法、またはサーバーアイテムを含む CSV 入力フォームをインポートする方法で行われます。これらの定義は、AWS CMF インスタンスがデプロイされたのと同じ AWS アカウント内の S3 バケットに保存された AWS CloudFormation テンプレートに変換されます。

ユーザーインターフェイス定義

EC2 機能に対するリプラットフォームと併用する AWS Cloud Migration Factory データストアでサーバーを定義する際、サーバーは [リプラットフォーム][移行戦略] を使って設定する必要があります。[リプラットフォーム] を選択すると、この機能に必要な追加属性が画面に表示されます。これを正常に機能させるには、以下の属性を入力する必要があります。

必須属性

AMI Id – EC2 インスタンスの起動に使用される Amazon マシンイメージの ID。

アベイラビリティゾーン — EC2 インスタンスがデプロイされる AZ。

ルートボリュームサイズ — インスタンスのルートボリュームのサイズ (GB 単位)。

インスタンスタイプ — 使用する EC2 インスタンスタイプ。

セキュリティグループ ID — インスタンスに割り当てられたセキュリティグループのリスト。

サブネット ID — この EC2 インスタンスを割り当てるサブネット ID。

テナンシー — 現在、リプラットフォームから EC2 への統合でサポートされている唯一のオプションは [共有] であり、その他のオプションはテンプレート生成時に [共有] に置換されます。

オプションの属性

詳細モニタリングを有効化 - チェックを入れると詳細モニタリングができるようになります。

その他のボリューム名 — 追加 EBS ボリューム名のリスト。リスト内の各項目は、[サイズ][タイプ] リストと同じ行にマップする必要があります。

その他のボリュームサイズ — 追加 EBS ボリューム名のリスト。リスト内の各項目は、[名前][タイプ] リストと同じ行にマップする必要があります。

その他のボリュームタイプ — 追加 EBS ボリュームタイプのリスト。リスト内の各項目は、[名前][サイズ] リストと同じ行にマップする必要があります (指定しない場合、デフォルトはすべてのボリュームについて [gp2] となります)。

ボリューム暗号化の EBS KMS キー ID — EBS ボリュームを暗号化する場合は、[キー ID][キー ARN][キーエイリアス]、または [エイリアス ARN] を指定します。

EBS 最適化を有効にする — 選択して [EBS 最適化] をオンにします。

ルートボリューム名 — 表示されるオプションから選択します。指定されていない場合は ID が使用されます。

ルートボリュームタイプ — 作成するボリュームの EBS タイプを指定します。指定しない場合、デフォルトは [gp2] となります。

インテークフォーム定義

インテークフォームでは、データストアを使用して複数のタイプのレコードを作成または更新するための詳細を CSV ファイルの 1 行にまとめることができ、これにより、関連データをインポートできます。以下の例では、ウェーブ、アプリケーション、サーバーのレコードがインポート時に自動的に作成され、相互に関連付けられます。

例:インテークフォーム

列名 データの例 必須 メモ

wave_name

wave1

はい

app_name

app1

はい

aws_accountid

1234567890

はい

server_name

Server1

はい

server_fqdn

Server1

はい

server_os_family

linux

はい

server_os_version

Amazon

はい

server_tier

Web

いいえ

server_environment

Dev

いいえ

subnet_IDs

subnet-xxxxxxx

はい

securitygroup_ID

sg-yyyyyyyyyy

はい

instanceType

m5.large

はい

iamRole

ec2customrole

いいえ

tenancy

Shared

はい

r_type

Replatform

はい

root_vol_size

50

はい

ami_id

ami-zzzzzzzzzz

はい

availabilityzone

us-west-2a

はい

root_vol_type

gp2

いいえ

add_vols_size

40:100

いいえ

add_vols_type

gp2:gp3

いいえ

ebs_optimized

false

いいえ

ebs_kmskey_id

1111-1111-1111-1111

いいえ

detailed_monitoring

true

いいえ

root_vol_name

Server1_root_volume

いいえ

add_vols_name

Server1_root_volumeA: Server1_root_volumeB

いいえ

インテークフォームをインポートするには、AWS での Cloud Migration Factory ソリューションへの他のデータのインポートと同じ手順に従います。

デプロイアクション

EC2 入力の検証

インスタンスパラメータを定義したら、まず次のウェーブアクションを実行する必要があります。リプラットフォーム>EC2>EC2 の入力検証。このアクションは、有効な CloudFormation テンプレートを作成するために、各サーバーにすべての正しいパラメータが提供されていることを確認します。

注記

この検証では、現在のところ、入力パラメータが有効であるかどうかは検証されず、各サーバー定義に存在することだけが検証されます。テンプレートを作成する前に正しい値を確認する必要があります。そうしないと、テンプレートのデプロイが失敗します。

EC2 が CloudFormation テンプレートを生成する

ウェーブに含まれるすべてのサーバーの定義が検証されたら、CloudFormation テンプレートを生成できます。これを行うには、ウェーブアクションを実行します: リプラットフォーム>EC2>EC2 が CF テンプレートを生成する。このアクションは、ウェーブ内の各アプリケーション用に CloudFormation テンプレートを作成します。この場合、アプリケーション内のサーバーには [リプラットフォーム][移行戦略] があります。他の移行戦略が定義されているサーバーはテンプレートに含まれません。

実行すると、各アプリケーションのテンプレートは S3 バケット: -gfbuild-cftemplates に保存されます。これは、AWS での Cloud Migration Factory がデプロイされたときに自動的に作成されました。このバケットのフォルダ構造は以下のとおりです。

  • [ターゲット AWS アカウント ID]

  • [ウェーブ名]

    • CFN_Template_ \_ –0—yaml

生成アクションが実行されるたびに、テンプレートの新しいバージョンが S3 バケットに保存されます。テンプレートの S3 URI は通知に記載されます。これらのテンプレートはデプロイ前に必要に応じて確認または編集できます。

現在、CloudFormation テンプレートは以下の CloudFormation リソースタイプを生成しています。

  • AWS::EC2::Instance

  • AWS::EC2::Volume

  • AWS::EC2::VolumeAttachment

EC2 デプロイ

新しい EC2 インスタンスをデプロイする準備ができたら、EC2 デプロイアクションはウェーブアクションリプラットフォーム>EC2>EC2 デプロイから開始できます。このアクションでは、ウェーブ内の各アプリケーション用の最新バージョンの CloudFormation テンプレートを使用し、AWS CloudFormation で選択したターゲットアカウントにこれらのテンプレートをデプロイします。