注意: これは 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
- プロジェクト内のすべてのテンプレートを一覧表示します。