【GCP入門編・第27回】インスタンステンプレートを使って、よく使うインスタンスを素早く立ち上げよう!
投稿日:2018/12/26 | 最終更新日:2020/09/10
ロードバランサーの背後にアプリケーションサーバーを複数立ち上げる場合、どのように効率良くサーバーの起動を行えば良いでしょうか。 GCP には、 Cloud Load Balancing というサービスがあり、Compute Engine のインスタンスに対してロードバランシングを行うことが可能です。この時に、ロードバランサーの背後に配置するサーバーを管理するために使用するのが、インスタンステンプレートと、次の記事で解説するインスタンスグループです。
この記事では、インスタンステンプレートの作成方法と使用方法を解説していきます。
この記事の目的
- インスタンステンプレートとは何かを学ぼう。
- インスタンステンプレートの作り方と使い方を覚えよう。
インスタンステンプレートとは
インスタンステンプレートとは、 Compute Engine のインスタンスを作成するためのテンプレートとして使用される、 REST API のリソースです。
Compute Engine のインスタンスタイプ、イメージ、ブートディスクや VPC Network など、インスタンスを作成するための API リクエストで指定することのできる属性を指定することができます。インスタンスのメタデータやスタートアップスクリプト、永続ディスクやサービスアカウントなども指定することが可能です。
インスタンステンプレートはブラウザ上のコンソール、 gcloud コマンド、 API 経由で使用することが可能です。 API 経由でインスタンステンプレートを作成する場合、以下の例のような JSON でテンプレートを定義します。
{
"name": "example-template",
"properties": {
"machineType": "n1-standard-4",
"networkInterfaces": [
{
"network": "global/networks/default",
"accessConfigs":
[
{
"name": "external-IP",
"type": "ONE_TO_ONE_NAT"
}
]
}
],
"disks":
[
{
"type": "PERSISTENT",
"boot": true,
"mode": "READ_WRITE",
"initializeParams":
{
"sourceImage": "projects/debian-cloud/global/images/family/debian-9"
}
}
]
}
}
上の例では、 example-template
という名前でテンプレートを定義しており、 このテンプレートを使用動することで、タイプが n1-standard-4
, ネットワークのインターフェースが1つ、ブートディスクが projects/debian-cloud/global/images/family/debian-9
となっているインスタンスを作成することが可能です。
インスタンステンプレートを作成する
それでは、実際にインスタンステンプレートを作成し、それを使ってインスタンスを起動してみます。まずはブラウザのコンソールを立ち上げて下さい。
コンソール左側のメニューから [Compute Engine] をクリックし、表示されたメニューの [Instance templates] をクリックします。
初めてインスタンステンプレートを作成する場合、画面には以下のように [Create Instance template] のボタンのみが表示されています。 [Create Instance template] をクリックし、インスタンステンプレートの作成に進みます。
下の画面はインスタンステンプレートの作成画面です。 Compute Engine のインスタンス作成画面とほぼ同じものが表示されています。 Machine Type を [small (1 shared vCPU)] に変更し、 [Create] をクリックします。
インスタンステンプレートの作成が完了すると、 インスタンステンプレートの一覧画面が表示されます。次のセクションでは、作成したインスタンステンプレートを使って、インスタンスを立ち上げます。
インスタンステンプレートを使ってインスタンスを立ち上げる
先ほど作成したインスタンステンプレートを使って、インスタンスを立ち上げます。
まず、インスタンステンプレートの一覧画面から、先ほど作成した [instance-template-1] をクリックします。クリックすると、以下の詳細表示画面が表示されます。
ここで、上に表示されている [Create VM] ボタンをクリックすると、インスタンスの作成画面が表示されます。インスタンステンプレートはゾーンと関係なく使用できるリソースですので、この画面でゾーンを選択し、インスタンスを起動します。
インスタンステンプレートは編集することができません。インスタンステンプレートの内容を更新したい場合は、削除して新しいインスタンステンプレートを作成しましょう。
おわりに
いかがでしたか。単純な例の紹介となってしまいましたが、インスタンスの設定項目を毎回考える必要がなくなるため、同じ設定でインスタンスを使用することが多い場合に便利に使用できる機能です。
次の記事で紹介するインスタンスグループは、インスタンステンプレートを用いて同じタイプのインスタンスを複数作成する機能です。インスタンステンプレート・インスタンスグループ・ Cloud Load Balancing を組み合わせることで、 Compute Engine のインスタンスに対してロードバランシングを行うことが可能です。
弊社トップゲートでは、 GCP 、または G Suite 導入をご検討をされているお客様へ「Google Meet で無料個別相談会」を実施いたします。導入前に懸念点を解決したい方、そもそも導入した方がいいのかをお聞きしたい方はお気軽にお申し込みください!
弊社トップゲートでは、GCPを活用したトレーニングも開催しておりますので、ご興味ございましたらお気軽にお問い合わせください!
メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
GCP、G Suite、TOPGATEの最新情報満載!
同じシリーズの記事
-
【GCP入門編・第31回】 GCP のネットワークにサブネットを追加する
-
【GCP入門編・第30回】 Cloud CDNで静的ファイルの配布を行う
-
【GCP入門編・第29回】Cloud Load Balancing で Web アプリケーションにロードバランサーを設定する
-
【GCP入門編・第28回】インスタンスグループを使って複数のインスタンスを管理する
-
【GCP入門編・第27回】インスタンステンプレートを使って、よく使うインスタンスを素早く立ち上げよう!
-
【GCP入門編・第26回】 Cloud DNS でドメインの DNS レコードを作成しよう!
-
【GCP入門編・第25回】 Cloud SQL for MySQL で Master-Slave 構成を組もう!
-
【GCP入門編・第24回】 Stackdriver Debugger で本番環境のデバッグを行おう!
-
【GCP入門編・第23回】 Stackdriver Error Reporting でアプリケーションのエラーを収集しよう!
-
【GCP入門編・第22回】 Stackdriver Logging で収集したログに対して、フィルタの実行や警告を設定しよう!
-
【GCP入門編・第21回】 Stackdriver Logging でアプリケーションのログを収集しよう!
-
【GCP入門編・第20回】 手間いらずでログ管理ができる Stackdriver Logging のご紹介!
-
【GCP入門編・第19回】 Stackdriver Monitoring でメールや Slack による通知を設定しよう!
-
【GCP入門編・第18回】 Stackdriver Monitoring で Google App Engine の監視をしよう!
-
【GCP入門編・第17回】 Stackdriver Monitoring で Google Compute Engine を監視しよう!
-
【GCP入門編・第16回】アプリのパフォーマンスを視覚的に確認できる Stackdriver Monitoring を紹介!
-
【GCP入門編・第15回】 GCP から AWS までモニタリングできる Google Stackdriver を紹介!
-
【GCP入門編・第14回】 Cloud Functions を使ってサーバレスアーキテクチャを体験しよう!
-
【GCP入門編・第13回】 Cloud Datalab でデータの可視化を行ってみよう!
-
【GCP入門編・第12回】 BigQuery を使って気軽にビッグデータの解析を行ってみよう!
-
【GCP入門編・第11回】 Google Cloud Dataproc を使ってデータを解析しよう!
-
【GCP入門編・第10回】スケーラブルな NoSQL データベースサービス Cloud Bigtable を使ってみよう!
-
【GCP入門編・第9回】 Cloud Shell で、いつでもどこでも Google Cloud Platform (GCP) が操作可能に!
-
【GCP入門編・第8回】 Container Registry での Docker イメージの使用方法!
-
【GCP入門編・第7回】知らなきゃ損! Google Container Engine (GKE) での Dockerイメージを使ったコンテナの起動方法!
-
【GCP入門編・第6回】これは簡単! Google App Engine での Cloud Datastore の利用方法!
-
【GCP入門編・第5回】 Google App Engine の魅力とは? Google App Engine (GAE) でのアプリケーション起動方法!
-
【GCP入門編・第4回】すぐ出来なくても大丈夫!サンプルアプリで Google Compute Engine (GCE) の動作練習!
-
【GCP入門編・第3回】難しくない! Google Compute Engine (GCE) でのインスタンス起動方法!
-
【GCP入門編・第2回】まずは、ここから! Google Cloud Platform (GCP) の事前準備!
-
【GCP入門編・第1回】エンジニア必読!今さら聞けない、Google Cloud Platform (GCP) とは?