Precaución: Esta es una versión obsoleta de la API de Deployment Manager. En su lugar, usa la versión más reciente de la API.
Representa un recurso de plantilla, que define la configuración de tus implementaciones.
Para obtener una lista de los métodos de este recurso, consulta el final de esta página.
Representaciones de recursos
Una plantilla representa una configuración completa para una implementación.
{ "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 } } }
Nombre de la propiedad | Valor | Descripción | Notas |
---|---|---|---|
actions |
object |
Acciones definidas para usar en los módulos que define esta plantilla. | |
actions.(key) |
nested object |
Es el nombre de esta acción, que se usa cuando se especifican acciones en las definiciones de módulos. | |
actions.(key).commands[] |
list |
Es una lista de comandos que se ejecutarán de forma secuencial para esta acción. | |
actions.(key).timeoutMs |
integer |
Es el tiempo de espera en milisegundos para que se ejecute esta acción. | |
description |
string |
Una descripción de esta plantilla. | |
modules |
object |
Es una lista de los módulos de esta plantilla. | |
modules.(key) |
nested object |
Es el nombre del módulo. El nombre debe cumplir con la siguiente expresión regular: [a-zA-Z0-9-_]{1,64} |
|
modules.(key).autoscalingModule |
nested object |
Define un módulo de ajuste de escala automático. | |
modules.(key).autoscalingModule.coolDownPeriodSec |
integer |
Es la cantidad de segundos que el escalador automático debe esperar entre dos cambios consecutivos en la cantidad de máquinas virtuales. Debes definir un intervalo que sea al menos tan largo como el tiempo de inicialización de una máquina virtual. El valor predeterminado es de 5 segundos. | |
modules.(key).autoscalingModule.description |
string |
Una descripción opcional para este módulo de escalamiento automático. | |
modules.(key).autoscalingModule.maxNumReplicas |
integer |
La cantidad máxima de réplicas a las que deseas ajustar la escala automáticamente. | |
modules.(key).autoscalingModule.minNumReplicas |
integer |
Es la cantidad mínima de réplicas a las que deseas ajustar la escala automáticamente. | |
modules.(key).autoscalingModule.signalType |
string |
Es el indicador que debe usar el Administrador de implementaciones para determinar si se necesita el ajuste de escala automático.
Los valores aceptables son los siguientes:
|
|
modules.(key).autoscalingModule.targetModule |
string |
Es el módulo del grupo de réplicas de destino que se escalará. | |
modules.(key).autoscalingModule.targetUtilization |
double |
El uso objetivo, entre (0, 1] . El escalador automático funciona para mantener el valor del indicador deseado (actualmente, solo la CPU promedio) en aproximadamente este nivel objetivo. Por ejemplo, si el uso de CPU promedio de tus réplicas es significativamente inferior al uso objetivo, el escalador automático reducirá la escala hasta alcanzar el uso objetivo o la cantidad mínima de réplicas. Si el uso promedio de CPU supera esta cantidad, el escalador automático aumentará la escala hasta alcanzar el uso objetivo o la cantidad máxima de recursos. |
|
modules.(key).firewallModule |
nested object |
Crea un módulo de firewall, equivalente a un recurso de firewall de Google Compute Engine. | |
modules.(key).firewallModule.allowed[] |
quilist |
Define los puertos y protocolos permitidos para este firewall. | |
modules.(key).firewallModule.allowed[].IPProtocol |
string |
Es el protocolo IP permitido para este módulo de firewall. Puede ser tcp ,udp , icmp o un número de protocolo IP. |
|
modules.(key).firewallModule.allowed[].ports[] |
list |
Es la lista de puertos o rangos de puertos permitidos (entre los ejemplos de entradas, se incluyen los siguientes:
["22"],
[?33?, "12345-12349"] . |
|
modules.(key).firewallModule.description |
string |
Es la descripción del firewall. | |
modules.(key).firewallModule.network |
string |
Es el módulo de red al que se debe aplicar este firewall. Si no se especifica o se especifica como default
, este firewall se aplicará a la red default . |
|
modules.(key).firewallModule.sourceRanges[] |
list |
Los bloques de direcciones IP a los que se aplica esta regla, expresados en formato CIDR. Se puede configurar uno o ambos de sourceRanges y sourceTags. Se permite una conexión entrante si el rango o la etiqueta de la fuente coinciden con sourceRanges o sourceTags . |
|
modules.(key).firewallModule.sourceTags[] |
list |
Es una lista de etiquetas de instancia a las que se aplica esta regla. Se puede configurar uno o ambos de sourceRanges y sourceTags. Se permite una conexión entrante si el rango o la etiqueta de la fuente coinciden con sourceRanges o sourceTags . |
|
modules.(key).firewallModule.targetTags[] |
list |
Es una lista de etiquetas de instancias que indican conjuntos de instancias ubicadas en la red que pueden establecer conexiones de red, como se especifica en allowed[] . Si no se especifican targetTags , la regla de firewall se aplica a todas las instancias de la red especificada. |
|
modules.(key).healthCheckModule |
nested object |
Define un módulo de verificación de estado para usar en el balanceo de cargas. | |
modules.(key).healthCheckModule.checkIntervalSec |
integer |
Establece el intervalo en segundos para realizar una verificación de estado. El valor predeterminado es de 5 segundos. | |
modules.(key).healthCheckModule.description |
string |
Una descripción de este módulo de verificación de estado. | |
modules.(key).healthCheckModule.healthyThreshold |
integer |
Especifica la cantidad de reintentos correctos antes de que una instancia de máquina virtual en mal estado se marque como en buen estado. El valor predeterminado es 2. | |
modules.(key).healthCheckModule.host |
string |
El valor del encabezado de host que se usó en esta solicitud de verificación de estado. Por ejemplo, si publicas páginas web desde una instancia con el dominio www.midominio.com, te recomendamos que configures el nombre de host como www.midominio.com para que se realice la verificación de estado de ese host. De forma predeterminada, este campo está vacío y Google Compute Engine establece automáticamente el encabezado de host en las solicitudes de estado en la misma dirección IP externa que la regla de reenvío asociada con este grupo de destino. Por ejemplo, si un módulo de balanceo de cargas tiene una dirección IP externa de 1.2.3.4 y dirige el tráfico a un grupo de módulos de destino llamado tp1 que tiene un objeto de verificación de estado con una configuración de host predeterminada, el encabezado de host se establecerá en 1.2.3.4 . |
|
modules.(key).healthCheckModule.path |
string |
La ruta de acceso de la solicitud para esta verificación de estado. Por ejemplo, /healthcheck . El valor predeterminado es / . |
|
modules.(key).healthCheckModule.port |
integer |
Es el número de puerto TCP de esta solicitud de verificación de estado. El valor predeterminado es 80 . |
|
modules.(key).healthCheckModule.timeoutSec |
integer |
Si Google Compute Engine no recibe una respuesta HTTP 200 de la instancia antes de timeoutSec , la solicitud de verificación de estado se considera un error. El valor predeterminado es de 5 segundos. |
|
modules.(key).healthCheckModule.unhealthyThreshold |
integer |
Especifica la cantidad de reintentos correctos antes de que una instancia de máquina virtual en buen estado se marque como en mal estado. El valor predeterminado es 2. | |
modules.(key).lbModule |
nested object |
Especifica un módulo de balanceo de cargas. | |
modules.(key).lbModule.description |
string |
Una descripción de este módulo de balanceo de cargas. | |
modules.(key).lbModule.healthChecks[] |
list |
Es una lista de verificaciones de estado que se usarán para este módulo de balanceo de cargas. | |
modules.(key).lbModule.ipAddress |
string |
Una IP estática externa en nombre de la que entrega esta regla de reenvío. Puede ser una IP estática reservada o, si se deja en blanco o no se especifica, la opción predeterminada es asignar una dirección IP efímera. Varias reglas de reenvío pueden usar la misma dirección IP, siempre que su rango de puertos y protocolo no se superpongan. Por ejemplo, --ip="1.2.3.106" . |
|
modules.(key).lbModule.ipProtocol |
string |
El protocolo que controla este módulo de balanceo de cargas.
Los valores aceptables son los siguientes:
|
|
modules.(key).lbModule.portRange |
string |
Es la lista de puertos de los que es responsable este balanceador de cargas. Los paquetes del protocolo especificado que se envíen a estos puertos se reenvían al grupo de destino correspondiente. Si este campo se deja vacío, el balanceador de cargas envía tráfico para todos los puertos del protocolo especificado. Puede ser un solo puerto o un rango de puertos. | |
modules.(key).lbModule.targetModules[] |
list |
Especifica el módulo de destino que controla el tráfico de este balanceador de cargas. Un módulo de tráfico contiene una o más instancias de máquina virtual que recibirán el tráfico enviado a este balanceador de cargas. | |
modules.(key).networkModule |
nested object |
Define un módulo de red. | |
modules.(key).networkModule.IPv4Range |
string |
Es el rango de direcciones internas que son legales en esta red. Este rango es una especificación CIDR, por ejemplo:
192.168.0.0/16. |
|
modules.(key).networkModule.description |
string |
Es la descripción de la red. | |
modules.(key).networkModule.gatewayIPv4 |
string |
Es una dirección opcional que se usa para el enrutamiento predeterminado a otras redes. Debe estar dentro del rango especificado por IPv4Range y, por lo general, es la primera dirección utilizable en ese rango. Si no se especifica, el valor predeterminado es la primera dirección utilizable en IPv4Range. | |
modules.(key).replicaPoolModule |
nested object |
Especifica un módulo de grupo de réplicas, que crea una instancia de máquina virtual de Compute Engine. | |
modules.(key).replicaPoolModule.envVariables |
object |
Una lista de variables de entorno. | |
modules.(key).replicaPoolModule.envVariables.(key) |
nested object |
Es el nombre de la variable de entorno. El nombre debe cumplir con la siguiente expresión regular: [a-zA-Z_]+[a-zA-Z0-9_]+ . |
|
modules.(key).replicaPoolModule.envVariables.(key).value |
string |
Es el valor de la variable de entorno. | |
modules.(key).replicaPoolModule.healthChecks[] |
list |
Es una lista de verificaciones de estado que se usarán para este módulo de grupo de réplicas. | |
modules.(key).replicaPoolModule.numReplicas |
integer |
Cantidad de réplicas en este módulo. | |
modules.(key).replicaPoolModule.replicaPoolParams |
nested object |
Información para un ReplicaPoolModule. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1 |
nested object |
Especificaciones de ReplicaPoolParams para usar con ReplicaPools v1beta1. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.autoRestart |
boolean |
Si se deben reiniciar estas réplicas si experimentan una falla. El valor predeterminado es true . |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.baseInstanceName |
string |
Es el nombre base de las instancias dentro de este ReplicaPool. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.canIpForward |
boolean |
Habilita el reenvío de IP. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.description |
string |
Una descripción textual opcional del recurso. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[] |
list |
Es una lista de recursos de disco persistente existentes para conectar a cada réplica del grupo. Cada disco se conectará en modo de solo lectura a cada réplica. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].attachment |
nested object |
Opcional. Indica cómo se adjuntará el disco a la réplica. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].attachment.deviceName |
string |
Es el nombre del dispositivo de este disco. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].attachment.index |
unsigned integer |
Es un índice basado en cero que se asignará a este disco, en el que 0 está reservado para el disco de arranque. Si no se especifica, el servidor lo asigna. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToAttach[].source |
string |
Es la URL completamente calificada del recurso de disco persistente. Debe estar en la misma zona que el grupo. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[] |
list |
Es una lista de recursos de disco que se crearán y adjuntarán a cada réplica del grupo. Actualmente, solo puedes definir un disco, que debe ser un disco persistente raíz. Ten en cuenta que el grupo de réplicas creará un disco persistente raíz para cada réplica. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].attachment |
nested object |
Indica cómo se adjuntará el disco a la réplica. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].attachment.deviceName |
string |
Es el nombre del dispositivo de este disco. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].attachment.index |
unsigned integer |
Es un índice basado en cero que se asignará a este disco, en el que 0 está reservado para el disco de arranque. Si no se especifica, el servidor lo asigna. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].autoDelete |
boolean |
Si es true , este disco se borrará cuando se borre la instancia. |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].boot |
boolean |
Si es true , indica que este es el disco persistente raíz. |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].initializeParams |
nested object |
Crea el disco nuevo con estos parámetros. El nombre del disco será <instance_name>-<five_random_characters> . |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].initializeParams.diskSizeGb |
long |
Es el tamaño del disco creado en gigabytes. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.disksToCreate[].initializeParams.sourceImage |
string |
Es el nombre o la URL completamente calificada de una imagen de origen que se usará para crear este disco. Si proporcionas un nombre para la imagen de origen, el módulo ReplicaPool buscará una imagen con ese nombre en tu proyecto. Si especificas una imagen proporcionada por Compute Engine, deberás proporcionar la URL completa con el proyecto correcto, como el siguiente ejemplo:https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-wheezy-7-vYYYYMMDD |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.initAction |
string |
Es el nombre de la acción que se ejecutará durante la inicialización de un ReplicaPoolModule. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.machineType |
string |
Es el tipo de máquina de esta instancia. Una URL completa o el nombre del recurso (p.ej., n1-standard-1 ). |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata |
nested object |
Los pares clave-valor de metadatos asignados a esta instancia. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.fingerPrint |
string |
La huella digital de los metadatos | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.items[] |
list |
Es una lista de elementos de metadatos. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.items[].key |
string |
Una clave de metadatos | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.metadata.items[].value |
string |
Un valor de metadatos. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[] |
list |
Una lista de interfaces de red para la instancia. Actualmente, Google Compute Engine solo admite una interfaz. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[] |
list |
Un array de parámetros de configuración para esta interfaz. Esto especifica cómo se configura esta interfaz para interactuar con otros servicios de red. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[].name |
string |
Es el nombre de esta configuración de acceso. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[].natIp |
string |
Una dirección IP externa asociada con esta instancia. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].accessConfigs[].type |
string |
Es el tipo de este archivo de configuración de acceso. (Actualmente, solo ONE_TO_ONE_NAT es legal). |
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].name |
string |
Es el nombre de la interfaz. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].network |
string |
Es el nombre del NetworkModule al que se aplica esta interfaz. Si no se especifica o se especifica como "predeterminada", se usará la red "predeterminada". | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.networkInterfaces[].networkIp |
string |
Es una dirección de red interna IPv4 opcional que se asigna a la instancia para esta interfaz de red. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.onHostMaintenance |
string |
Establece el comportamiento de mantenimiento de las instancias de este grupo de réplicas.
Los valores aceptables son los siguientes:
|
|
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.serviceAccounts[] |
list |
Es una lista de cuentas de servicio que se habilitarán para esta instancia. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.serviceAccounts[].email |
string |
Dirección de correo electrónico de la cuenta de servicio. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.serviceAccounts[].scopes[] |
list |
Es la lista de alcances de OAuth2 que se deben obtener para la cuenta de servicio. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.tags |
nested object |
Es una lista de etiquetas que se aplicarán a la instancia de Google Compute Engine para identificar recursos. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.tags.fingerPrint |
string |
La huella digital de la etiqueta | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.tags.items[] |
list |
Son los elementos que contiene esta etiqueta. | |
modules.(key).replicaPoolModule.replicaPoolParams.v1beta1.zone |
string |
Es la zona de este ReplicaPool. | |
modules.(key).replicaPoolModule.resourceView |
string |
[Solo salida] El nombre de la vista de recursos asociada con un módulo del grupo de réplicas. El servicio genera este campo. |
|
modules.(key).type |
string |
Es el tipo de este módulo>.
Los valores aceptables son los siguientes:
|
|
name |
string |
Es el nombre de esta plantilla. El nombre debe cumplir con la expresión: [a-zA-Z0-9-_]{1,64} |
Métodos
- delete
- Borra una plantilla. De esta forma, se quitará la plantilla de tu proyecto. Quitar la plantilla no afecta a ninguna implementación que se haya creado a partir de ella.
- get
- Obtiene información detallada sobre una plantilla.
- insert
- Inserta una plantilla. Si insertas una plantilla, no se creará ningún recurso. Aún debes crear una implementación con la plantilla antes de crear los recursos físicos.
- list
- Enumera todas las plantillas de un proyecto.