Class: Google::Apis::ComputeBeta::NetworkEndpointGroup

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb

Overview

Represents a collection of network endpoints. A network endpoint group (NEG) defines how a set of endpoints should be reached, whether they are reachable, and where they are located. For more information about using NEGs, see Setting up external HTTP(S) Load Balancing with internet NEGs, Setting up zonal NEGs, or Setting up external HTTP(S) Load Balancing with serverless NEGs.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkEndpointGroup

Returns a new instance of NetworkEndpointGroup.



20962
20963
20964
# File 'lib/google/apis/compute_beta/classes.rb', line 20962

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#annotationsHash<String,String>

Metadata defined as annotations on the network endpoint group. Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


20832
20833
20834
# File 'lib/google/apis/compute_beta/classes.rb', line 20832

def annotations
  @annotations
end

#app_engineGoogle::Apis::ComputeBeta::NetworkEndpointGroupAppEngine

Configuration for an App Engine network endpoint group (NEG). The service is optional, may be provided explicitly or in the URL mask. The version is optional and can only be provided explicitly or in the URL mask when service is present. Note: App Engine service must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property appEngine



20841
20842
20843
# File 'lib/google/apis/compute_beta/classes.rb', line 20841

def app_engine
  @app_engine
end

#cloud_functionGoogle::Apis::ComputeBeta::NetworkEndpointGroupCloudFunction

Configuration for a Cloud Function network endpoint group (NEG). The function must be provided explicitly or in the URL mask. Note: Cloud Function must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property cloudFunction



20848
20849
20850
# File 'lib/google/apis/compute_beta/classes.rb', line 20848

def cloud_function
  @cloud_function
end

#cloud_runGoogle::Apis::ComputeBeta::NetworkEndpointGroupCloudRun

Configuration for a Cloud Run network endpoint group (NEG). The service must be provided explicitly or in the URL mask. The tag is optional, may be provided explicitly or in the URL mask. Note: Cloud Run service must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property cloudRun



20856
20857
20858
# File 'lib/google/apis/compute_beta/classes.rb', line 20856

def cloud_run
  @cloud_run
end

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


20861
20862
20863
# File 'lib/google/apis/compute_beta/classes.rb', line 20861

def creation_timestamp
  @creation_timestamp
end

#default_portFixnum

The default port used if the port number is not specified in the network endpoint. Corresponds to the JSON property defaultPort

Returns:

  • (Fixnum)


20867
20868
20869
# File 'lib/google/apis/compute_beta/classes.rb', line 20867

def default_port
  @default_port
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


20873
20874
20875
# File 'lib/google/apis/compute_beta/classes.rb', line 20873

def description
  @description
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


20879
20880
20881
# File 'lib/google/apis/compute_beta/classes.rb', line 20879

def id
  @id
end

#kindString

[Output Only] Type of the resource. Always compute#networkEndpointGroup for network endpoint group. Corresponds to the JSON property kind

Returns:

  • (String)


20885
20886
20887
# File 'lib/google/apis/compute_beta/classes.rb', line 20885

def kind
  @kind
end

#load_balancerGoogle::Apis::ComputeBeta::NetworkEndpointGroupLbNetworkEndpointGroup

Load balancing specific fields for network endpoint group. Corresponds to the JSON property loadBalancer



20890
20891
20892
# File 'lib/google/apis/compute_beta/classes.rb', line 20890

def load_balancer
  @load_balancer
end

#nameString

Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a- z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


20900
20901
20902
# File 'lib/google/apis/compute_beta/classes.rb', line 20900

def name
  @name
end

#networkString

The URL of the network to which all network endpoints in the NEG belong. Uses " default" project network if unspecified. Corresponds to the JSON property network

Returns:

  • (String)


20906
20907
20908
# File 'lib/google/apis/compute_beta/classes.rb', line 20906

def network
  @network
end

#network_endpoint_typeString

Type of network endpoints in this network endpoint group. Can be one of GCE_VM_IP, GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT. Corresponds to the JSON property networkEndpointType

Returns:

  • (String)


20913
20914
20915
# File 'lib/google/apis/compute_beta/classes.rb', line 20913

def network_endpoint_type
  @network_endpoint_type
end

#psc_dataGoogle::Apis::ComputeBeta::NetworkEndpointGroupPscData

All data that is specifically relevant to only network endpoint groups of type PRIVATE_SERVICE_CONNECT. Corresponds to the JSON property pscData



20919
20920
20921
# File 'lib/google/apis/compute_beta/classes.rb', line 20919

def psc_data
  @psc_data
end

#psc_target_serviceString

The target service url used to set up private service connection to a Google API or a PSC Producer Service Attachment. An example value is: "asia- northeast3-cloudkms.googleapis.com" Corresponds to the JSON property pscTargetService

Returns:

  • (String)


20926
20927
20928
# File 'lib/google/apis/compute_beta/classes.rb', line 20926

def psc_target_service
  @psc_target_service
end

#regionString

[Output Only] The URL of the region where the network endpoint group is located. Corresponds to the JSON property region

Returns:

  • (String)


20932
20933
20934
# File 'lib/google/apis/compute_beta/classes.rb', line 20932

def region
  @region
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


20937
20938
20939
# File 'lib/google/apis/compute_beta/classes.rb', line 20937

def self_link
  @self_link
end

#serverless_deploymentGoogle::Apis::ComputeBeta::NetworkEndpointGroupServerlessDeployment

Configuration for a serverless network endpoint group (NEG). The platform must be provided. Note: The target backend service must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property serverlessDeployment



20944
20945
20946
# File 'lib/google/apis/compute_beta/classes.rb', line 20944

def serverless_deployment
  @serverless_deployment
end

#sizeFixnum

[Output only] Number of network endpoints in the network endpoint group. Corresponds to the JSON property size

Returns:

  • (Fixnum)


20949
20950
20951
# File 'lib/google/apis/compute_beta/classes.rb', line 20949

def size
  @size
end

#subnetworkString

Optional URL of the subnetwork to which all network endpoints in the NEG belong. Corresponds to the JSON property subnetwork

Returns:

  • (String)


20955
20956
20957
# File 'lib/google/apis/compute_beta/classes.rb', line 20955

def subnetwork
  @subnetwork
end

#zoneString

[Output Only] The URL of the zone where the network endpoint group is located. Corresponds to the JSON property zone

Returns:

  • (String)


20960
20961
20962
# File 'lib/google/apis/compute_beta/classes.rb', line 20960

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



20967
20968
20969
20970
20971
20972
20973
20974
20975
20976
20977
20978
20979
20980
20981
20982
20983
20984
20985
20986
20987
20988
20989
# File 'lib/google/apis/compute_beta/classes.rb', line 20967

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @app_engine = args[:app_engine] if args.key?(:app_engine)
  @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
  @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @default_port = args[:default_port] if args.key?(:default_port)
  @description = args[:description] if args.key?(:description)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @load_balancer = args[:load_balancer] if args.key?(:load_balancer)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
  @psc_data = args[:psc_data] if args.key?(:psc_data)
  @psc_target_service = args[:psc_target_service] if args.key?(:psc_target_service)
  @region = args[:region] if args.key?(:region)
  @self_link = args[:self_link] if args.key?(:self_link)
  @serverless_deployment = args[:serverless_deployment] if args.key?(:serverless_deployment)
  @size = args[:size] if args.key?(:size)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @zone = args[:zone] if args.key?(:zone)
end