リソースマネージャーとは
[更新日:2019年7月18日]
概要
リソースマネージャーは、テンプレートを記述することでさくらのクラウド上のリソースを一括して作成・更新・削除できる機能です。本機能は HashiCorp が提供する Terraform の構成情報と一部に互換性があり、既存の構成情報の活用や学習コストを最小限に利用することが可能です。

利点
よく利用するインフラ構成など、繰り返し行う操作をテンプレートに記述して自動化することができます。例えば、グループやプロジェクトでクラウド上にシステムを構築する場合、チームやグループ内で定型的な初期構成パターン(フロント用のサーバが○台、バックエンド用のサーバが○台、これらをローカルネットワークで接続しVPC ルータの下で構築…など)をテンプレート化することで、
作業ミスなく迅速に構築できる
何度でも再利用できる
リソースの変更情報を報告書や手順書ではなく、テンプレートの変更を通して管理できる
不要なリソースが作成されてしまうことが無く、より効率的にリソースを管理できる
といったメリットがあります。
注釈
テンプレート化の例については 構成例 を参照ください。
Terraform や Terraform Enterprise との違い
リソースマネージャーのシステム内部では、Terraform(オープンソース版)およびTerraform for さくらのクラウド・プロバイダを使用しています。さくらのクラウドはTerraformを用いて操作できますが、コマンドライン・ツールのダウンロードや環境変数の設定など、コマンドライン操作の習熟が必要です。
リソースマネージャーはコントロールパネル上で操作できます。Terraformをセットアップしなくても、コントロールパネルを操作するだけで、テンプレートの確認・編集と、クラウド上への反映を行えます。また、複数人でインフラを管理している場合は、常に1つのテンプレートを通して編集するため、設定情報の競合や矛盾の発生を抑制するのに役立ちます。
違いに関する詳細は、 リソースマネージャーと Terraform の違い をご覧ください。
リソースマネージャーに対応するリソース一覧
リソースマネージャーで操作可能なリソースは以下の通りです(記載の無い機能はご利用いただけません)。
対応リソースの詳細や tffile への記載方法は、 さくらのクラウド for Terraform のドキュメント をご覧ください。
ご利用の手順
リソースマネージャーでは実際のリソースの操作にAPIキーを使用するため、事前に APIキー の作成が必要です。その後テンプレートを作成し、構成情報の計画・反映を行います。

1. 事前準備
リソースマネージャーでは、「作成・削除」の権限を持つ APIキー が必要です。作成していない場合は、ホーム画面のメニューから「APIキー」を選択し、対象アカウントごとにAPIキーを作成します。詳しくは APIキー のページを参照ください。
2. リソースマネージャーでテンプレートを作成
コントロールパネル上部の「オプション」をクリックし、表示されたメニューから「リソースマネージャー」をクリックします。作成済みのテンプレートが一覧表示されます。新たに作成する場合は画面右上の「追加」をクリックします。

テンプレート作成画面で必要事項を選択・入力します。

各項目は以下の通りです。
構成先ゾーン(※) |
リソースを作成するゾーンを選択します。 |
---|---|
実行環境バージョン |
テンプレートを実行する際のバージョンを選択します。 |
APIキー(※) |
テンプレートに沿ってサーバを構成する際、クラウドのリソース操作に使用するAPIキーを選択します。 |
作成したテンプレートを分かりやすく管理することができます。 |
(※)は必須項目です
各項目を入力後、「作成」ボタンををクリックします。
注意
さくらのクラウドユーザとしてログインしている場合、リソースマネージャーを利用することができません。さくらインターネット会員としてログインしてご利用ください。
作成が完了したら、左メニューの「リソースマネージャー」をクリックします。そして、作成したテンプレート名を選択し、詳細設定に進みます。

3. テンプレートの作成・編集
テンプレートを作成直後は、構成情報がないため、登録する必要があります。リソースマネージャーのテンプレート情報の画面を表示し、「tffile を変更」をクリックします。

それから、「tffile」のフォームにテンプレート構成情報を記入します。あるいは「テンプレート」から既定のテンプレートの選択もできます。その場合は「テンプレート」をクリックします。それから希望する構成をクリックして選んだ後、右下の「選択」をクリックします。

また、テンプレートの作成・編集においては ### 文字列を使い、タブとして分割して表示することもできます。タブの表示は、この編集画面中で「タブ分割/結合」ボタンを押して切り替えられます。
編集が終われば「変更」をクリックします。

注釈
構成情報の書き方は、リファレンス(追加予定)にあるリンク先の情報をご覧ください。
4. コマンドの計画・反映
テンプレートの内容を反映するには「コマンド」の実行が必要です。実際にリソースを作成する前に、必ず「計画」コマンドを実行します。
計画と反映
「コマンド」→「反映」をクリックします。

テンプレート内容とクラウド上の構成を比較し、これからどのような変更を行うかを画面上に表示します。テンプレートの新規作成時は、通常、すべてのリソースを新規作成します。
確認画面では、「計画」をクリックします。この段階ではリソースを作成していません。テンプレートの中の状態と、クラウド上のリソースを比較し、どのような処理を行うかを画面上に表示します(terraform plan に相当)。

問題がなければ、「次へ」をクリックします。もしテンプレートの構文にエラーがあれば、画面上に表示されます。エラー内容を確認の上、テンプレートを修正し、再び計画を実行します。

注意事項をご確認の上、「反映」をクリックします(terraform apply に相当)。

注意
反映を実行すると、自動的に各リソースを作成します。各リソースはそれぞれの作成完了後、課金開始となります。
エラー発止やブラウザを閉じて反映処理が中断しても、作成済みのリソースに対する課金は取り消せません。
リソースに空きがない場合は処理が中断します。反映をする前に、予め必要なリソースが利用できる状態かどうか、ご確認ください。
注意
テンプレート上の構成情報を追加・削除して反映すると、テンプレートの内容にあわせてリソースも追加・削除されます。編集する場合は十分にご注意ください。
あとは「ログ」のタブから、作業が終わるのを待ちます。「最新の情報に更新」をクリックし、処理完了までお待ちください。

5. 破棄
テンプレートで作成した環境を全て削除するには「コマンド」から「破棄」を選択します。これはテンプレートの破棄ではなく、作成したリソース全体を削除しますので、操作にご注意ください。
注意
破棄によって削除したリソースの復旧はできません。必要なデータがあれば、かならず事前に他のアーカイブやディスク等にデータのコピーや、設定情報を記録してください。テンプレートを使ってもう一度計画・反映しても、新しいリソースが再作成されるだけであり、内容は保持されません。
注意事項
テンプレートの制限事項
本機能のテンプレートは、Terraform のリソースマネージャーファイルの書式に準じます。しかし、以下のリソース指定をサポートしません。
provider
provisioner
module
その他、詳しい情報については リソースマネージャーと Terraform の違い を参照ください。
Terraform実行バージョンについて
テンプレート作成時、「実行環境バージョン」のポップアップメニューでTerraform実行バージョンを選択可能です。Terraformの記法による構成情報の記述を行う場合は構文バージョンに合わせて選択してください。