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.



58567
58568
58569
# File 'lib/google/apis/compute_beta/classes.rb', line 58567

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

Instance Attribute Details

#auto_allocated_nat_ipsArray<String>

Output only. 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>)


58518
58519
58520
# File 'lib/google/apis/compute_beta/classes.rb', line 58518

def auto_allocated_nat_ips
  @auto_allocated_nat_ips
end

#drain_auto_allocated_nat_ipsArray<String>

Output only. 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>)


58524
58525
58526
# File 'lib/google/apis/compute_beta/classes.rb', line 58524

def drain_auto_allocated_nat_ips
  @drain_auto_allocated_nat_ips
end

#drain_user_allocated_nat_ipsArray<String>

Output only. 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>)


58530
58531
58532
# File 'lib/google/apis/compute_beta/classes.rb', line 58530

def drain_user_allocated_nat_ips
  @drain_user_allocated_nat_ips
end

#min_extra_nat_ips_neededFixnum

Output only. 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)


58539
58540
58541
# File 'lib/google/apis/compute_beta/classes.rb', line 58539

def min_extra_nat_ips_needed
  @min_extra_nat_ips_needed
end

#nameString

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

Returns:

  • (String)


58544
58545
58546
# File 'lib/google/apis/compute_beta/classes.rb', line 58544

def name
  @name
end

#num_vm_endpoints_with_nat_mappingsFixnum

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

Returns:

  • (Fixnum)


58549
58550
58551
# File 'lib/google/apis/compute_beta/classes.rb', line 58549

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



58554
58555
58556
# File 'lib/google/apis/compute_beta/classes.rb', line 58554

def rule_status
  @rule_status
end

#user_allocated_nat_ip_resourcesArray<String>

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

Returns:

  • (Array<String>)


58559
58560
58561
# File 'lib/google/apis/compute_beta/classes.rb', line 58559

def user_allocated_nat_ip_resources
  @user_allocated_nat_ip_resources
end

#user_allocated_nat_ipsArray<String>

Output only. 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>)


58565
58566
58567
# File 'lib/google/apis/compute_beta/classes.rb', line 58565

def user_allocated_nat_ips
  @user_allocated_nat_ips
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



58572
58573
58574
58575
58576
58577
58578
58579
58580
58581
58582
# File 'lib/google/apis/compute_beta/classes.rb', line 58572

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