注意: これは Deployment Manager API の非推奨バージョンです。代わりに、最新の API バージョンを使用してください。
デプロイの設定を定義する Template リソースを表します。
このリソースのメソッドのリストについては、このページの末尾をご覧ください。
リソースの表記
テンプレートは、Deployment の完全な構成を表します。
{ "name":string , "description":string , "modules": {(key) : { "type":string , "healthCheckModule": { "host":string , "path":string , "port":integer , "checkIntervalSec":integer , "timeoutSec":integer , "unhealthyThreshold":integer , "healthyThreshold":integer , "description":string }, "lbModule": { "targetModules": [string ], "ipProtocol":string , "healthChecks": [string ], "ipAddress":string , "portRange":string , "description":string }, "replicaPoolModule": { "numReplicas":integer , "envVariables": {(key) : { "value":string , "hidden":boolean } }, "resourceView":string , "replicaPoolParams": { "v1beta1": { "machineType":string , "zone":string , "baseInstanceName":string , "serviceAccounts": [ { "email":string , "scopes": [string ] } ], "description":string , "tags": { "fingerPrint":string , "items": [string ] }, "networkInterfaces": [ { "name":string , "network":string , "networkIp":string , "accessConfigs": [ { "name":string , "type":string , "natIp":string } ] } ], "metadata": { "fingerPrint":string , "items": [ { "key":string , "value":string } ] }, "canIpForward":boolean , "autoRestart":boolean , "initAction":string , "onHostMaintenance":string , "disksToCreate": [ { "boot":boolean , "autoDelete":boolean , "attachment": { "deviceName":string , "index":unsigned integer }, "initializeParams": { "sourceImage":string , "diskSizeGb":long } } ], "disksToAttach": [ { "source":string , "attachment": { "deviceName":string , "index":unsigned integer } } ] } }, "healthChecks": [string ] }, "autoscalingModule": { "minNumReplicas":integer , "maxNumReplicas":integer , "signalType":string , "targetUtilization":double , "targetModule":string , "description":string , "coolDownPeriodSec":integer }, "firewallModule": { "description":string , "network":string , "sourceRanges": [string ], "sourceTags": [string ], "targetTags": [string ], "allowed": [ { "IPProtocol":string , "ports": [string ] } ] }, "networkModule": { "description":string , "IPv4Range":string , "gatewayIPv4":string } } }, "actions": {(key) : { "commands": [string ], "timeoutMs":integer } } }
プロパティ名 | 値 | 説明 | メモ |
---|---|---|---|
actions |
object |
このテンプレートで定義するモジュールで使用するために定義されたアクション。 | |
actions.(key) |
nested object |
このアクションの名前。モジュール定義でアクションを指定するときに使用します。 | |
actions.(key).commands[] |
list |
このアクションで順番に実行するコマンドのリスト。 | |
actions.(key).timeoutMs |
integer |
このアクションの実行時間のタイムアウト(ミリ秒単位)。 | |
description |
string |
このテンプレートの説明。 | |
modules |
object |
このテンプレートのモジュールのリスト。 | |
modules.(key) |
nested object |
モジュールの名前。名前は次の正規表現 [a-zA-Z0-9-_]{1,64} に準拠している必要があります。 |
|
modules.(key).autoscalingModule |
nested object |
自動スケーリング モジュールを定義します。 | |
modules.(key).autoscalingModule.coolDownPeriodSec |
integer |
仮想マシン数の 2 回連続の変更の間にオートスケーラーが待機する秒数。仮想マシンの初期化時間以上の間隔を定義する必要があります。デフォルト値は 5 秒です。 | |
modules.(key).autoscalingModule.description |
string |
この自動スケーリング モジュールの説明(省略可)。 | |
modules.(key).autoscalingModule.maxNumReplicas |
integer |
自動スケーリングするレプリカの最大数。 | |
modules.(key).autoscalingModule.minNumReplicas |
integer |
自動スケーリングするレプリカの最小数。 | |
modules.(key).autoscalingModule.signalType |
string |
Deployment Manager が自動スケーリングが必要かどうかを判断するために使用するシグナル。 有効な値は次のとおりです。
|
|
modules.(key).autoscalingModule.targetModule |
string |
スケーリングするターゲット レプリカ プール モジュール。 | |
modules.(key).autoscalingModule.targetUtilization |
double |
ターゲットの使用率( (0, 1] ~ (0, 1] )。オートスケーラーは、目的のシグナルの値(現在は平均 CPU のみ)をこのターゲット レベル付近で維持するように動作します。たとえば、レプリカの平均 CPU 使用率が目標使用率を大幅に下回っている場合、オートスケーラーは目標使用率またはレプリカの最小数に達するまでスケールダウンします。平均 CPU がこの数を超えると、オートスケーラーはターゲット使用率またはリソースの最大数に達するまでスケールアップします。 |
|
modules.(key).firewallModule |
nested object |
Google Compute Engine のファイアウォール リソースと同等のファイアウォール モジュールを作成します。 | |
modules.(key).firewallModule.allowed[] |
quilist |
このファイアウォールで許可されるポートとプロトコルを定義します。 | |
modules.(key).firewallModule.allowed[].IPProtocol |
string |
このファイアウォール モジュールで許可される IP プロトコル。 tcp 、udp 、icmp 、または IP プロトコル番号のいずれかです。 |
|
modules.(key).firewallModule.allowed[].ports[] |
list |
許可されるポートまたはポート範囲のリスト(例:
["22"],
[?33?, "12345-12349"] )。 |
|
modules.(key).firewallModule.description |
string |
ファイアウォールの説明。 | |
modules.(key).firewallModule.network |
string |
このファイアウォールを適用するネットワーク モジュール。指定しない場合、または default
として指定した場合、このファイアウォールは default ネットワークに適用されます。 |
|
modules.(key).firewallModule.sourceRanges[] |
list |
このルールが適用される IP アドレス ブロック。 CIDR 形式で指定します。 sourceRanges と sourceTags のいずれか、または両方を設定できます。送信元の範囲またはタグが sourceRanges または sourceTags のいずれかに一致する場合、上り(内向き)接続が許可されます。 |
|
modules.(key).firewallModule.sourceTags[] |
list |
このルールが適用されるインスタンスタグのリスト。 sourceRanges と sourceTags のいずれか、または両方を設定できます。送信元の範囲またはタグが sourceRanges または sourceTags のいずれかに一致する場合、上り(内向き)接続が許可されます。 |
|
modules.(key).firewallModule.targetTags[] |
list |
allowed[] で指定されているように、ネットワーク接続を行う可能性があるネットワーク上にあるインスタンス セットを示すインスタンスタグのリスト。 targetTags が指定されていない場合、ファイアウォール ルールは指定されたネットワーク上のすべてのインスタンスに適用されます。 |
|
modules.(key).healthCheckModule |
nested object |
ロード バランシングに使用するヘルスチェック モジュールを定義します。 | |
modules.(key).healthCheckModule.checkIntervalSec |
integer |
ヘルスチェックを実行する間隔を秒単位で設定します。デフォルト値は 5 秒です。 | |
modules.(key).healthCheckModule.description |
string |
このヘルスチェック モジュールの説明。 | |
modules.(key).healthCheckModule.healthyThreshold |
integer |
異常な仮想マシン インスタンスを正常とマークするまでの正常な再試行回数を指定します。デフォルトは 2 です。 | |
modules.(key).healthCheckModule.host |
string |
このヘルスチェック リクエストで使用されるホスト ヘッダーの値。たとえば、ドメイン www.mydomain.com を使用してインスタンスからウェブページを提供している場合は、ホスト名を www.mydomain.com に設定して、そのホストのヘルスチェックを実行できます。 デフォルトでは空で、Google Compute Engine はヘルスチェック リクエストのホストヘッダーを、このターゲット プールに関連付けられた転送ルールと同じ外部 IP アドレスに自動的に設定します。たとえば、ロード バランシング モジュールの外部 IP アドレスが 1.2.3.4 で、デフォルトのホスト設定のヘルスチェック オブジェクトを持つ tp1 という名前のターゲット モジュール プールにトラフィックを転送している場合、ホストヘッダーは 1.2.3.4 に設定されます。 |
|
modules.(key).healthCheckModule.path |
string |
このヘルスチェックのリクエストパス。例: /healthcheck 。デフォルト値は / |
|
modules.(key).healthCheckModule.port |
integer |
このヘルスチェック リクエストの TCP ポート番号。デフォルト値は 80 です。 |
|
modules.(key).healthCheckModule.timeoutSec |
integer |
Google Compute Engine がtimeoutSec までにインスタンスからHTTP 200 レスポンスを受信しなかった場合、ヘルスチェック リクエストは失敗と見なされます。デフォルトは 5 秒です。 |
|
modules.(key).healthCheckModule.unhealthyThreshold |
integer |
正常な仮想マシン インスタンスを異常としてマークするまでの正常な再試行回数を指定します。デフォルトは 2 です。 | |
modules.(key).lbModule |
nested object |
ロード バランシング モジュールを指定します。 | |
modules.(key).lbModule.description |
string |
このロード バランシング モジュールの説明。 | |
modules.(key).lbModule.healthChecks[] |
list |
このロード バランシング モジュールで使用するヘルスチェックのリスト。 | |
modules.(key).lbModule.ipAddress |
string |
この転送ルールが代理で提供する外部静的 IP。これは予約済みの静的 IP にできます。空白のままにするか指定しない場合、デフォルトでエフェメラル IP アドレスが割り当てられます。ポート範囲とプロトコルが重複しない限り、複数の転送ルールで同じ IP アドレスを使用できます。例: --ip="1.2.3.106" |
|
modules.(key).lbModule.ipProtocol |
string |
このロード バランシング モジュールが処理するプロトコル。
有効な値は次のとおりです。
|
|
modules.(key).lbModule.portRange |
string |
このロードバランサが処理するポートのリスト。これらのポートに送信された指定されたプロトコルのパケットは、適切なターゲット プールに転送されます。このフィールドを空のままにすると、ロードバランサは指定されたプロトコルのすべてのポートのトラフィックを送信します。単一のポートまたはポート範囲にできます。 | |
modules.(key).lbModule.targetModules[] |
list |
このロードバランサからのトラフィックを処理するターゲット モジュールを指定します。トラフィック モジュールには、このロードバランサに送信されるトラフィックを受信する 1 つ以上の仮想マシン インスタンスが含まれます。 | |
modules.(key).networkModule |
nested object |
ネットワーク モジュールを定義します。 | |
modules.(key).networkModule.IPv4Range |
string |
このネットワークで有効な内部アドレスの範囲。この範囲は CIDR 仕様です(例:
192.168.0.0/16. )。 |
|
modules.(key).networkModule.description |
string |
ネットワークの説明。 | |
modules.(key).networkModule.gatewayIPv4 |
string |
他のネットワークへのデフォルト ルーティングに使用されるオプションのアドレス。これは IPv4Range で指定された範囲内にある必要があります。通常は、その範囲内で最初に使用可能なアドレスです。指定しない場合、デフォルト値は IPv4Range の最初の使用可能なアドレスになります。 | |
modules.(key).replicaPoolModule |
nested object |
Compute Engine 仮想マシン インスタンスを作成するレプリカプール モジュールを指定します。 | |
modules.(key).replicaPoolModule.envVariables |
object |
環境変数のリスト。 | |
modules.(key).replicaPoolModule.envVariables.(key) |
nested object |
環境変数の名前。名前は正規表現 [a-zA-Z_]+[a-zA-Z0-9_]+ に準拠している必要があります。 |
|
modules.(key).replicaPoolModule.envVariables.(key).value |
string |
環境変数の値。 | |
modules.(key).replicaPoolModule.healthChecks[] |
list |
このレプリカプール モジュールに使用するヘルスチェックのリスト。 | |
modules.(key).replicaPoolModule.numReplicas |
integer |
このモジュールのレプリカの数。 | |
modules.(key).replicaPoolModule.replicaPoolParams |
nested object |
ReplicaPoolModule の情報。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1 |
nested object |
ReplicaPools v1beta1 で使用する ReplicaPoolParams の仕様。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.autoRestart |
boolean |
これらのレプリカで障害が発生した場合に再起動されるかどうか。デフォルト値は true です。 |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.baseInstanceName |
string |
この ReplicaPool 内のインスタンスのベース名。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.canIpForward |
boolean |
IP 転送を有効にします。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.description |
string |
リソースのテキストによる説明(省略可)。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[] |
list |
プール内の各レプリカにアタッチする既存の Persistent Disk リソースのリスト。各ディスクは、すべてのレプリカに読み取り専用モードでアタッチされます。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].attachment |
nested object |
省略可。ディスクをレプリカにアタッチする方法。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].attachment.deviceName |
string |
このディスクのデバイス名。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].attachment.index |
unsigned integer |
このディスクに割り当てる 0 から始まるインデックス。0 はブートディスクに予約されています。指定しない場合、サーバーが割り当てます。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].source |
string |
Persistent Disk リソースの完全修飾 URL。プールと同じゾーンに存在する必要があります。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[] |
list |
プール内の各レプリカに作成してアタッチするディスク リソースのリスト。現在、定義できるディスクは 1 つだけです。これはルート永続ディスクである必要があります。レプリカプールでは、レプリカごとにルート永続ディスクが作成されます。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].attachment |
nested object |
ディスクをレプリカにアタッチする方法。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].attachment.deviceName |
string |
このディスクのデバイス名。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].attachment.index |
unsigned integer |
このディスクに割り当てる 0 から始まるインデックス。0 はブートディスクに予約されています。指定しない場合、サーバーが割り当てます。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].autoDelete |
boolean |
true の場合、インスタンスの削除時にこのディスクが削除されます。 |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].boot |
boolean |
true の場合、これがルート永続ディスクであることを示します。 |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].initializeParams |
nested object |
これらのパラメータを使用して新しいディスクを作成します。ディスクの名前は <instance_name>-<five_random_characters> になります。 |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].initializeParams.diskSizeGb |
long |
作成されるディスクのサイズ(ギガバイト単位)。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].initializeParams.sourceImage |
string |
このディスクの作成に使用するソースイメージの名前または完全修飾 URL。ソースイメージの名前を指定した場合は、ReplicaPool モジュールがプロジェクト内でその名前のイメージを探します。Compute Engine で提供されるイメージを指定する場合は、正しいプロジェクトを含む完全な URL を指定する必要があります。次に例を示します。https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-wheezy-7-vYYYYMMDD |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.initAction |
string |
ReplicaPoolModule の初期化中に実行される Action の名前。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.machineType |
string |
このインスタンスのマシンタイプ。完全な URL またはリソース名(n1-standard-1 など)。 |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata |
nested object |
このインスタンスに割り当てられたメタデータの Key-Value ペア。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.fingerPrint |
string |
メタデータのフィンガープリント。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.items[] |
list |
メタデータ アイテムのリスト。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.items[].key |
string |
メタデータキー。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.items[].value |
string |
メタデータ値。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[] |
list |
インスタンスのネットワーク インターフェースのリスト。現在、Google Compute Engine でサポートされているインターフェースは 1 つだけです。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[] |
list |
このインターフェースの構成の配列。他のネットワーク サービスとやり取りするようにこのインターフェースが構成される方法を指定します。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[].name |
string |
このアクセス構成の名前。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[].natIp |
string |
このインスタンスに関連付けられている外部 IP アドレス。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[].type |
string |
このアクセス構成ファイルのタイプ。(現在、有効なのは ONE_TO_ONE_NAT のみです)。 |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].name |
string |
インターフェースの名前。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].network |
string |
このインターフェースが適用される NetworkModule の名前。指定しない場合、または「default」として指定した場合は、「default」ネットワークが使用されます。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].networkIp |
string |
このネットワーク インターフェースのインスタンスに割り当てる IPV4 内部ネットワーク アドレス(省略可)。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.onHostMaintenance |
string |
このレプリカ プール内のインスタンスのメンテナンス動作を設定します。
有効な値は次のとおりです。
|
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.serviceAccounts[] |
list |
このインスタンスで有効にするサービス アカウントのリスト。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.serviceAccounts[].email |
string |
サービス アカウントのメールアドレス。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.serviceAccounts[].scopes[] |
list |
サービス アカウントに取得する OAuth2 スコープのリスト。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.tags |
nested object |
Google Compute Engine インスタンスに適用してリソースを識別するタグのリスト。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.tags.fingerPrint |
string |
タグのフィンガープリント。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.tags.items[] |
list |
このタグに含まれるアイテム。 | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.zone |
string |
この ReplicaPool のゾーン。 | |
modules.(key).replicaPoolModule.resourceView |
string |
[出力専用] に関連付けられたリソースビューの名前 レプリカプール モジュール。このフィールドはサービスによって生成されます。 |
|
modules.(key).type |
string |
このモジュールのタイプ。
有効な値は次のとおりです。
|
|
name |
string |
このテンプレートの名前。名前は式 [a-zA-Z0-9-_]{1,64} に準拠している必要があります。 |
メソッド
- delete
- テンプレートを削除します。これにより、テンプレートがプロジェクトから削除されます。テンプレートを削除しても、このテンプレートから作成されたデプロイには影響しません。
- get
- テンプレートに関する詳細情報を取得します。
- 挿入
- テンプレートを挿入します。テンプレートを挿入してもリソースは作成されません。物理リソースが作成される前に、テンプレートを使用してデプロイメントを作成する必要があります。
- list
- プロジェクト内のすべてのテンプレートを一覧表示します。