google-cloud-vmware_engine-v1 0.6.1 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/google/cloud/vmware_engine/v1/version.rb +1 -1
- data/lib/google/cloud/vmware_engine/v1/vmware_engine/client.rb +5394 -1061
- data/lib/google/cloud/vmware_engine/v1/vmware_engine/paths.rb +162 -0
- data/lib/google/cloud/vmware_engine/v1/vmware_engine/rest/client.rb +5039 -956
- data/lib/google/cloud/vmware_engine/v1/vmware_engine/rest/service_stub.rb +2373 -294
- data/lib/google/cloud/vmwareengine/v1/vmwareengine_pb.rb +48 -4
- data/lib/google/cloud/vmwareengine/v1/vmwareengine_resources_pb.rb +26 -1
- data/lib/google/cloud/vmwareengine/v1/vmwareengine_services_pb.rb +119 -5
- data/proto_docs/google/api/field_info.rb +65 -0
- data/proto_docs/google/cloud/vmwareengine/v1/vmwareengine.rb +1363 -15
- data/proto_docs/google/cloud/vmwareengine/v1/vmwareengine_resources.rb +666 -1
- metadata +3 -2
@@ -46,6 +46,12 @@ module Google
|
|
46
46
|
# * `managementIpAddressLayoutVersion=2`: Indicates the latest IP address
|
47
47
|
# layout used by all newly created private clouds. This version supports all
|
48
48
|
# current features.
|
49
|
+
# @!attribute [r] dns_server_ip
|
50
|
+
# @return [::String]
|
51
|
+
# Output only. DNS Server IP of the Private Cloud.
|
52
|
+
# All DNS queries can be forwarded to this address for name resolution of
|
53
|
+
# Private Cloud's management entities like vCenter, NSX-T Manager and
|
54
|
+
# ESXi hosts.
|
49
55
|
class NetworkConfig
|
50
56
|
include ::Google::Protobuf::MessageExts
|
51
57
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -66,7 +72,29 @@ module Google
|
|
66
72
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
67
73
|
end
|
68
74
|
|
69
|
-
#
|
75
|
+
# Configuration of a stretched cluster.
|
76
|
+
# @!attribute [rw] preferred_location
|
77
|
+
# @return [::String]
|
78
|
+
# Required. Zone that will remain operational when connection between the two
|
79
|
+
# zones is lost. Specify the resource name of a zone that belongs to the
|
80
|
+
# region of the private cloud. For example:
|
81
|
+
# `projects/{project}/locations/europe-west3-a` where `{project}` can either
|
82
|
+
# be a project number or a project ID.
|
83
|
+
# @!attribute [rw] secondary_location
|
84
|
+
# @return [::String]
|
85
|
+
# Required. Additional zone for a higher level of availability and load
|
86
|
+
# balancing. Specify the resource name of a zone that belongs to the region
|
87
|
+
# of the private cloud. For example:
|
88
|
+
# `projects/{project}/locations/europe-west3-b` where `{project}` can either
|
89
|
+
# be a project number or a project ID.
|
90
|
+
class StretchedClusterConfig
|
91
|
+
include ::Google::Protobuf::MessageExts
|
92
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
93
|
+
end
|
94
|
+
|
95
|
+
# Represents a private cloud resource. Private clouds of type `STANDARD` and
|
96
|
+
# `TIME_LIMITED` are zonal resources, `STRETCHED` private clouds are
|
97
|
+
# regional.
|
70
98
|
# @!attribute [r] name
|
71
99
|
# @return [::String]
|
72
100
|
# Output only. The resource name of this private cloud.
|
@@ -139,6 +167,10 @@ module Google
|
|
139
167
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VmwareEngine::V1::NodeTypeConfig}]
|
140
168
|
# Required. The map of cluster node types in this cluster, where the key is
|
141
169
|
# canonical identifier of the node type (corresponds to the `NodeType`).
|
170
|
+
# @!attribute [rw] stretched_cluster_config
|
171
|
+
# @return [::Google::Cloud::VmwareEngine::V1::StretchedClusterConfig]
|
172
|
+
# Optional. Configuration of a stretched cluster. Required for STRETCHED
|
173
|
+
# private clouds.
|
142
174
|
class ManagementCluster
|
143
175
|
include ::Google::Protobuf::MessageExts
|
144
176
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -189,6 +221,10 @@ module Google
|
|
189
221
|
# can be converted into standard private cloud by expanding it up to 3
|
190
222
|
# or more nodes.
|
191
223
|
TIME_LIMITED = 1
|
224
|
+
|
225
|
+
# Stretched private cloud is a regional resource with redundancy,
|
226
|
+
# with a minimum of 6 nodes, nodes count has to be even.
|
227
|
+
STRETCHED = 2
|
192
228
|
end
|
193
229
|
end
|
194
230
|
|
@@ -221,6 +257,10 @@ module Google
|
|
221
257
|
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VmwareEngine::V1::NodeTypeConfig}]
|
222
258
|
# Required. The map of cluster node types in this cluster, where the key is
|
223
259
|
# canonical identifier of the node type (corresponds to the `NodeType`).
|
260
|
+
# @!attribute [rw] stretched_cluster_config
|
261
|
+
# @return [::Google::Cloud::VmwareEngine::V1::StretchedClusterConfig]
|
262
|
+
# Optional. Configuration of a stretched cluster. Required for clusters that
|
263
|
+
# belong to a STRETCHED private cloud.
|
224
264
|
class Cluster
|
225
265
|
include ::Google::Protobuf::MessageExts
|
226
266
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -258,6 +298,111 @@ module Google
|
|
258
298
|
end
|
259
299
|
end
|
260
300
|
|
301
|
+
# Node in a cluster.
|
302
|
+
# @!attribute [r] name
|
303
|
+
# @return [::String]
|
304
|
+
# Output only. The resource name of this node.
|
305
|
+
# Resource names are schemeless URIs that follow the conventions in
|
306
|
+
# https://cloud.google.com/apis/design/resource_names.
|
307
|
+
# For example:
|
308
|
+
# projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster/nodes/my-node
|
309
|
+
# @!attribute [r] fqdn
|
310
|
+
# @return [::String]
|
311
|
+
# Output only. Fully qualified domain name of the node.
|
312
|
+
# @!attribute [r] internal_ip
|
313
|
+
# @return [::String]
|
314
|
+
# Output only. Internal IP address of the node.
|
315
|
+
# @!attribute [r] node_type_id
|
316
|
+
# @return [::String]
|
317
|
+
# Output only. The canonical identifier of the node type (corresponds to the
|
318
|
+
# `NodeType`).
|
319
|
+
# For example: standard-72.
|
320
|
+
# @!attribute [r] version
|
321
|
+
# @return [::String]
|
322
|
+
# Output only. The version number of the VMware ESXi
|
323
|
+
# management component in this cluster.
|
324
|
+
# @!attribute [r] custom_core_count
|
325
|
+
# @return [::Integer]
|
326
|
+
# Output only. Customized number of cores
|
327
|
+
# @!attribute [r] state
|
328
|
+
# @return [::Google::Cloud::VmwareEngine::V1::Node::State]
|
329
|
+
# Output only. The state of the appliance.
|
330
|
+
class Node
|
331
|
+
include ::Google::Protobuf::MessageExts
|
332
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
333
|
+
|
334
|
+
# Enum State defines possible states of a node in a cluster.
|
335
|
+
module State
|
336
|
+
# The default value. This value should never be used.
|
337
|
+
STATE_UNSPECIFIED = 0
|
338
|
+
|
339
|
+
# Node is operational and can be used by the user.
|
340
|
+
ACTIVE = 1
|
341
|
+
|
342
|
+
# Node is being provisioned.
|
343
|
+
CREATING = 2
|
344
|
+
|
345
|
+
# Node is in a failed state.
|
346
|
+
FAILED = 3
|
347
|
+
|
348
|
+
# Node is undergoing maintenance, e.g.: during private cloud upgrade.
|
349
|
+
UPGRADING = 4
|
350
|
+
end
|
351
|
+
end
|
352
|
+
|
353
|
+
# Represents an allocated external IP address and its corresponding internal IP
|
354
|
+
# address in a private cloud.
|
355
|
+
# @!attribute [r] name
|
356
|
+
# @return [::String]
|
357
|
+
# Output only. The resource name of this external IP address.
|
358
|
+
# Resource names are schemeless URIs that follow the conventions in
|
359
|
+
# https://cloud.google.com/apis/design/resource_names.
|
360
|
+
# For example:
|
361
|
+
# `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-address`
|
362
|
+
# @!attribute [r] create_time
|
363
|
+
# @return [::Google::Protobuf::Timestamp]
|
364
|
+
# Output only. Creation time of this resource.
|
365
|
+
# @!attribute [r] update_time
|
366
|
+
# @return [::Google::Protobuf::Timestamp]
|
367
|
+
# Output only. Last update time of this resource.
|
368
|
+
# @!attribute [rw] internal_ip
|
369
|
+
# @return [::String]
|
370
|
+
# The internal IP address of a workload VM.
|
371
|
+
# @!attribute [r] external_ip
|
372
|
+
# @return [::String]
|
373
|
+
# Output only. The external IP address of a workload VM.
|
374
|
+
# @!attribute [r] state
|
375
|
+
# @return [::Google::Cloud::VmwareEngine::V1::ExternalAddress::State]
|
376
|
+
# Output only. The state of the resource.
|
377
|
+
# @!attribute [r] uid
|
378
|
+
# @return [::String]
|
379
|
+
# Output only. System-generated unique identifier for the resource.
|
380
|
+
# @!attribute [rw] description
|
381
|
+
# @return [::String]
|
382
|
+
# User-provided description for this resource.
|
383
|
+
class ExternalAddress
|
384
|
+
include ::Google::Protobuf::MessageExts
|
385
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
386
|
+
|
387
|
+
# Enum State defines possible states of external addresses.
|
388
|
+
module State
|
389
|
+
# The default value. This value should never be used.
|
390
|
+
STATE_UNSPECIFIED = 0
|
391
|
+
|
392
|
+
# The address is ready.
|
393
|
+
ACTIVE = 1
|
394
|
+
|
395
|
+
# The address is being created.
|
396
|
+
CREATING = 2
|
397
|
+
|
398
|
+
# The address is being updated.
|
399
|
+
UPDATING = 3
|
400
|
+
|
401
|
+
# The address is being deleted.
|
402
|
+
DELETING = 4
|
403
|
+
end
|
404
|
+
end
|
405
|
+
|
261
406
|
# Subnet in a private cloud. Either `management` subnets (such as vMotion) that
|
262
407
|
# are read-only, or `userDefined`, which can also be updated.
|
263
408
|
# @!attribute [r] name
|
@@ -281,6 +426,9 @@ module Google
|
|
281
426
|
# @!attribute [r] state
|
282
427
|
# @return [::Google::Cloud::VmwareEngine::V1::Subnet::State]
|
283
428
|
# Output only. The state of the resource.
|
429
|
+
# @!attribute [r] vlan_id
|
430
|
+
# @return [::Integer]
|
431
|
+
# Output only. VLAN ID of the VLAN on which the subnet is configured
|
284
432
|
class Subnet
|
285
433
|
include ::Google::Protobuf::MessageExts
|
286
434
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -311,6 +459,195 @@ module Google
|
|
311
459
|
end
|
312
460
|
end
|
313
461
|
|
462
|
+
# External access firewall rules for filtering incoming traffic destined to
|
463
|
+
# `ExternalAddress` resources.
|
464
|
+
# @!attribute [r] name
|
465
|
+
# @return [::String]
|
466
|
+
# Output only. The resource name of this external access rule.
|
467
|
+
# Resource names are schemeless URIs that follow the conventions in
|
468
|
+
# https://cloud.google.com/apis/design/resource_names.
|
469
|
+
# For example:
|
470
|
+
# `projects/my-project/locations/us-central1/networkPolicies/my-policy/externalAccessRules/my-rule`
|
471
|
+
# @!attribute [r] create_time
|
472
|
+
# @return [::Google::Protobuf::Timestamp]
|
473
|
+
# Output only. Creation time of this resource.
|
474
|
+
# @!attribute [r] update_time
|
475
|
+
# @return [::Google::Protobuf::Timestamp]
|
476
|
+
# Output only. Last update time of this resource.
|
477
|
+
# @!attribute [rw] description
|
478
|
+
# @return [::String]
|
479
|
+
# User-provided description for this external access rule.
|
480
|
+
# @!attribute [rw] priority
|
481
|
+
# @return [::Integer]
|
482
|
+
# External access rule priority, which determines the external access rule to
|
483
|
+
# use when multiple rules apply. If multiple rules have the same priority,
|
484
|
+
# their ordering is non-deterministic. If specific ordering is required,
|
485
|
+
# assign unique priorities to enforce such ordering. The external access rule
|
486
|
+
# priority is an integer from 100 to 4096, both inclusive. Lower integers
|
487
|
+
# indicate higher precedence. For example, a rule with priority `100` has
|
488
|
+
# higher precedence than a rule with priority `101`.
|
489
|
+
# @!attribute [rw] action
|
490
|
+
# @return [::Google::Cloud::VmwareEngine::V1::ExternalAccessRule::Action]
|
491
|
+
# The action that the external access rule performs.
|
492
|
+
# @!attribute [rw] ip_protocol
|
493
|
+
# @return [::String]
|
494
|
+
# The IP protocol to which the external access rule applies. This value can
|
495
|
+
# be one of the following three protocol strings (not case-sensitive):
|
496
|
+
# `tcp`, `udp`, or `icmp`.
|
497
|
+
# @!attribute [rw] source_ip_ranges
|
498
|
+
# @return [::Array<::Google::Cloud::VmwareEngine::V1::ExternalAccessRule::IpRange>]
|
499
|
+
# If source ranges are specified, the external access rule applies only to
|
500
|
+
# traffic that has a source IP address in these ranges. These ranges can
|
501
|
+
# either be expressed in the CIDR format or as an IP address. As only inbound
|
502
|
+
# rules are supported, `ExternalAddress` resources cannot be the source IP
|
503
|
+
# addresses of an external access rule. To match all source addresses,
|
504
|
+
# specify `0.0.0.0/0`.
|
505
|
+
# @!attribute [rw] source_ports
|
506
|
+
# @return [::Array<::String>]
|
507
|
+
# A list of source ports to which the external access rule applies. This
|
508
|
+
# field is only applicable for the UDP or TCP protocol.
|
509
|
+
# Each entry must be either an integer or a range. For example: `["22"]`,
|
510
|
+
# `["80","443"]`, or `["12345-12349"]`. To match all source ports, specify
|
511
|
+
# `["0-65535"]`.
|
512
|
+
# @!attribute [rw] destination_ip_ranges
|
513
|
+
# @return [::Array<::Google::Cloud::VmwareEngine::V1::ExternalAccessRule::IpRange>]
|
514
|
+
# If destination ranges are specified, the external access rule applies only
|
515
|
+
# to the traffic that has a destination IP address in these ranges. The
|
516
|
+
# specified IP addresses must have reserved external IP addresses in the
|
517
|
+
# scope of the parent network policy. To match all external IP addresses in
|
518
|
+
# the scope of the parent network policy, specify `0.0.0.0/0`. To match a
|
519
|
+
# specific external IP address, specify it using the
|
520
|
+
# `IpRange.external_address` property.
|
521
|
+
# @!attribute [rw] destination_ports
|
522
|
+
# @return [::Array<::String>]
|
523
|
+
# A list of destination ports to which the external access rule applies. This
|
524
|
+
# field is only applicable for the UDP or TCP protocol.
|
525
|
+
# Each entry must be either an integer or a range. For example: `["22"]`,
|
526
|
+
# `["80","443"]`, or `["12345-12349"]`. To match all destination ports,
|
527
|
+
# specify `["0-65535"]`.
|
528
|
+
# @!attribute [r] state
|
529
|
+
# @return [::Google::Cloud::VmwareEngine::V1::ExternalAccessRule::State]
|
530
|
+
# Output only. The state of the resource.
|
531
|
+
# @!attribute [r] uid
|
532
|
+
# @return [::String]
|
533
|
+
# Output only. System-generated unique identifier for the resource.
|
534
|
+
class ExternalAccessRule
|
535
|
+
include ::Google::Protobuf::MessageExts
|
536
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
537
|
+
|
538
|
+
# An IP range provided in any one of the supported formats.
|
539
|
+
# @!attribute [rw] ip_address
|
540
|
+
# @return [::String]
|
541
|
+
# A single IP address. For example: `10.0.0.5`.
|
542
|
+
# @!attribute [rw] ip_address_range
|
543
|
+
# @return [::String]
|
544
|
+
# An IP address range in the CIDR format. For example: `10.0.0.0/24`.
|
545
|
+
# @!attribute [rw] external_address
|
546
|
+
# @return [::String]
|
547
|
+
# The name of an `ExternalAddress` resource. The external address must
|
548
|
+
# have been reserved in the scope of this external access rule's parent
|
549
|
+
# network policy. Provide the external address name in the form of
|
550
|
+
# `projects/{project}/locations/{location}/privateClouds/{private_cloud}/externalAddresses/{external_address}`.
|
551
|
+
# For example:
|
552
|
+
# `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-address`.
|
553
|
+
class IpRange
|
554
|
+
include ::Google::Protobuf::MessageExts
|
555
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
556
|
+
end
|
557
|
+
|
558
|
+
# Action determines whether the external access rule permits or blocks
|
559
|
+
# traffic, subject to the other components of the rule matching the traffic.
|
560
|
+
module Action
|
561
|
+
# Defaults to allow.
|
562
|
+
ACTION_UNSPECIFIED = 0
|
563
|
+
|
564
|
+
# Allows connections that match the other specified components.
|
565
|
+
ALLOW = 1
|
566
|
+
|
567
|
+
# Blocks connections that match the other specified components.
|
568
|
+
DENY = 2
|
569
|
+
end
|
570
|
+
|
571
|
+
# Defines possible states of external access firewall rules.
|
572
|
+
module State
|
573
|
+
# The default value. This value is used if the state is omitted.
|
574
|
+
STATE_UNSPECIFIED = 0
|
575
|
+
|
576
|
+
# The rule is ready.
|
577
|
+
ACTIVE = 1
|
578
|
+
|
579
|
+
# The rule is being created.
|
580
|
+
CREATING = 2
|
581
|
+
|
582
|
+
# The rule is being updated.
|
583
|
+
UPDATING = 3
|
584
|
+
|
585
|
+
# The rule is being deleted.
|
586
|
+
DELETING = 4
|
587
|
+
end
|
588
|
+
end
|
589
|
+
|
590
|
+
# Logging server to receive vCenter or ESXi logs.
|
591
|
+
# @!attribute [r] name
|
592
|
+
# @return [::String]
|
593
|
+
# Output only. The resource name of this logging server.
|
594
|
+
# Resource names are schemeless URIs that follow the conventions in
|
595
|
+
# https://cloud.google.com/apis/design/resource_names.
|
596
|
+
# For example:
|
597
|
+
# `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/loggingServers/my-logging-server`
|
598
|
+
# @!attribute [r] create_time
|
599
|
+
# @return [::Google::Protobuf::Timestamp]
|
600
|
+
# Output only. Creation time of this resource.
|
601
|
+
# @!attribute [r] update_time
|
602
|
+
# @return [::Google::Protobuf::Timestamp]
|
603
|
+
# Output only. Last update time of this resource.
|
604
|
+
# @!attribute [rw] hostname
|
605
|
+
# @return [::String]
|
606
|
+
# Required. Fully-qualified domain name (FQDN) or IP Address of the logging
|
607
|
+
# server.
|
608
|
+
# @!attribute [rw] port
|
609
|
+
# @return [::Integer]
|
610
|
+
# Required. Port number at which the logging server receives logs.
|
611
|
+
# @!attribute [rw] protocol
|
612
|
+
# @return [::Google::Cloud::VmwareEngine::V1::LoggingServer::Protocol]
|
613
|
+
# Required. Protocol used by vCenter to send logs to a logging server.
|
614
|
+
# @!attribute [rw] source_type
|
615
|
+
# @return [::Google::Cloud::VmwareEngine::V1::LoggingServer::SourceType]
|
616
|
+
# Required. The type of component that produces logs that will be forwarded
|
617
|
+
# to this logging server.
|
618
|
+
# @!attribute [r] uid
|
619
|
+
# @return [::String]
|
620
|
+
# Output only. System-generated unique identifier for the resource.
|
621
|
+
class LoggingServer
|
622
|
+
include ::Google::Protobuf::MessageExts
|
623
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
624
|
+
|
625
|
+
# Defines possible protocols used to send logs to
|
626
|
+
# a logging server.
|
627
|
+
module Protocol
|
628
|
+
# Unspecified communications protocol. This is the default value.
|
629
|
+
PROTOCOL_UNSPECIFIED = 0
|
630
|
+
|
631
|
+
# UDP
|
632
|
+
UDP = 1
|
633
|
+
|
634
|
+
# TCP
|
635
|
+
TCP = 2
|
636
|
+
end
|
637
|
+
|
638
|
+
# Defines possible types of component that produces logs.
|
639
|
+
module SourceType
|
640
|
+
# The default value. This value should never be used.
|
641
|
+
SOURCE_TYPE_UNSPECIFIED = 0
|
642
|
+
|
643
|
+
# Logs produced by ESXI hosts
|
644
|
+
ESXI = 1
|
645
|
+
|
646
|
+
# Logs produced by vCenter server
|
647
|
+
VCSA = 2
|
648
|
+
end
|
649
|
+
end
|
650
|
+
|
314
651
|
# Describes node type.
|
315
652
|
# @!attribute [r] name
|
316
653
|
# @return [::String]
|
@@ -342,9 +679,42 @@ module Google
|
|
342
679
|
# @!attribute [r] available_custom_core_counts
|
343
680
|
# @return [::Array<::Integer>]
|
344
681
|
# Output only. List of possible values of custom core count.
|
682
|
+
# @!attribute [r] kind
|
683
|
+
# @return [::Google::Cloud::VmwareEngine::V1::NodeType::Kind]
|
684
|
+
# Output only. The type of the resource.
|
685
|
+
# @!attribute [r] families
|
686
|
+
# @return [::Array<::String>]
|
687
|
+
# Output only. Families of the node type.
|
688
|
+
# For node types to be in the same cluster
|
689
|
+
# they must share at least one element in the `families`.
|
690
|
+
# @!attribute [r] capabilities
|
691
|
+
# @return [::Array<::Google::Cloud::VmwareEngine::V1::NodeType::Capability>]
|
692
|
+
# Output only. Capabilities of this node type.
|
345
693
|
class NodeType
|
346
694
|
include ::Google::Protobuf::MessageExts
|
347
695
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
696
|
+
|
697
|
+
# Enum Kind defines possible types of a NodeType.
|
698
|
+
module Kind
|
699
|
+
# The default value. This value should never be used.
|
700
|
+
KIND_UNSPECIFIED = 0
|
701
|
+
|
702
|
+
# Standard HCI node.
|
703
|
+
STANDARD = 1
|
704
|
+
|
705
|
+
# Storage only Node.
|
706
|
+
STORAGE_ONLY = 2
|
707
|
+
end
|
708
|
+
|
709
|
+
# Capability of a node type.
|
710
|
+
module Capability
|
711
|
+
# The default value. This value is used if the capability is omitted or
|
712
|
+
# unknown.
|
713
|
+
CAPABILITY_UNSPECIFIED = 0
|
714
|
+
|
715
|
+
# This node type supports stretch clusters.
|
716
|
+
STRETCHED_CLUSTERS = 1
|
717
|
+
end
|
348
718
|
end
|
349
719
|
|
350
720
|
# Credentials for a private cloud.
|
@@ -496,6 +866,178 @@ module Google
|
|
496
866
|
end
|
497
867
|
end
|
498
868
|
|
869
|
+
# DNS forwarding config.
|
870
|
+
# This config defines a list of domain to name server mappings,
|
871
|
+
# and is attached to the private cloud for custom domain resolution.
|
872
|
+
# @!attribute [r] name
|
873
|
+
# @return [::String]
|
874
|
+
# Output only. The resource name of this DNS profile.
|
875
|
+
# Resource names are schemeless URIs that follow the conventions in
|
876
|
+
# https://cloud.google.com/apis/design/resource_names.
|
877
|
+
# For example:
|
878
|
+
# `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForwarding`
|
879
|
+
# @!attribute [r] create_time
|
880
|
+
# @return [::Google::Protobuf::Timestamp]
|
881
|
+
# Output only. Creation time of this resource.
|
882
|
+
# @!attribute [r] update_time
|
883
|
+
# @return [::Google::Protobuf::Timestamp]
|
884
|
+
# Output only. Last update time of this resource.
|
885
|
+
# @!attribute [rw] forwarding_rules
|
886
|
+
# @return [::Array<::Google::Cloud::VmwareEngine::V1::DnsForwarding::ForwardingRule>]
|
887
|
+
# Required. List of domain mappings to configure
|
888
|
+
class DnsForwarding
|
889
|
+
include ::Google::Protobuf::MessageExts
|
890
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
891
|
+
|
892
|
+
# A forwarding rule is a mapping of a `domain` to `name_servers`.
|
893
|
+
# This mapping allows VMware Engine to resolve domains for attached private
|
894
|
+
# clouds by forwarding DNS requests for a given domain to the specified
|
895
|
+
# nameservers.
|
896
|
+
# @!attribute [rw] domain
|
897
|
+
# @return [::String]
|
898
|
+
# Required. Domain used to resolve a `name_servers` list.
|
899
|
+
# @!attribute [rw] name_servers
|
900
|
+
# @return [::Array<::String>]
|
901
|
+
# Required. List of DNS servers to use for domain resolution
|
902
|
+
class ForwardingRule
|
903
|
+
include ::Google::Protobuf::MessageExts
|
904
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
905
|
+
end
|
906
|
+
end
|
907
|
+
|
908
|
+
# Details of a network peering.
|
909
|
+
# @!attribute [r] name
|
910
|
+
# @return [::String]
|
911
|
+
# Output only. The resource name of the network peering. NetworkPeering is a
|
912
|
+
# global resource and location can only be global. Resource names are
|
913
|
+
# scheme-less URIs that follow the conventions in
|
914
|
+
# https://cloud.google.com/apis/design/resource_names.
|
915
|
+
# For example:
|
916
|
+
# `projects/my-project/locations/global/networkPeerings/my-peering`
|
917
|
+
# @!attribute [r] create_time
|
918
|
+
# @return [::Google::Protobuf::Timestamp]
|
919
|
+
# Output only. Creation time of this resource.
|
920
|
+
# @!attribute [r] update_time
|
921
|
+
# @return [::Google::Protobuf::Timestamp]
|
922
|
+
# Output only. Last update time of this resource.
|
923
|
+
# @!attribute [rw] peer_network
|
924
|
+
# @return [::String]
|
925
|
+
# Required. The relative resource name of the network to peer with
|
926
|
+
# a standard VMware Engine network. The provided network can be a
|
927
|
+
# consumer VPC network or another standard VMware Engine network. If the
|
928
|
+
# `peer_network_type` is VMWARE_ENGINE_NETWORK, specify the name in the form:
|
929
|
+
# `projects/{project}/locations/global/vmwareEngineNetworks/{vmware_engine_network_id}`.
|
930
|
+
# Otherwise specify the name in the form:
|
931
|
+
# `projects/{project}/global/networks/{network_id}`, where
|
932
|
+
# `{project}` can either be a project number or a project ID.
|
933
|
+
# @!attribute [rw] export_custom_routes
|
934
|
+
# @return [::Boolean]
|
935
|
+
# Optional. True if custom routes are exported to the peered network;
|
936
|
+
# false otherwise. The default value is true.
|
937
|
+
# @!attribute [rw] import_custom_routes
|
938
|
+
# @return [::Boolean]
|
939
|
+
# Optional. True if custom routes are imported from the peered network;
|
940
|
+
# false otherwise. The default value is true.
|
941
|
+
# @!attribute [rw] exchange_subnet_routes
|
942
|
+
# @return [::Boolean]
|
943
|
+
# Optional. True if full mesh connectivity is created and managed
|
944
|
+
# automatically between peered networks; false otherwise. Currently this
|
945
|
+
# field is always true because Google Compute Engine automatically creates
|
946
|
+
# and manages subnetwork routes between two VPC networks when peering state
|
947
|
+
# is 'ACTIVE'.
|
948
|
+
# @!attribute [rw] export_custom_routes_with_public_ip
|
949
|
+
# @return [::Boolean]
|
950
|
+
# Optional. True if all subnet routes with a public IP address range are
|
951
|
+
# exported; false otherwise. The default value is true. IPv4 special-use
|
952
|
+
# ranges (https://en.wikipedia.org/wiki/IPv4#Special_addresses) are always
|
953
|
+
# exported to peers and are not controlled by this field.
|
954
|
+
# @!attribute [rw] import_custom_routes_with_public_ip
|
955
|
+
# @return [::Boolean]
|
956
|
+
# Optional. True if all subnet routes with public IP address range are
|
957
|
+
# imported; false otherwise. The default value is true. IPv4 special-use
|
958
|
+
# ranges (https://en.wikipedia.org/wiki/IPv4#Special_addresses) are always
|
959
|
+
# imported to peers and are not controlled by this field.
|
960
|
+
# @!attribute [r] state
|
961
|
+
# @return [::Google::Cloud::VmwareEngine::V1::NetworkPeering::State]
|
962
|
+
# Output only. State of the network peering. This field
|
963
|
+
# has a value of 'ACTIVE' when there's a matching configuration in the peer
|
964
|
+
# network. New values may be added to this enum when appropriate.
|
965
|
+
# @!attribute [r] state_details
|
966
|
+
# @return [::String]
|
967
|
+
# Output only. Output Only. Details about the current state of the network
|
968
|
+
# peering.
|
969
|
+
# @!attribute [rw] peer_mtu
|
970
|
+
# @return [::Integer]
|
971
|
+
# Optional. Maximum transmission unit (MTU) in bytes.
|
972
|
+
# The default value is `1500`. If a value of `0` is provided for this field,
|
973
|
+
# VMware Engine uses the default value instead.
|
974
|
+
# @!attribute [rw] peer_network_type
|
975
|
+
# @return [::Google::Cloud::VmwareEngine::V1::NetworkPeering::PeerNetworkType]
|
976
|
+
# Required. The type of the network to peer with the VMware Engine network.
|
977
|
+
# @!attribute [r] uid
|
978
|
+
# @return [::String]
|
979
|
+
# Output only. System-generated unique identifier for the resource.
|
980
|
+
# @!attribute [rw] vmware_engine_network
|
981
|
+
# @return [::String]
|
982
|
+
# Required. The relative resource name of the VMware Engine network.
|
983
|
+
# Specify the name in the following form:
|
984
|
+
# `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}`
|
985
|
+
# where `{project}` can either be a project number or a project ID.
|
986
|
+
# @!attribute [rw] description
|
987
|
+
# @return [::String]
|
988
|
+
# Optional. User-provided description for this network peering.
|
989
|
+
class NetworkPeering
|
990
|
+
include ::Google::Protobuf::MessageExts
|
991
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
992
|
+
|
993
|
+
# Possible states of a network peering.
|
994
|
+
module State
|
995
|
+
# Unspecified network peering state. This is the default value.
|
996
|
+
STATE_UNSPECIFIED = 0
|
997
|
+
|
998
|
+
# The peering is not active.
|
999
|
+
INACTIVE = 1
|
1000
|
+
|
1001
|
+
# The peering is active.
|
1002
|
+
ACTIVE = 2
|
1003
|
+
|
1004
|
+
# The peering is being created.
|
1005
|
+
CREATING = 3
|
1006
|
+
|
1007
|
+
# The peering is being deleted.
|
1008
|
+
DELETING = 4
|
1009
|
+
end
|
1010
|
+
|
1011
|
+
# Type or purpose of the network peering connection.
|
1012
|
+
module PeerNetworkType
|
1013
|
+
# Unspecified
|
1014
|
+
PEER_NETWORK_TYPE_UNSPECIFIED = 0
|
1015
|
+
|
1016
|
+
# Peering connection used for connecting to another VPC network established
|
1017
|
+
# by the same user. For example, a peering connection to another VPC
|
1018
|
+
# network in the same project or to an on-premises network.
|
1019
|
+
STANDARD = 1
|
1020
|
+
|
1021
|
+
# Peering connection used for connecting to another VMware Engine network.
|
1022
|
+
VMWARE_ENGINE_NETWORK = 2
|
1023
|
+
|
1024
|
+
# Peering connection used for establishing [private services
|
1025
|
+
# access](https://cloud.google.com/vpc/docs/private-services-access).
|
1026
|
+
PRIVATE_SERVICES_ACCESS = 3
|
1027
|
+
|
1028
|
+
# Peering connection used for connecting to NetApp Cloud Volumes.
|
1029
|
+
NETAPP_CLOUD_VOLUMES = 4
|
1030
|
+
|
1031
|
+
# Peering connection used for connecting to third-party services. Most
|
1032
|
+
# third-party services require manual setup of reverse peering on the VPC
|
1033
|
+
# network associated with the third-party service.
|
1034
|
+
THIRD_PARTY_SERVICE = 5
|
1035
|
+
|
1036
|
+
# Peering connection used for connecting to Dell PowerScale Filers
|
1037
|
+
DELL_POWERSCALE = 6
|
1038
|
+
end
|
1039
|
+
end
|
1040
|
+
|
499
1041
|
# Exchanged network peering route.
|
500
1042
|
# @!attribute [r] dest_range
|
501
1043
|
# @return [::String]
|
@@ -645,6 +1187,72 @@ module Google
|
|
645
1187
|
end
|
646
1188
|
end
|
647
1189
|
|
1190
|
+
# Represents a binding between a network and the management DNS zone.
|
1191
|
+
# A management DNS zone is the Cloud DNS cross-project binding zone that
|
1192
|
+
# VMware Engine creates for each private cloud. It contains FQDNs and
|
1193
|
+
# corresponding IP addresses for the private cloud's ESXi hosts and management
|
1194
|
+
# VM appliances like vCenter and NSX Manager.
|
1195
|
+
# @!attribute [r] name
|
1196
|
+
# @return [::String]
|
1197
|
+
# Output only. The resource name of this binding.
|
1198
|
+
# Resource names are schemeless URIs that follow the conventions in
|
1199
|
+
# https://cloud.google.com/apis/design/resource_names.
|
1200
|
+
# For example:
|
1201
|
+
# `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managementDnsZoneBindings/my-management-dns-zone-binding`
|
1202
|
+
# @!attribute [r] create_time
|
1203
|
+
# @return [::Google::Protobuf::Timestamp]
|
1204
|
+
# Output only. Creation time of this resource.
|
1205
|
+
# @!attribute [r] update_time
|
1206
|
+
# @return [::Google::Protobuf::Timestamp]
|
1207
|
+
# Output only. Last update time of this resource.
|
1208
|
+
# @!attribute [r] state
|
1209
|
+
# @return [::Google::Cloud::VmwareEngine::V1::ManagementDnsZoneBinding::State]
|
1210
|
+
# Output only. The state of the resource.
|
1211
|
+
# @!attribute [rw] description
|
1212
|
+
# @return [::String]
|
1213
|
+
# User-provided description for this resource.
|
1214
|
+
# @!attribute [rw] vpc_network
|
1215
|
+
# @return [::String]
|
1216
|
+
# Network to bind is a standard consumer VPC.
|
1217
|
+
# Specify the name in the following form for consumer
|
1218
|
+
# VPC network: `projects/{project}/global/networks/{network_id}`.
|
1219
|
+
# `{project}` can either be a project number or a project ID.
|
1220
|
+
# @!attribute [rw] vmware_engine_network
|
1221
|
+
# @return [::String]
|
1222
|
+
# Network to bind is a VMware Engine network.
|
1223
|
+
# Specify the name in the following form for VMware engine network:
|
1224
|
+
# `projects/{project}/locations/global/vmwareEngineNetworks/{vmware_engine_network_id}`.
|
1225
|
+
# `{project}` can either be a project number or a project ID.
|
1226
|
+
# @!attribute [r] uid
|
1227
|
+
# @return [::String]
|
1228
|
+
# Output only. System-generated unique identifier for the resource.
|
1229
|
+
class ManagementDnsZoneBinding
|
1230
|
+
include ::Google::Protobuf::MessageExts
|
1231
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1232
|
+
|
1233
|
+
# Enum State defines possible states of binding between the consumer VPC
|
1234
|
+
# network and the management DNS zone.
|
1235
|
+
module State
|
1236
|
+
# The default value. This value should never be used.
|
1237
|
+
STATE_UNSPECIFIED = 0
|
1238
|
+
|
1239
|
+
# The binding is ready.
|
1240
|
+
ACTIVE = 1
|
1241
|
+
|
1242
|
+
# The binding is being created.
|
1243
|
+
CREATING = 2
|
1244
|
+
|
1245
|
+
# The binding is being updated.
|
1246
|
+
UPDATING = 3
|
1247
|
+
|
1248
|
+
# The binding is being deleted.
|
1249
|
+
DELETING = 4
|
1250
|
+
|
1251
|
+
# The binding has failed.
|
1252
|
+
FAILED = 5
|
1253
|
+
end
|
1254
|
+
end
|
1255
|
+
|
648
1256
|
# VMware Engine network resource that provides connectivity for VMware Engine
|
649
1257
|
# private clouds.
|
650
1258
|
# @!attribute [r] name
|
@@ -750,6 +1358,9 @@ module Google
|
|
750
1358
|
# of type `STANDARD`. This network type is no longer used for new VMware
|
751
1359
|
# Engine private cloud deployments.
|
752
1360
|
LEGACY = 1
|
1361
|
+
|
1362
|
+
# Standard network type used for private cloud connectivity.
|
1363
|
+
STANDARD = 2
|
753
1364
|
end
|
754
1365
|
end
|
755
1366
|
|
@@ -895,6 +1506,60 @@ module Google
|
|
895
1506
|
PEERING_INACTIVE = 2
|
896
1507
|
end
|
897
1508
|
end
|
1509
|
+
|
1510
|
+
# VmwareEngine specific metadata for the given
|
1511
|
+
# `::Google::Cloud::Location::Location`. It is
|
1512
|
+
# returned as a content of the `google.cloud.location.Location.metadata` field.
|
1513
|
+
# @!attribute [r] capabilities
|
1514
|
+
# @return [::Array<::Google::Cloud::VmwareEngine::V1::LocationMetadata::Capability>]
|
1515
|
+
# Output only. Capabilities of this location.
|
1516
|
+
class LocationMetadata
|
1517
|
+
include ::Google::Protobuf::MessageExts
|
1518
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1519
|
+
|
1520
|
+
# Capability of a location.
|
1521
|
+
module Capability
|
1522
|
+
# The default value. This value is used if the capability is omitted or
|
1523
|
+
# unknown.
|
1524
|
+
CAPABILITY_UNSPECIFIED = 0
|
1525
|
+
|
1526
|
+
# Stretch clusters are supported in this location.
|
1527
|
+
STRETCHED_CLUSTERS = 1
|
1528
|
+
end
|
1529
|
+
end
|
1530
|
+
|
1531
|
+
# DnsBindPermission resource that contains the accounts having the consumer DNS
|
1532
|
+
# bind permission on the corresponding intranet VPC of the consumer project.
|
1533
|
+
# @!attribute [r] name
|
1534
|
+
# @return [::String]
|
1535
|
+
# Required. Output only. The name of the resource which stores the
|
1536
|
+
# users/service accounts having the permission to bind to the corresponding
|
1537
|
+
# intranet VPC of the consumer project. DnsBindPermission is a global
|
1538
|
+
# resource and location can only be global. Resource names are schemeless
|
1539
|
+
# URIs that follow the conventions in
|
1540
|
+
# https://cloud.google.com/apis/design/resource_names. For example:
|
1541
|
+
# `projects/my-project/locations/global/dnsBindPermission`
|
1542
|
+
# @!attribute [r] principals
|
1543
|
+
# @return [::Array<::Google::Cloud::VmwareEngine::V1::Principal>]
|
1544
|
+
# Output only. Users/Service accounts which have access for binding on the
|
1545
|
+
# intranet VPC project corresponding to the consumer project.
|
1546
|
+
class DnsBindPermission
|
1547
|
+
include ::Google::Protobuf::MessageExts
|
1548
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1549
|
+
end
|
1550
|
+
|
1551
|
+
# Users/Service accounts which have access for DNS binding on the intranet
|
1552
|
+
# VPC corresponding to the consumer project.
|
1553
|
+
# @!attribute [rw] user
|
1554
|
+
# @return [::String]
|
1555
|
+
# The user who needs to be granted permission.
|
1556
|
+
# @!attribute [rw] service_account
|
1557
|
+
# @return [::String]
|
1558
|
+
# The service account which needs to be granted the permission.
|
1559
|
+
class Principal
|
1560
|
+
include ::Google::Protobuf::MessageExts
|
1561
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1562
|
+
end
|
898
1563
|
end
|
899
1564
|
end
|
900
1565
|
end
|