Skip to main content

types

AllocationPolicy​

Zone​

zoneId : string​

ID of the availability zone where the instance resides.

instanceTagsPool : string​

Each instance in a zone will be associated with exactly one of a tag from a pool below. All specified tags must be unique across the whole group not only the zone. It is guaranteed that during whole deploy only tags from prefix of the specified list will be used. It is possible to use tag associated with instance in templating via {instance.tag}.

zones : Zone​

List of availability zones.

ApplicationLoadBalancerSpec​

targetGroupSpec : ApplicationTargetGroupSpec​

Basic properties of the Application Load Balancer target group attributed to the instance group.

maxOpeningTrafficDuration : google.protobuf.Duration​

Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.

ignoreHealthChecks : bool​

Do not wait load balancer health checks.

ApplicationLoadBalancerState​

targetGroupId : string​

ID of the Application Load Balancer target group attributed to the instance group.

statusMessage : string​

Status message of the target group.

ApplicationTargetGroupSpec​

name : string​

Name of the target group.

description : string​

Description of the target group.

labels : string​

Resource labels as key:value pairs.

AttachedDiskSpec​

Mode​

  • MODE_UNSPECIFIED

  • READ_ONLY

    Read-only access.

  • READ_WRITE

    Read/Write access.

DiskSpec​

description : string​

Description of the disk.

typeId : string​

ID of the disk type.

size : int64​

Size of the disk, specified in bytes.

One of sourceOneof​

  • imageId : string​

    ID of the image that will be used for disk creation.

  • snapshotId : string​

    ID of the snapshot that will be used for disk creation.

preserveAfterInstanceDelete : bool​

When set to true, disk will not be deleted even after managed instance is deleted. It will be a user's responsibility to delete such disks.

mode : Mode​

Access mode to the Disk resource.

deviceName : string​

Serial number that is reflected in the /dev/disk/by-id/ tree of a Linux operating system running within the instance.

This value can be used to reference the device for mounting, resizing, and so on, from within the instance.

diskSpec : DiskSpec​

oneof disk_spec or disk_id Disk specification that is attached to the instance. For more information, see Disks.

diskId : string​

Set to use an existing disk. To set use variables.

name : string​

When set can be later used to change DiskSpec of actual disk.

AttachedFilesystemSpec​

Mode​

  • MODE_UNSPECIFIED

  • READ_ONLY

    Read-only access.

  • READ_WRITE

    Read/Write access. Default value.

mode : Mode​

Mode of access to the filesystem that should be attached.

deviceName : string​

Name of the device representing the filesystem on the instance.

The name should be used for referencing the filesystem from within the instance when it's being mounted, resized etc.

If not specified, a random value will be generated.

filesystemId : string​

ID of the filesystem that should be attached.

AutoHealingPolicy​

AutoHealingAction​

  • AUTO_HEALING_ACTION_UNSPECIFIED

  • RESTART

    Re-starting an instance with restart: stopping and then starting the instance.

  • RECREATE

    Re-creating an instance: deleting an instance and creating a new one.

  • NONE

    No action

autoHealingAction : AutoHealingAction​

Instance Groups performs auto_healing_action when instance becomes unhealthy.

DeployPolicy​

Strategy​

  • STRATEGY_UNSPECIFIED

  • PROACTIVE

    Instance Groups can forcefully stop a running instance. This is the default.

  • OPPORTUNISTIC

    Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.

MinimalAction​

  • MINIMAL_ACTION_UNSPECIFIED

  • LIVE_UPDATE

    Updating an instance without stopping. This is the default.

  • RESTART

    Updating an instance with restart: stopping and then starting the instance.

  • RECREATE

    Re-creating an instance: deleting an instance and creating a new one.

maxUnavailable : int64​

The maximum number of running instances that can be taken offline (i.e., stopped or deleted) at the same time during the update process. If max_expansion is not specified or set to zero, max_unavailable must be set to a non-zero value.

maxDeleting : int64​

The maximum number of instances that can be deleted at the same time.

The value 0 is any number of virtual machines within the allowed values.

maxCreating : int64​

The maximum number of instances that can be created at the same time.

The value 0 is any number of virtual machines within the allowed values.

maxExpansion : int64​

The maximum number of instances that can be temporarily allocated above the group's target size during the update process. If max_unavailable is not specified or set to zero, max_expansion must be set to a non-zero value.

startupDuration : google.protobuf.Duration​

Instance startup duration. Instance will be considered up and running (and start receiving traffic) only after startup_duration has elapsed and all health checks are passed. See yandex.cloud.compute.v1.instancegroup.ManagedInstance.Status for more information.

strategy : Strategy​

Affects the lifecycle of the instance during deployment.

minimalAction : MinimalAction​

If instance update requires a less disruptive action than minimal_action, Instance Groups performs minimal_action to execute the update

DnsRecord​

fqdn : string​

Name of the A/AAAA record as specified when creating the instance. Note that if `fqdn' has no trailing '.', it is specified relative to the zone (@see dns_zone_id).

dnsZoneId : string​

DNS zone id (optional, if not set, some private zone is used).

ttl : int64​

DNS record ttl (optional, if 0, a reasonable default is used).

ptr : bool​

When true, indicates there is a corresponding auto-created PTR DNS record.

DnsRecordSpec​

fqdn : string​

FQDN (required)

dnsZoneId : string​

DNS zone id (optional, if not set, private zone used)

ttl : int64​

DNS record ttl, values in 0-86400 (optional)

ptr : bool​

When set to true, also create PTR DNS record (optional)

HealthCheckSpec​

TcpOptions​

port : int64​

Port to use for TCP health checks.

HttpOptions​

port : int64​

Port to use for HTTP health checks.

path : string​

URL path to set for health checking requests.

interval : google.protobuf.Duration​

The interval between health checks. The default is 2 seconds.

timeout : google.protobuf.Duration​

Timeout for the managed instance to return a response for the health check. The default is 1 second.

unhealthyThreshold : int64​

The number of failed health checks for the managed instance to be considered unhealthy. The default (0) is 2.

healthyThreshold : int64​

The number of successful health checks required in order for the managed instance to be considered healthy. The default (0) is 2.

One of healthCheckOptions​

  • tcpOptions : TcpOptions​

    Configuration options for a TCP health check.

  • httpOptions : HttpOptions​

    Configuration options for an HTTP health check.

HealthChecksSpec​

healthCheckSpecs : HealthCheckSpec​

Health checking specification. For more information, see Health check.

maxCheckingHealthDuration : google.protobuf.Duration​

Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.

InstanceGroup​

Status​

  • STATUS_UNSPECIFIED

  • STARTING

    Instance group is being started and will become active soon.

  • ACTIVE

    Instance group is active. In this state the group manages its instances and monitors their health, creating, deleting, stopping, updating and starting instances as needed. To stop the instance group, call [yandex.cloud.compute.v1.instancegroup.InstanceGroupService.Stop][9]. To pause the processes in the instance group, i.e. scaling, checking instances' health, auto-healing and updating them, without stopping the instances, call [yandex.cloud.compute.v1.instancegroup.InstanceGroupService.PauseProcesses][10].

  • STOPPING

    Instance group is being stopped. Group's instances stop receiving traffic from the load balancer (if any) and are then stopped.

  • STOPPED

    Instance group is stopped. In this state the group cannot be updated and does not react to any changes made to its instances. To start the instance group, call [yandex.cloud.compute.v1.instancegroup.InstanceGroupService.Start][11].

  • DELETING

    Instance group is being deleted.

  • PAUSED

    Instance group is paused. In this state all the processes regarding the group management, i.e. scaling, checking instances' health, auto-healing and updating them, are paused. The instances that were running prior to pausing the group, however, may still be running. To resume the processes in the instance group, call [yandex.cloud.compute.v1.instancegroup.InstanceGroupService.ResumeProcesses][12]. The group status will change to ACTIVE.

id : string​

ID of the instance group.

folderId : string​

ID of the folder that the instance group belongs to.

createdAt : google.protobuf.Timestamp​

Creation timestamp in RFC3339 text format.

name : string​

Name of the instance group. The name is unique within the folder.

description : string​

Description of the instance group.

labels : string​

Resource labels as key:value pairs.

instanceTemplate : InstanceTemplate​

Instance template for creating the instance group. For more information, see Instance Templates.

scalePolicy : ScalePolicy​

Scaling policy of the instance group.

deployPolicy : DeployPolicy​

Deployment policy of the instance group.

allocationPolicy : AllocationPolicy​

Allocation policy of the instance group by zones and regions.

loadBalancerState : LoadBalancerState​

Status of the Network Load Balancer target group attributed to the instance group.

managedInstancesState : ManagedInstancesState​

States of instances for this instance group.

loadBalancerSpec : LoadBalancerSpec​

Settings for balancing load between instances via Network Load Balancer (OSI model layer 3).

healthChecksSpec : HealthChecksSpec​

Health checking specification. For more information, see Health check.

serviceAccountId : string​

ID of the service account. The service account will be used for all API calls made by the Instance Groups component on behalf of the user (for example, creating instances, adding them to load balancer target group, etc.). For more information, see Service accounts. To get the service account ID, use a yandex.cloud.iam.v1.ServiceAccountService.List request.

status : Status​

Status of the instance group.

variables : Variable​
deletionProtection : bool​

Flag prohibiting deletion of the instance group.

Allowed values:</br>- false: The instance group can be deleted.</br>- true: The instance group cannot be deleted.

The default is false.

applicationLoadBalancerSpec : ApplicationLoadBalancerSpec​

Settings for balancing load between instances via Application Load Balancer (OSI model layer 7).

applicationLoadBalancerState : ApplicationLoadBalancerState​

Status of the Application Load Balancer target group attributed to the instance group.

Returned if there is a working load balancer that the target group is connected to.

autoHealingPolicy : AutoHealingPolicy​

AutoHealingPolicy policy of the instance group.

InstanceTemplate​

description : string​

Description of the instance template.

labels : string​

Resource labels as key:value pairs.

platformId : string​

ID of the hardware platform configuration for the instance. Platforms allows you to create various types of instances: with a large amount of memory, with a large number of cores, with a burstable performance. For more information, see Platforms.

resourcesSpec : ResourcesSpec​

Computing resources of the instance such as the amount of memory and number of cores.

metadata : string​

The metadata key:value pairs assigned to this instance template. This includes custom metadata and predefined keys.

Metadata values may contain one of the supported placeholders: {instance_group.id} {instance.short_id} {instance.index} {instance.index_in_zone} {instance.zone_id} InstanceGroup and Instance labels may be copied to metadata following way: {instance_group.labels.some_label_key} {instance.labels.another_label_key} These placeholders will be substituted for each created instance anywhere in the value text. In the rare case the value requires to contain this placeholder explicitly, it must be escaped with double brackets, in example {instance.index}.

For example, you may use the metadata in order to provide your public SSH key to the instance. For more information, see Metadata.

bootDiskSpec : AttachedDiskSpec​

Boot disk specification that will be attached to the instance.

secondaryDiskSpecs : AttachedDiskSpec​

Array of secondary disks that will be attached to the instance.

networkInterfaceSpecs : NetworkInterfaceSpec​

Array of network interfaces that will be attached to the instance.

schedulingPolicy : SchedulingPolicy​

Scheduling policy for the instance.

serviceAccountId : string​

Service account ID for the instance.

networkSettings : NetworkSettings​

Network settings for the instance.

name : string​

Name of the instance. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.

hostname : string​

Host name for the instance. This field is used to generate the yandex.cloud.compute.v1.Instance.fqdn value. The host name must be unique within the network and region. If not specified, the host name will be equal to yandex.cloud.compute.v1.Instance.id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal.

In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.

placementPolicy : PlacementPolicy​

Placement Group

filesystemSpecs : AttachedFilesystemSpec​

Array of filesystems to attach to the instance.

The filesystems must reside in the same availability zone as the instance.

To use the instance with an attached filesystem, the latter must be mounted. For details, see documentation.

metadataOptions : MetadataOptions​

Metadata options for the instance

LoadBalancerSpec​

targetGroupSpec : TargetGroupSpec​

Specification of the target group that the instance group will be added to. For more information, see Target groups and resources.

maxOpeningTrafficDuration : google.protobuf.Duration​

Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.

ignoreHealthChecks : bool​

Do not wait load balancer health checks.

LoadBalancerState​

targetGroupId : string​

ID of the Network Load Balancer target group attributed to the instance group.

statusMessage : string​

Status message of the target group.

LogRecord​

timestamp : google.protobuf.Timestamp​

Log timestamp in RFC3339 text format.

message : string​

The log message.

ManagedInstance​

A ManagedInstance resource. For more information, see Instance Groups Concepts.

Status​

  • STATUS_UNSPECIFIED

  • CREATING_INSTANCE

    Instance is being created.

  • UPDATING_INSTANCE

    Instance is being updated.

  • DELETING_INSTANCE

    Instance is being deleted.

  • STARTING_INSTANCE

    Instance is being started.

  • STOPPING_INSTANCE

    Instance is being stopped.

  • AWAITING_STARTUP_DURATION

    Instance has been created successfully, but startup duration has not elapsed yet.

  • CHECKING_HEALTH

    Instance has been created successfully and startup duration has elapsed, but health checks have not passed yet and the managed instance is not ready to receive traffic.

  • OPENING_TRAFFIC

    Instance Groups is initiating health checks and routing traffic to the instances.

  • AWAITING_WARMUP_DURATION

    Instance is now receiving traffic, but warmup duration has not elapsed yet.

  • CLOSING_TRAFFIC

    Instance Groups has initiated the process of stopping routing traffic to the instances.

  • RUNNING_ACTUAL

    Instance is running normally and its attributes match the current InstanceTemplate.

  • RUNNING_OUTDATED

    Instance is running normally, but its attributes do not match the current InstanceTemplate. It will be updated, recreated or deleted shortly.

  • STOPPED

    Instance was stopped.

  • DELETED

    Instance was deleted.

  • PREPARING_RESOURCES

    Instance Groups is preparing dependent resources.

id : string​

ID of the managed instance.

status : Status​

Status of the managed instance.

instanceId : string​

ID of the instance.

fqdn : string​

Fully Qualified Domain Name.

name : string​

The name of the managed instance.

statusMessage : string​

Status message for the managed instance.

zoneId : string​

ID of the availability zone where the instance resides.

networkInterfaces : NetworkInterface​

Array of network interfaces that are attached to the managed instance.

statusChangedAt : google.protobuf.Timestamp​

The timestamp in RFC3339 text format when the status of the managed instance was last changed.

instanceTag : string​

Managed instance tag.

ManagedInstancesState​

Statuses​

creating : int64​

Instance is being created.

starting : int64​

Instance is being started.

opening : int64​

Instance is being opened to receive traffic.

warming : int64​

Instance is being warmed.

running : int64​

Instance is running normally.

closing : int64​

Instance is being closed to traffic.

stopping : int64​

Instance is being stopped.

updating : int64​

Instance is being updated.

deleting : int64​

Instance is being deleted.

failed : int64​

Instance failed and needs to be recreated.

targetSize : int64​

Target number of instances for this instance group.

runningActualCount : int64​

The number of running instances that match the current instance template. For more information, see ManagedInstance.Status.RUNNING_ACTUAL.

runningOutdatedCount : int64​

The number of running instances that does not match the current instance template. For more information, see ManagedInstance.Status.RUNNING_OUTDATED.

processingCount : int64​

The number of instances in flight (for example, updating, starting, deleting). For more information, see ManagedInstance.Status.

MetadataOptions​

gceHttpEndpoint : MetadataOption​

Enabled access to GCE flavored metadata

awsV1HttpEndpoint : MetadataOption​

Enabled access to AWS flavored metadata (IMDSv1)

gceHttpToken : MetadataOption​

Enabled access to IAM credentials with GCE flavored metadata

awsV1HttpToken : MetadataOption​

Enabled access to IAM credentials with AWS flavored metadata (IMDSv1)

NetworkInterface​

index : string​

The index of the network interface, generated by the server, 0,1,2... etc.

macAddress : string​

MAC address that is assigned to the network interface.

subnetId : string​

ID of the subnet.

primaryV4Address : PrimaryAddress​

Primary IPv4 address that is assigned to the instance for this network interface.

primaryV6Address : PrimaryAddress​

Primary IPv6 address that is assigned to the instance for this network interface. IPv6 is not available yet.

NetworkInterfaceSpec​

networkId : string​

ID of the network.

subnetIds : string​

IDs of the subnets.

primaryV4AddressSpec : PrimaryAddressSpec​

Primary IPv4 address that is assigned to the instance for this network interface.

primaryV6AddressSpec : PrimaryAddressSpec​

Primary IPv6 address that is assigned to the instance for this network interface. IPv6 not available yet.

securityGroupIds : string​

IDs of security groups.

NetworkSettings​

Type​

  • TYPE_UNSPECIFIED

  • STANDARD

  • SOFTWARE_ACCELERATED

  • HARDWARE_ACCELERATED

type : Type​

Type of instance network.

OneToOneNat​

address : string​

An IPv4 external network address that is assigned to the managed instance for this network interface.

ipVersion : IpVersion​

External IP address version.

dnsRecords : DnsRecord​

External DNS configuration.

OneToOneNatSpec​

ipVersion : IpVersion​

IP version for the public IP address.

address : string​

Manual set static public IP. To set use variables. (optional)

dnsRecordSpecs : DnsRecordSpec​

External DNS configuration

PlacementPolicy​

HostAffinityRule​

Affinity definition

Operator​
  • OPERATOR_UNSPECIFIED

  • IN

  • NOT_IN

key : string​

Affinity label or one of reserved values - 'yc.hostId', 'yc.hostGroupId'

op : Operator​

Include or exclude action

values : string​

Affinity value or host ID or host group ID

placementGroupId : string​

Identifier of placement group

hostAffinityRules : HostAffinityRule​

List of affinity rules. Scheduler will attempt to allocate instances according to order of rules.

PrimaryAddress​

address : string​

An IPv4 internal network address that is assigned to the managed instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.

oneToOneNat : OneToOneNat​

One-to-one NAT configuration. If missing, NAT has not been set up.

dnsRecords : DnsRecord​

Internal DNS configuration.

PrimaryAddressSpec​

oneToOneNatSpec : OneToOneNatSpec​

An external IP address configuration. If not specified, then this managed instance will have no external internet access.

dnsRecordSpecs : DnsRecordSpec​

Internal DNS configuration

address : string​

Optional. Manual set static internal IP. To set use variables.

ResourcesSpec​

memory : int64​

The amount of memory available to the instance, specified in bytes.

cores : int64​

The number of cores available to the instance.

coreFraction : int64​

Baseline level of CPU performance with the ability to burst performance above that baseline level. This field sets baseline performance for each core.

gpus : int64​

The number of GPUs available to the instance.

ScalePolicy​

AutoScale​

AutoScaleType​
  • AUTO_SCALE_TYPE_UNSPECIFIED

  • ZONAL

    Scale each zone independently. This is the default.

  • REGIONAL

    Scale group as a whole.

minZoneSize : int64​

Lower limit for instance count in each zone.

maxSize : int64​

Upper limit for total instance count (across all zones). 0 means maximum limit = 100.

measurementDuration : google.protobuf.Duration​

Time in seconds allotted for averaging metrics. 1 minute by default.

warmupDuration : google.protobuf.Duration​

The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.

stabilizationDuration : google.protobuf.Duration​

Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.

initialSize : int64​

Target group size.

cpuUtilizationRule : CpuUtilizationRule​

Defines an autoscaling rule based on the average CPU utilization of the instance group.

If more than one rule is specified, e.g. CPU utilization and one or more Monitoring metrics (custom_rules), the size of the instance group will be equal to the maximum of sizes calculated according to each metric.

customRules : CustomRule​

Defines an autoscaling rule based on a custom metric from Monitoring.

If more than one rule is specified, e.g. CPU utilization (cpu_utilization_rule) and one or more Monitoring metrics, the size of the instance group will be equal to the maximum of sizes calculated according to each metric.

autoScaleType : AutoScaleType​

Autoscaling type.

CpuUtilizationRule​

utilizationTarget : double​

Target CPU utilization level. Instance Groups maintains this level for each availability zone.

CustomRule​

RuleType​
  • RULE_TYPE_UNSPECIFIED

  • UTILIZATION

    This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone or in whole group depends on autoscaling type. This type of metric must have the instance_id label.

  • WORKLOAD

    This type means that the metric applies to instances in one availability zone or to whole group depends on autoscaling type. This type of metric must have the zone_id label if ZONAL autoscaling type is chosen.

MetricType​
  • METRIC_TYPE_UNSPECIFIED

  • GAUGE

    This type is used for metrics that show the metric value at a certain point in time, such as requests per second to the server on an instance. Instance Groups calculates the average metric value for the period specified in the [AutoScale.measurement_duration][21] field.

  • COUNTER

    This type is used for metrics that monotonically increase over time, such as the total number of requests to the server on an instance. Instance Groups calculates the average value increase for the period specified in the [AutoScale.measurement_duration][22] field.

ruleType : RuleType​

Custom metric rule type. This field affects which label from the custom metric should be used: zone_id or instance_id.

metricType : MetricType​

Type of custom metric. This field affects how Instance Groups calculates the average metric value.

metricName : string​

Name of custom metric in Monitoring that should be used for scaling.

labels : string​

Labels of custom metric in Monitoring that should be used for scaling.

target : double​

Target value for the custom metric. Instance Groups maintains this level for each availability zone.

folderId : string​

Folder id of custom metric in Monitoring that should be used for scaling.

service : string​

Service of custom metric in Monitoring that should be used for scaling.

FixedScale​

size : int64​

Number of instances in the instance group.

One of scaleType​

testAutoScale : AutoScale​

Test spec for automatic scaling policy of the instance group.

SchedulingPolicy​

preemptible : bool​

Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.

TargetGroupSpec​

name : string​

Name of the target group.

description : string​

Description of the target group.

labels : string​

Resource labels as key:value pairs.

Variable​

key : string​
value : string​