Batch v1alpha API - Class AllocationPolicy.Types.InstancePolicyOrTemplate (1.0.0-alpha31)

public sealed class AllocationPolicy.Types.InstancePolicyOrTemplate : IMessage<AllocationPolicy.Types.InstancePolicyOrTemplate>, IEquatable<AllocationPolicy.Types.InstancePolicyOrTemplate>, IDeepCloneable<AllocationPolicy.Types.InstancePolicyOrTemplate>, IBufferMessage, IMessage

Reference documentation and code samples for the Batch v1alpha API class AllocationPolicy.Types.InstancePolicyOrTemplate.

InstancePolicyOrTemplate lets you define the type of resources to use for this job either with an InstancePolicy or an instance template. If undefined, Batch picks the type of VM to use and doesn't include optional VM resources such as GPUs and extra disks.

Inheritance

object > AllocationPolicy.Types.InstancePolicyOrTemplate

Namespace

Google.Cloud.Batch.V1Alpha

Assembly

Google.Cloud.Batch.V1Alpha.dll

Constructors

InstancePolicyOrTemplate()

public InstancePolicyOrTemplate()

InstancePolicyOrTemplate(InstancePolicyOrTemplate)

public InstancePolicyOrTemplate(AllocationPolicy.Types.InstancePolicyOrTemplate other)
Parameter
Name Description
other AllocationPolicyTypesInstancePolicyOrTemplate

Properties

BlockProjectSshKeys

public bool BlockProjectSshKeys { get; set; }

Optional. Set this field to true if you want Batch to block project-level SSH keys from accessing this job's VMs. Alternatively, you can configure the job to specify a VM instance template that blocks project-level SSH keys. In either case, Batch blocks project-level SSH keys while creating the VMs for this job.

Batch allows project-level SSH keys for a job's VMs only if all the following are true:

  • This field is undefined or set to false.
  • The job's VM instance template (if any) doesn't block project-level SSH keys.

Notably, you can override this behavior by manually updating a VM to block or allow project-level SSH keys. For more information about blocking project-level SSH keys, see the Compute Engine documentation: https://cloud.google.com/compute/docs/connect/restrict-ssh-keys#block-keys

Property Value
Type Description
bool

HasInstanceTemplate

public bool HasInstanceTemplate { get; }

Gets whether the "instance_template" field is set

Property Value
Type Description
bool

InstallGpuDrivers

public bool InstallGpuDrivers { get; set; }

Set this field true if you want Batch to help fetch drivers from a third party location and install them for GPUs specified in policy.accelerators or instance_template on your behalf. Default is false.

For Container-Optimized Image cases, Batch will install the accelerator driver following milestones of https://cloud.google.com/container-optimized-os/docs/release-notes. For non Container-Optimized Image cases, following https://github.com/GoogleCloudPlatform/compute-gpu-installation/blob/main/linux/install_gpu_driver.py.

Property Value
Type Description
bool

InstallOpsAgent

public bool InstallOpsAgent { get; set; }

Optional. Set this field true if you want Batch to install Ops Agent on your behalf. Default is false.

Property Value
Type Description
bool

InstanceTemplate

public string InstanceTemplate { get; set; }

Name of an instance template used to create VMs. Named the field as 'instance_template' instead of 'template' to avoid c++ keyword conflict.

Property Value
Type Description
string

Policy

public AllocationPolicy.Types.InstancePolicy Policy { get; set; }

InstancePolicy.

Property Value
Type Description
AllocationPolicyTypesInstancePolicy

PolicyTemplateCase

public AllocationPolicy.Types.InstancePolicyOrTemplate.PolicyTemplateOneofCase PolicyTemplateCase { get; }
Property Value
Type Description
AllocationPolicyTypesInstancePolicyOrTemplatePolicyTemplateOneofCase