Class: Google::Cloud::Compute::V1::LocationPolicy

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/compute/v1/compute.rb

Overview

Configuration for location policy among multiple possible locations (e.g. preferences for zone selection among zones in a single region).

Defined Under Namespace

Modules: TargetShape Classes: LocationsEntry

Instance Attribute Summary collapse

Instance Attribute Details

#locations::Google::Protobuf::Map{::String => ::Google::Cloud::Compute::V1::LocationPolicyLocation}

Returns Location configurations mapped by location name. Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a. The bulkInsert operation doesn't create instances in an AI zone, even if an AI zone is available in the specified region. For example, if you set a DENY preference for us-central1-a, Compute Engine will consider us-central1-b and us-central1-c for instance creation, but not us-central1-ai1a. Also, you can't use the locations[] configuration to allow instance creation in an AI zone. To include an AI zone in bulkInsert operations, use the locationPolicy.zones[] field.

Returns:

  • (::Google::Protobuf::Map{::String => ::Google::Cloud::Compute::V1::LocationPolicyLocation})

    Location configurations mapped by location name. Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a. The bulkInsert operation doesn't create instances in an AI zone, even if an AI zone is available in the specified region. For example, if you set a DENY preference for us-central1-a, Compute Engine will consider us-central1-b and us-central1-c for instance creation, but not us-central1-ai1a. Also, you can't use the locations[] configuration to allow instance creation in an AI zone. To include an AI zone in bulkInsert operations, use the locationPolicy.zones[] field.



53858
53859
53860
53861
53862
53863
53864
53865
53866
53867
53868
53869
53870
53871
53872
53873
53874
53875
53876
53877
53878
53879
53880
53881
53882
53883
53884
53885
53886
53887
53888
53889
53890
53891
53892
53893
53894
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 53858

class LocationPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::Compute::V1::LocationPolicyLocation]
  class LocationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Strategy for distributing VMs across zones in a region.
  module TargetShape
    # A value indicating that the enum field is not set.
    UNDEFINED_TARGET_SHAPE = 0

    # GCE picks zones for creating VM instances to fulfill the requested
    # number of VMs within present resource constraints and to maximize
    # utilization of unused zonal reservations. Recommended for batch workloads
    # that do not require high availability.
    ANY = 64_972

    # GCE always selects a single zone for all the VMs, optimizing for resource
    # quotas, available reservations and general capacity. Recommended for
    # batch workloads that cannot tollerate distribution over multiple zones.
    # This the default shape in Bulk Insert and Capacity Advisor APIs.
    ANY_SINGLE_ZONE = 61_100_880

    # GCE prioritizes acquisition of resources, scheduling VMs in zones
    # where resources are available while distributing VMs as evenly as
    # possible across allowed zones to minimize the impact of zonal failure.
    # Recommended for highly available serving workloads.
    BALANCED = 468_409_608
  end
end

#target_shape::String

Returns Strategy for distributing VMs across zones in a region. Check the TargetShape enum for the list of possible values.

Returns:

  • (::String)

    Strategy for distributing VMs across zones in a region. Check the TargetShape enum for the list of possible values.



53858
53859
53860
53861
53862
53863
53864
53865
53866
53867
53868
53869
53870
53871
53872
53873
53874
53875
53876
53877
53878
53879
53880
53881
53882
53883
53884
53885
53886
53887
53888
53889
53890
53891
53892
53893
53894
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 53858

class LocationPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::Compute::V1::LocationPolicyLocation]
  class LocationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Strategy for distributing VMs across zones in a region.
  module TargetShape
    # A value indicating that the enum field is not set.
    UNDEFINED_TARGET_SHAPE = 0

    # GCE picks zones for creating VM instances to fulfill the requested
    # number of VMs within present resource constraints and to maximize
    # utilization of unused zonal reservations. Recommended for batch workloads
    # that do not require high availability.
    ANY = 64_972

    # GCE always selects a single zone for all the VMs, optimizing for resource
    # quotas, available reservations and general capacity. Recommended for
    # batch workloads that cannot tollerate distribution over multiple zones.
    # This the default shape in Bulk Insert and Capacity Advisor APIs.
    ANY_SINGLE_ZONE = 61_100_880

    # GCE prioritizes acquisition of resources, scheduling VMs in zones
    # where resources are available while distributing VMs as evenly as
    # possible across allowed zones to minimize the impact of zonal failure.
    # Recommended for highly available serving workloads.
    BALANCED = 468_409_608
  end
end

#zones::Array<::Google::Cloud::Compute::V1::LocationPolicyZoneConfiguration>

Returns The bulkInsert operation applies any preferences set in the locations field to the specific zones listed in the zones field if the same zones are specified in both fields.

Returns:



53858
53859
53860
53861
53862
53863
53864
53865
53866
53867
53868
53869
53870
53871
53872
53873
53874
53875
53876
53877
53878
53879
53880
53881
53882
53883
53884
53885
53886
53887
53888
53889
53890
53891
53892
53893
53894
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 53858

class LocationPolicy
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::Compute::V1::LocationPolicyLocation]
  class LocationsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Strategy for distributing VMs across zones in a region.
  module TargetShape
    # A value indicating that the enum field is not set.
    UNDEFINED_TARGET_SHAPE = 0

    # GCE picks zones for creating VM instances to fulfill the requested
    # number of VMs within present resource constraints and to maximize
    # utilization of unused zonal reservations. Recommended for batch workloads
    # that do not require high availability.
    ANY = 64_972

    # GCE always selects a single zone for all the VMs, optimizing for resource
    # quotas, available reservations and general capacity. Recommended for
    # batch workloads that cannot tollerate distribution over multiple zones.
    # This the default shape in Bulk Insert and Capacity Advisor APIs.
    ANY_SINGLE_ZONE = 61_100_880

    # GCE prioritizes acquisition of resources, scheduling VMs in zones
    # where resources are available while distributing VMs as evenly as
    # possible across allowed zones to minimize the impact of zonal failure.
    # Recommended for highly available serving workloads.
    BALANCED = 468_409_608
  end
end