俺のアウトプット

調べたこと、試したことを書きます

サンプルテンプレート(JSON)をCloudFormation DesignerでYAMLに変換する

テンプレートを一から全て作成するのは面倒です。
そのような場合、AWS公式のサンプルテンプレートから目的に近いものをベースに作成すると、手間が省けます。

サンプルテンプレート

サンプルテンプレートは各リージョンごとに用意されています。
今回はAsia Pacific (Tokyo) Regionを選択します。

  • サンプルソリューション
    • SharePoint® Foundation 2010
    • Microsoft Windows Server Active Directory
    • Microsoft Windows Server の役割と機能
    • 基本的な WordPress (単一インスタンス)
    • スケーラブルで耐久性の高い WordPress
    • Chef を使用した WordPress のデプロイ
  • アプリケーションフレームワーク
    • 基本的な LAMP スタック
    • スケーラブルで耐久性の高い LAMP スタック
    • Ruby on Rails の基本
    • スケーラブルで耐久性の高い Ruby on Rails
  • サービス
    • Auto Scaling関連 (3)
    • AWS Config関連 (1)
    • Amazon DynamoDB関連 (2)
    • Amazon EC2関連 (3)
    • Amazon ElastiCache関連 (2)
    • AWS Elastic Beanstalk関連 (3)
    • Elastic Load Balancing関連 (4)
    • AWS Identity and Access Management関連 (1)
    • AWS OpsWorks関連 (2)
    • Amazon Relational Database Service関連 (4)
    • Amazon Redshift関連 (2)
    • Amazon Route 53関連 (3)
    • Amazon Simple Storage Service関連 (2)
    • Amazon Simple Queue Service関連 (2)
    • Amazon Virtual Private Cloud関連 (7)

各サンプルの[表示]リンクをクリックすると、JSON形式のテンプレートがブラウザで表示されます。 YAML形式が欲しい場合、CloudFormation Designerを起動してJSONからYAMLへ変換します。

CloudFormation Designer

各サンプルの[デザイナーで表示]リンクをクリックすると、CloudFormation Designerが起動されます。

f:id:kitsugi:20180816071800p:plain

【重要】Canvasペイン内のコンポーネントは操作しないでください。操作すると、テンプレート内にMetadata情報が追加されます。

  1. テンプレートの言語の選択で YAML を選択
  2. 左上の[ファイル]アイコンをクリック
  3. メニューの[保存]をクリック
    • ローカルファイルを選択、ファイル名を入力して[保存]ボタンをクリック
    • ブラウザによってはダウンロードされずにそのまま表示されます。その場合は、ページをローカルに保存してください。

これをベースに自分だけのテンプレートを作成してください。
断片的な書き方は、テンプレートスニペットが参考になります。

参考