Class: Google::Apis::ComputeBeta::RouterStatusNatStatus

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

Status of a NAT contained in this router.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RouterStatusNatStatus

Returns a new instance of RouterStatusNatStatus.



32080
32081
32082
# File 'lib/google/apis/compute_beta/classes.rb', line 32080

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

Instance Attribute Details

#auto_allocated_nat_ipsArray<String>

A list of IPs auto-allocated for NAT. Example: ["1.1.1.1", "129.2.16.89"] Corresponds to the JSON property autoAllocatedNatIps

Returns:

  • (Array<String>)


32033
32034
32035
# File 'lib/google/apis/compute_beta/classes.rb', line 32033

def auto_allocated_nat_ips
  @auto_allocated_nat_ips
end

#drain_auto_allocated_nat_ipsArray<String>

A list of IPs auto-allocated for NAT that are in drain mode. Example: ["1.1.1. 1", "179.12.26.133"]. Corresponds to the JSON property drainAutoAllocatedNatIps

Returns:

  • (Array<String>)


32039
32040
32041
# File 'lib/google/apis/compute_beta/classes.rb', line 32039

def drain_auto_allocated_nat_ips
  @drain_auto_allocated_nat_ips
end

#drain_user_allocated_nat_ipsArray<String>

A list of IPs user-allocated for NAT that are in drain mode. Example: ["1.1.1. 1", "179.12.26.133"]. Corresponds to the JSON property drainUserAllocatedNatIps

Returns:

  • (Array<String>)


32045
32046
32047
# File 'lib/google/apis/compute_beta/classes.rb', line 32045

def drain_user_allocated_nat_ips
  @drain_user_allocated_nat_ips
end

#min_extra_nat_ips_neededFixnum

The number of extra IPs to allocate. This will be greater than 0 only if user- specified IPs are NOT enough to allow all configured VMs to use NAT. This value is meaningful only when auto-allocation of NAT IPs is not used. Corresponds to the JSON property minExtraNatIpsNeeded

Returns:

  • (Fixnum)


32052
32053
32054
# File 'lib/google/apis/compute_beta/classes.rb', line 32052

def min_extra_nat_ips_needed
  @min_extra_nat_ips_needed
end

#nameString

Unique name of this NAT. Corresponds to the JSON property name

Returns:

  • (String)


32057
32058
32059
# File 'lib/google/apis/compute_beta/classes.rb', line 32057

def name
  @name
end

#num_vm_endpoints_with_nat_mappingsFixnum

Number of VM endpoints (i.e., Nics) that can use NAT. Corresponds to the JSON property numVmEndpointsWithNatMappings

Returns:

  • (Fixnum)


32062
32063
32064
# File 'lib/google/apis/compute_beta/classes.rb', line 32062

def num_vm_endpoints_with_nat_mappings
  @num_vm_endpoints_with_nat_mappings
end

#rule_statusArray<Google::Apis::ComputeBeta::RouterStatusNatStatusNatRuleStatus>

Status of rules in this NAT. Corresponds to the JSON property ruleStatus



32067
32068
32069
# File 'lib/google/apis/compute_beta/classes.rb', line 32067

def rule_status
  @rule_status
end

#user_allocated_nat_ip_resourcesArray<String>

A list of fully qualified URLs of reserved IP address resources. Corresponds to the JSON property userAllocatedNatIpResources

Returns:

  • (Array<String>)


32072
32073
32074
# File 'lib/google/apis/compute_beta/classes.rb', line 32072

def user_allocated_nat_ip_resources
  @user_allocated_nat_ip_resources
end

#user_allocated_nat_ipsArray<String>

A list of IPs user-allocated for NAT. They will be raw IP strings like "179.12. 26.133". Corresponds to the JSON property userAllocatedNatIps

Returns:

  • (Array<String>)


32078
32079
32080
# File 'lib/google/apis/compute_beta/classes.rb', line 32078

def user_allocated_nat_ips
  @user_allocated_nat_ips
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



32085
32086
32087
32088
32089
32090
32091
32092
32093
32094
32095
# File 'lib/google/apis/compute_beta/classes.rb', line 32085

def update!(**args)
  @auto_allocated_nat_ips = args[:auto_allocated_nat_ips] if args.key?(:auto_allocated_nat_ips)
  @drain_auto_allocated_nat_ips = args[:drain_auto_allocated_nat_ips] if args.key?(:drain_auto_allocated_nat_ips)
  @drain_user_allocated_nat_ips = args[:drain_user_allocated_nat_ips] if args.key?(:drain_user_allocated_nat_ips)
  @min_extra_nat_ips_needed = args[:min_extra_nat_ips_needed] if args.key?(:min_extra_nat_ips_needed)
  @name = args[:name] if args.key?(:name)
  @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
  @rule_status = args[:rule_status] if args.key?(:rule_status)
  @user_allocated_nat_ip_resources = args[:user_allocated_nat_ip_resources] if args.key?(:user_allocated_nat_ip_resources)
  @user_allocated_nat_ips = args[:user_allocated_nat_ips] if args.key?(:user_allocated_nat_ips)
end