

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# RFC を作成する
<a name="ex-rfc-create-col"></a>

## コンソールを使用した RFC の作成
<a name="ex-rfc-create-con"></a>

以下は、AMS コンソールでの RFC 作成プロセスの最初のページです。**クイックカード**が開き、**変更タイプの参照**がアクティブになっています。

![\[Quick create section with options for common AWS stack operations and access management.\]](http://docs.aws.amazon.com/ja_jp/managedservices/latest/userguide/images/quickCreate1.png)


以下は、AMS コンソールで RFC 作成プロセスの最初のページで、**カテゴリ別に選択**がアクティブになっています。

![\[Create RFC page with change type categorization options for managed services environment.\]](http://docs.aws.amazon.com/ja_jp/managedservices/latest/userguide/images/guiRfcCreate1-2.png)


仕組み:

1. **RFC **の作成ページに移動します。AMS コンソールの左側のナビゲーションペインで**RFCs** をクリックして RFCsリストページを開き、**RFC の作成**をクリックします。

1. デフォルトの変更タイプ参照ビューで一般的な**変更タイプ** (CT) を選択するか、**カテゴリ別選択ビューで CT **を選択します。
   + **変更タイプ別に参照**: **クイック作成**エリアで一般的な CT をクリックすると、すぐに **RFC の実行**ページを開くことができます。クイック作成で古い CT バージョンを選択することはできません。

     CTs をソートするには、**カード**ビューまたは**テーブル**ビューで**すべての変更タイプ**エリアを使用します。どちらのビューでも、CT を選択し、**RFC の作成**をクリックして **RFC の実行**ページを開きます。必要に応じて、RFC **の作成ボタンの横に古いバージョンで**作成オプションが表示されます。 ****
   + **カテゴリ別に選択**: カテゴリ、サブカテゴリ、項目、オペレーションを選択すると、CT 詳細ボックスが開き、必要に応じて**古いバージョンで作成する**オプションが表示されます。**RFC の作成**をクリックして、**RFC の実行**ページを開きます。

1. **RFC の実行**ページで、CT 名エリアを開き、CT の詳細ボックスを表示します。**件名**は必須です (**変更タイプの参照**ビューで CT を選択した場合は入力されます）。**追加設定**エリアを開き、RFC に関する情報を追加します。

   **実行設定**領域で、使用可能なドロップダウンリストを使用するか、必要なパラメータの値を入力します。オプションの実行パラメータを設定するには、**追加設定**エリアを開きます。

1. 完了したら、**実行** をクリックします。エラーがない場合、**RFC が正常に作成された**ページに、送信された RFC の詳細と最初の**実行出力**が表示されます。

1. **Run parameters** 領域を開き、送信した設定を確認します。ページを更新して RFC 実行ステータスを更新します。必要に応じて、RFC をキャンセルするか、ページ上部のオプションを使用して RFC のコピーを作成します。

## CLI を使用した RFC の作成
<a name="ex-rfc-create-cli"></a>

仕組み:

1. インライン作成 (すべての RFC と実行パラメータを含む`create-rfc`コマンドを発行) またはテンプレート作成 (2 つの JSON ファイルを作成し、1 つは RFC パラメータ用、もう 1 つは実行パラメータ用) のいずれかを使用し、2 つのファイルを入力として`create-rfc`コマンドを発行します。どちらの方法もここで説明します。

1. 返された RFC ID を使用して RFC: `aws amscm submit-rfc --rfc-id ID` コマンドを送信します。

   RFC: `aws amscm get-rfc --rfc-id ID` コマンドをモニタリングします。

変更タイプのバージョンを確認するには、次のコマンドを使用します。

```
aws amscm list-change-type-version-summaries --filter Attribute=ChangeTypeId,Value=CT_ID
```
**注記**  
変更タイプのスキーマの一部であるかどうかにかかわらず、任意の RFC で任意の`CreateRfc`パラメータを使用できます。たとえば、RFC ステータスが変更されたときに通知を受け取るには、リクエストの RFC パラメータ部分 (実行パラメータではなく) `--notification "{\"Email\": {\"EmailRecipients\" : [\"email@example.com\"]}}"`にこの行を追加します。すべての CreateRfc パラメータのリストについては、[AMS 変更管理 API リファレンス](https://docs.aws.amazon.com/managedservices/latest/ApiReference-cm/API_CreateRfc.html)を参照してください。

*インライン作成*:

インラインで指定された実行パラメータ (インラインで実行パラメータを指定する場合は引用符をエスケープ) を指定して create RFC コマンドを発行し、返された RFC ID を送信します。たとえば、コンテンツを次のような内容に置き換えることができます。

```
aws amscm create-rfc --change-type-id "CT_ID" --change-type-version "VERSION" --title "TITLE" --execution-parameters "{\"Description\": \"example\"}"
```

*テンプレートの作成*:
**注記**  
RFC を作成するこの例では、Load Balancer (ELB) スタック変更タイプを使用します。

1. 関連する CT を見つけます。次のコマンドは、**項目**名に「ELB」が含まれている CT 分類の概要を検索し、Category、Item、Operation、ChangeTypeID の出力をテーブル形式で作成します (両方のサブカテゴリは です`Advanced stack components`)。

   ```
   aws amscm list-change-type-classification-summaries --query "ChangeTypeClassificationSummaries[?contains(Item,'ELB')].[Category,Item,Operation,ChangeTypeId]" --output table
   ```

   ```
   ---------------------------------------------------------------------
   |                            CtSummaries                            |
   +-----------+---------------------------+---------------------------+
   | Deployment| Load balancer (ELB) stack | Create | ct-123h45t6uz7jl |
   | Management| Load balancer (ELB) stack | Update | ct-0ltm873rsebx9 |
   +-----------+---------------------------+---------------------------+
   ```

1. CT の最新バージョンを見つけます。

   `ChangeTypeId` および `ChangeTypeVersion`: このウォークスルーの変更タイプ ID は `ct-123h45t6uz7jl` (ELB を作成) です。最新バージョンを確認するには、次のコマンドを実行します。

   ```
   aws amscm list-change-type-version-summaries --filter Attribute=ChangeTypeId,Value=ct-123h45t6uz7jl
   ```

1. オプションと要件について説明します。次のコマンドは、CreateElbParams.json.

   ```
   aws amscm get-change-type-version --change-type-id "ct-123h45t6uz7jl" --query "ChangeTypeVersion.ExecutionInputSchema" --output text > CreateElbParams.json
   ```

1. 実行パラメータ JSON ファイルを変更して保存します。この例では、CreateElbParams.json.

   プロビジョニング CT の場合、StackTemplateId はスキーマに含まれ、実行パラメータで送信する必要があります。

   TimeoutInMinutes の場合、RFC が失敗するまでにスタックの作成に許可される分数。この設定は RFC の実行を遅らせませんが、十分な時間を与える必要があります (たとえば、「5」を指定しないでください）。UserData: Create EC2 and Create ASG が長時間実行される CTs」～「360」です。他のすべてのプロビジョニング CTs」をお勧めします。

   スタックを作成する VPC の ID を指定します。VPC ID は CLI コマンド で取得できます`aws amsskms list-vpc-summaries`。

   ```
   {
   "Description":      "ELB-Create-RFC", 
   "VpcId":            "VPC_ID", 
   "StackTemplateId":  "stm-sdhopv00000000000", 
   "Name":             "MyElbInstance",
   "TimeoutInMinutes": 60,
   "Parameters":   {
       "ELBSubnetIds":                     ["SUBNET_ID"],
       "ELBHealthCheckHealthyThreshold":   4,
       "ELBHealthCheckInterval":           5,
       "ELBHealthCheckTarget":             "HTTP:80/",
       "ELBHealthCheckTimeout":            60,
       "ELBHealthCheckUnhealthyThreshold": 5,
       "ELBScheme":                        false
       }
   }
   ```

1. RFC JSON テンプレートを CreateElbRfc.json:

   ```
   aws amscm create-rfc --generate-cli-skeleton > CreateElbRfc.json
   ```

1. CreateElbRfc.json ファイルを変更して保存します。実行パラメータを別のファイルに作成したため、`ExecutionParameters`行を削除します。たとえば、コンテンツを次のような内容に置き換えることができます。

   ```
   {
   "ChangeTypeVersion":    "2.0",
   "ChangeTypeId":         "ct-123h45t6uz7jl",
   "Title":                "Create ELB"
   }
   ```

1. RFC を作成します。次のコマンドは、実行パラメータファイルと RFC テンプレートファイルを指定します。

   ```
   aws amscm create-rfc --cli-input-json file://CreateElbRfc.json --execution-parameters file://CreateElbParams.json
   ```

   レスポンスで新しい RFC の ID を受け取り、それを使用して RFC を送信およびモニタリングできます。送信するまで、RFC は編集状態のままであり、開始されません。

## ヒント
<a name="ex-rfc-create-tip"></a>

**注記**  
AMS API/CLI を使用して、RFC JSON ファイルまたは CT 実行パラメータ JSON ファイルを作成せずに RFC を作成できます。これを行うには、 `create-rfc` コマンドを使用し、必要な RFC および実行パラメータを コマンドに追加します。これは「インライン作成」と呼ばれます。すべてのプロビジョニング CTs には、リソースのパラメータを含む`Parameters`配列が`execution-parameters`ブロックに含まれていることに注意してください。パラメータには、バックスラッシュ (\$1) でエスケープされた引用符が必要です。  
RFC を作成する他の文書化された方法は、「テンプレートの作成」と呼ばれます。ここでは、RFC パラメータ用の JSON ファイルと実行パラメータ用の別の JSON ファイルを作成し、 `create-rfc` コマンドを使用して 2 つのファイルを送信します。これらのファイルはテンプレートとして機能し、将来の RFCs に再利用できます。  
テンプレートを使用して RFCs を作成する場合、 コマンドを使用して、次に示すようにコマンドを発行することで、必要な内容の JSON ファイルを作成できます。コマンドは、表示された内容で「parameters.json」という名前のファイルを作成します。これらのコマンドを使用して RFC JSON ファイルを作成することもできます。