Class: Google::Apis::ComputeAlpha::ManagementInterface

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

Overview

Represents a managed interface for an accelerator domain. It defines the network endpoint and authentication configuration needed to access specific management services like NMX-C or gNMI.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ManagementInterface

Returns a new instance of ManagementInterface.



43145
43146
43147
# File 'lib/google/apis/compute_alpha/classes.rb', line 43145

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

Instance Attribute Details

#authentication_configGoogle::Apis::ComputeAlpha::AuthenticationConfig

Authentication configuration for the management interface, typically using mTLS. Corresponds to the JSON property authenticationConfig



43103
43104
43105
# File 'lib/google/apis/compute_alpha/classes.rb', line 43103

def authentication_config
  @authentication_config
end

#ipv4_addressString

The IPv4 internal IP address assigned to this management interface endpoint. This address will be used by the customer to route traffic to the management interface. Corresponds to the JSON property ipv4Address

Returns:

  • (String)


43110
43111
43112
# File 'lib/google/apis/compute_alpha/classes.rb', line 43110

def ipv4_address
  @ipv4_address
end

#ipv6_addressString

The IPv6 internal IP address assigned to this management interface endpoint. This address will be used by the customer to route traffic to the management interface if IPv6 is supported and configured. Corresponds to the JSON property ipv6Address

Returns:

  • (String)


43117
43118
43119
# File 'lib/google/apis/compute_alpha/classes.rb', line 43117

def ipv6_address
  @ipv6_address
end

#networkString

The URL of the VPC network to which the management interface endpoint is attached. The customer must ensure that this network is correctly configured for routing to the accelerator domain. Corresponds to the JSON property network

Returns:

  • (String)


43124
43125
43126
# File 'lib/google/apis/compute_alpha/classes.rb', line 43124

def network
  @network
end

#stateString

Corresponds to the JSON property state

Returns:

  • (String)


43129
43130
43131
# File 'lib/google/apis/compute_alpha/classes.rb', line 43129

def state
  @state
end

#subnetworkString

The URL of the subnetwork from which to assign the IP address for the endpoint. The subnetwork must belong to the specified network and have available IP addresses. Corresponds to the JSON property subnetwork

Returns:

  • (String)


43136
43137
43138
# File 'lib/google/apis/compute_alpha/classes.rb', line 43136

def subnetwork
  @subnetwork
end

#typeString

Required. The type of management service this interface provides. Supported types include NMX-C for partition management, gNMI for switch monitoring, and TPU slice management. Corresponds to the JSON property type

Returns:

  • (String)


43143
43144
43145
# File 'lib/google/apis/compute_alpha/classes.rb', line 43143

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



43150
43151
43152
43153
43154
43155
43156
43157
43158
# File 'lib/google/apis/compute_alpha/classes.rb', line 43150

def update!(**args)
  @authentication_config = args[:authentication_config] if args.key?(:authentication_config)
  @ipv4_address = args[:ipv4_address] if args.key?(:ipv4_address)
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
  @network = args[:network] if args.key?(:network)
  @state = args[:state] if args.key?(:state)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @type = args[:type] if args.key?(:type)
end