

# ステップ 7: 移行自動化サーバーを設定する
<a name="configure-migration-automation-server"></a>

移行自動化サーバーは、移行自動化を実行するために使用されます。

## Windows サーバーを構築する
<a name="build-a-windows-server"></a>

サーバーは AWS アカウントで作成することをお勧めしますが、オンプレミス環境でも作成できます。AWS アカウントに構築する場合は、Cloud Migration Factory と同じ AWS アカウントとリージョンで構築する必要があります。サーバー要件を確認するには、「[移行自動化サーバー](components.md#comp-mes)」を参照してください。

Windows Server 2025 ベースイメージを使用することをお勧めしますが、Windows Server 2019 以降もサポートされています。Windows インスタンスをどこにデプロイする場合でも、セキュリティおよび運用要件を満たす標準インストールとしてデプロイする必ことをお勧めします。

**注記**  
インスタンスを起動するときに、RDP アクセスの管理者パスワードを取得するキーペアを割り当てます。Windows Server 2019 ベース以降を使用している場合は、AWS Systems Manager (SSM) を使用して接続するため、セキュリティグループにインバウンド接続は必要ありません。

## 移行自動化サーバーの AWS アクセス許可を設定する
<a name="configure-aws-permissions-for-the-migration-automation-server"></a>

移行実行サーバーをデプロイする場所に応じて、以下のオプションのいずれかを選択して、移行自動化サーバーに対して AWS の権限を設定します。IAM ロールまたはポリシーは、自動化サーバーへのアクセス許可と AWS Secrets Manager へのアクセスを提供し、エージェントのインストールキーとファクトリサービスのアカウント認証情報を取得します。移行自動化サーバーは、EC2 インスタンスとして AWS にデプロイするか、オンプレミスにデプロイすることができます。

### オプション 1: 同じアカウントとリージョンに EC2 移行自動化サーバーを設定する
<a name="option-1"></a>

1. [[AWS CloudFormation コンソール]](https://console.aws.amazon.com/cloudformation/home) に移動して、ソリューションのスタックを選択します。

1. **[出力]** タブを選択し、**[キー]** 列の下にある `AutomationServerInstanceProfile` を確認し、デプロイで後に使用する **[値]** を記録します。

    **出力] タブ**   
![CFN コンソール [出力] タブ](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/cfn-console-outputs-tab.png)

1. [Amazon Elastic Compute Cloud (EC2)](https://console.aws.amazon.com/ec2/v2/home) コンソールに移動します。

1. 左のナビゲーションペインから、**[インスタンス]** を選択します。

1. **[インスタンス]** ページで、[インスタンスをフィルタリング] フィールドを使用し、移行実行サーバーの名前を入力してインスタンスを検索します。

1. インスタンスを選択し、**[アクション]** メニューを選択します。

1. ドロップダウンリストから **[セキュリティ]** を選択し、**[IAM ロールを変更]** を選択します。  
![f6 EC2 コンソール](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/f6-ec2-console.png)

1. IAM ロールのリストから、この手順で前に記録した `AutomationServerInstanceProfile` の値を含む IAM ロールを探して選択し、**[保存]** を選択します。

1. インスタンスを選択してから、**[接続]** を選択します。

1. **[セッションマネージャー]** タブで、ステータスが **[接続済み]** と表示されていることを確認します。
**注記**  
数分経ってもインスタンスに接続できない場合は、RDP を使用して接続を試みてください。SSM がまだ接続されていないため、外部接続を許可するようにセキュリティグループを更新する必要があります。

1. 移行自動化サーバーの EC2 インスタンスに次のタグを追加します: **キー** = `role` および **値** = `mf_automation`。

    **EC2 コンソール**   
![タグ ec2 を追加する](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/add-tag-ec2.png)

### オプション 2: オンプレミス移行自動化サーバーを設定する
<a name="option-2"></a>

1. [[AWS CloudFormation コンソール]](https://console.aws.amazon.com/cloudformation/home) に移動して、ソリューションのスタックを選択します。

1. **[出力]** タブを選択し、**[キー]** 列の下にある `AutomationServerIAMPolicy` を確認し、デプロイで後に使用する [値] を記録します。

    **出力] タブ**   
![出力自動化サーバーの IAM ポリシー](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/outputs-automation-server-iam-policy.png)

1. [AWS Identity and Access Management (IAM)](https://console.aws.amazon.com/iam/home) コンソールに移動します。

1. 左側のナビゲーションペインで **[ユーザー]**、**[ユーザーの追加]** の順に選択します。

1. **[ユーザー名]** フィールドで、新しいユーザーを作成します。

1. [**次へ**] を選択します。

1. **[アクセス許可の設定]** ページの **[権限オプション]** で、**[ポリシーを直接アタッチする]** を選択します。ポリシーのリストが表示されます。

1. ポリシーのリストから、「[スタックを起動する](launch-the-stack.md)」で記録した `AutomationServerIAMPolicy` の値を含むポリシー探して選択します。

1. **[次へ]** を選択し、正しいポリシーが選択されていることを確認します。

1. **[ユーザーの作成]** を選択します。

1. **[ユーザー]** ページにリダイレクトした後、前のステップで作成したユーザーを選択し、**[セキュリティ認証情報]** タブを選択します。

1. [**Access keys (アクセスキー)**] セクションで、[**Create access key (アクセスキーを作成)**] を選択します。
**注記**  
アクセスキーはアクセスキー ID と秘密アクセスキーからなり、AWS に対するプログラムによるリクエストに署名するときに使用されます。アクセスキーがない場合は、AWS マネジメントコンソールから作成できます。ベストプラクティスとして、必須ではないタスクではルートユーザーアクセスキーを使用しないでください。代わりに、自身用のアクセスキーを持つ[新しい管理者 IAM ユーザーを作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started_create-admin-group.html)します。  
シークレットアクセスキーを表示またはダウンロードできるのは、キーを作成するときのみです。後で回復することはできません。ただし、いつでも新しいアクセスキーを作成できます。また、必要な IAM アクションを実行するための許可が必要です。詳細については、「*IAM ユーザーガイド*」の「[IAM リソースにアクセスするために必要な許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_permissions-required.html)」を参照してください。

1. 新しいアクセスキーのペアを表示するには、[**Show**] (表示) を選択します。このダイアログボックスを閉じた後で、シークレットアクセスキーに再度アクセスすることはできません。認証情報は以下のようになります:
   +  `Access key ID: AKIAIOSFODNN7EXAMPLE` 
   +  `Secret access key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY` 

1. キーペアをダウンロードするには、[**Download .csv file.csv (.csv ファイルのダウンロード)**] を選択します。このキーは安全な場所に保存してください。このダイアログボックスを閉じた後で、シークレットアクセスキーに再度アクセスすることはできません。
**重要**  
アカウントを保護するためにキーは機密として扱い、メールでは決して送信しないでください。AWS または Amazon.com を名乗る人物から問い合わせがあった場合でも、所属している組織外にこの情報を公開してはいけません。Amazon を正式に代表する人物がこの情報を要求することは一切ありません。

1. `0csv` ファイルをダウンロードしたら、[**Close(閉じる)**] を選択します。アクセスキーを作成すると、キーペアはデフォルトで有効になり、すぐにキーペアを使用できるようになります。

1. リモートデスクトッププロトコル (RDP) を使用して移行実行サーバーにログインします。

1. 管理者として、コマンドプロンプト (`CMD.exe`) を開きます。

1. 以下のコマンドを実行して、サーバー上に AWS 認証情報を設定します。{{<your\_access\_key\_id>}}、{{<your\_secret\_access key>}}、と{{<your\_region>}}を、次の値と置換します。

   ```
   SETX /m AWS_ACCESS_KEY_ID <your_access_key_id>
   SETX /m AWS_SECRET_ACCESS_KEY <your_secret_access key>
   SETX /m AWS_DEFAULT_REGION <your_region>
   ```

1. 自動化サーバーを再起動します。

1. ハイブリッドモード (オンプレミスサーバー) を使用して SSM エージェントをインストールします。

   1. ハイブリッドアクティベーションを作成します。*AWS Systems Manager ユーザーガイド*」の「[アクティベーションの作成 (コンソール)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-managed-instance-activation.html#create-managed-instance-activation-console)」を参照してください。このプロセス中に IAM ロールの入力を求められたら、既存の IAM ロールを選択し、サフィックス **-automation-server** の付いたロールを選択します。これは、Cloud Migration Factory スタックがデプロイされたときに自動的に作成されました。

   1. 移行自動化サーバーに管理者としてログインします。

   1. SSM エージェントをインストールします。「*AWS Systems Manager ユーザーガイド*」の「[ハイブリッドおよびマルチクラウド環境用の SSM エージェントのインストール](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-win.html)」を参照してください。ステップ 20.a で作成したハイブリッドアクティベーションを使用してください。

   1. SSM エージェントをインストールしたら、SSM コンソールで **[Fleet Manager]** を選択します。**mi-** プレフィックスを持ち、**オンライン**ステータスのノード ID を特定します。

       **Fleet Manager**   
![Fleet Manager](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/fleet-manager.png)

   1. **[ノード ID]** を選択し、IAM ロールが **automation-server** サフィックスを持つ選択したものであることを確認します。

   1. このハイブリッドノードに次のタグを追加します: **キー** = `role` および **値** = `mf_automation`。すべて小文字。

       **タグ - ハイブリッドノード**   
![タグハイブリッドノード](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/tag-hybrid-node.png)

## オートメーションをサポートするために必要なソフトウェアをインストールする
<a name="installing-required-software"></a>

1. 移行自動化サーバーに接続するには、EC2 コンソールでインスタンスを選択し、**[接続]** > **[RDP クライアント]** > **[Fleet Manager を使用して接続する]** > **[Fleet Manager Remote Desktop]** の順に選択します。[管理者] としてログインします。

1. [Python v3.14.4](https://www.python.org/ftp/python/3.14.4/python-3.14.4-amd64.exe) をダウンロードします。スタンドアロンの Python インストーラ (Python インストールマネージャーではない) を使用するすべてのユーザー向けにインストールした場合、他のバージョンの Python でも動作する可能性があります。

1. Python インストーラを実行し、**[インストールをカスタマイズ]** を選択します。

1. **[次へ]**、**[すべてのユーザーにインストール]**、**[Python を環境変数に追加する]** の順に選択します。**[インストール]** を選択します。

    **Migration Factory ウェブインターフェイスの [属性の詳細] タブ**   
![Python の詳細オプション](http://docs.aws.amazon.com/ja_jp/solutions/latest/cloud-migration-factory-on-aws/images/python-advanced-options.png)

1. 管理者権限があることを確認し、`cmd.exe` を開き、次のコマンドを実行して Python パッケージを 1 つずつインストールします。

   ```
   python -m pip install requests
   python -m pip install paramiko
   python -m pip install boto3
   ```

   これらのコマンドのいずれかが失敗した場合は、以下のコマンドを実行して pip をアップグレードしてください。

   ```
   python -m pip install --upgrade pip
   ```

1. 次のコマンドを実行して、AWS CLI (コマンドラインインターフェイス) をインストールします。

   ```
   msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi
   ```

   詳細については、「*AWS CLI ユーザーガイド*」の「[AWS CLI の最新バージョンをインストールまたは更新する](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)」を参照してください。

1. PowerShell を開き、PowerShell for AWS モジュールをインストールし、コマンドに \*-Scope AllUsers \* パラメータが含まれていることを確認します。

   ```
   Install-Module -Name AWSPowerShell -Scope AllUsers
   ```

   詳細については、「*AWS Tools for PowerShell ユーザーガイド*」の「[AWS Tools for PowerShell のインストール](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up-windows.html#ps-installing-awswindowspowershell)」を参照してください。

1. スクリプトの実行を有効にするには、管理者として PowerShell を開き、次のコマンドを実行します。

   ```
   Set-ExecutionPolicy RemoteSigned
   ```