Class: Google::Apis::AlloydbV1alpha::Instance
- Inherits:
-
Object
- Object
- Google::Apis::AlloydbV1alpha::Instance
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/alloydb_v1alpha/classes.rb,
lib/google/apis/alloydb_v1alpha/representations.rb,
lib/google/apis/alloydb_v1alpha/representations.rb
Overview
An Instance is a computing unit that an end customer can connect to. It's the main unit of computing resources in AlloyDB.
Instance Attribute Summary collapse
-
#annotations ⇒ Hash<String,String>
Annotations to allow client tools to store small amount of arbitrary data.
-
#availability_type ⇒ String
Availability type of an Instance.
-
#client_connection_config ⇒ Google::Apis::AlloydbV1alpha::ClientConnectionConfig
Client connection configuration Corresponds to the JSON property
clientConnectionConfig. -
#create_time ⇒ String
Output only.
-
#database_flags ⇒ Hash<String,String>
Database flags.
-
#delete_time ⇒ String
Output only.
-
#display_name ⇒ String
User-settable and human-readable display name for the Instance.
-
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154) Corresponds to the JSON property
etag. -
#gce_zone ⇒ String
The Compute Engine zone that the instance should serve from, per https://cloud.
-
#gemini_config ⇒ Google::Apis::AlloydbV1alpha::GeminiInstanceConfig
Instance level configuration parameters related to the Gemini in Databases add- on.
-
#instance_type ⇒ String
Required.
-
#ip_address ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
Labels as key value pairs Corresponds to the JSON property
labels. -
#machine_config ⇒ Google::Apis::AlloydbV1alpha::MachineConfig
MachineConfig describes the configuration of a machine.
-
#name ⇒ String
Output only.
-
#network_config ⇒ Google::Apis::AlloydbV1alpha::InstanceNetworkConfig
Metadata related to instance-level network configuration.
-
#nodes ⇒ Array<Google::Apis::AlloydbV1alpha::Node>
Output only.
-
#observability_config ⇒ Google::Apis::AlloydbV1alpha::ObservabilityInstanceConfig
Observability Instance specific configuration.
-
#outbound_public_ip_addresses ⇒ Array<String>
Output only.
-
#psc_instance_config ⇒ Google::Apis::AlloydbV1alpha::PscInstanceConfig
PscInstanceConfig contains PSC related configuration at an instance level.
-
#public_ip_address ⇒ String
Output only.
-
#query_insights_config ⇒ Google::Apis::AlloydbV1alpha::QueryInsightsInstanceConfig
QueryInsights Instance specific configuration.
-
#read_pool_config ⇒ Google::Apis::AlloydbV1alpha::ReadPoolConfig
Configuration for a read pool instance.
-
#reconciling ⇒ Boolean
(also: #reconciling?)
Output only.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#state ⇒ String
Output only.
-
#uid ⇒ String
Output only.
-
#update_policy ⇒ Google::Apis::AlloydbV1alpha::UpdatePolicy
Policy to be used while updating the instance.
-
#update_time ⇒ String
Output only.
-
#writable_node ⇒ Google::Apis::AlloydbV1alpha::Node
Details of a single node in the instance.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Instance
constructor
A new instance of Instance.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Instance
Returns a new instance of Instance.
1524 1525 1526 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1524 def initialize(**args) update!(**args) end |
Instance Attribute Details
#annotations ⇒ Hash<String,String>
Annotations to allow client tools to store small amount of arbitrary data.
This is distinct from labels. https://google.aip.dev/128
Corresponds to the JSON property annotations
1332 1333 1334 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1332 def annotations @annotations end |
#availability_type ⇒ String
Availability type of an Instance. If empty, defaults to REGIONAL for primary
instances. For read pools, availability_type is always UNSPECIFIED. Instances
in the read pools are evenly distributed across available zones within the
region (i.e. read pools with more than one node will have a node in at least
two zones).
Corresponds to the JSON property availabilityType
1341 1342 1343 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1341 def availability_type @availability_type end |
#client_connection_config ⇒ Google::Apis::AlloydbV1alpha::ClientConnectionConfig
Client connection configuration
Corresponds to the JSON property clientConnectionConfig
1346 1347 1348 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1346 def client_connection_config @client_connection_config end |
#create_time ⇒ String
Output only. Create time stamp
Corresponds to the JSON property createTime
1351 1352 1353 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1351 def create_time @create_time end |
#database_flags ⇒ Hash<String,String>
Database flags. Set at the instance level. They are copied from the primary
instance on secondary instance creation. Flags that have restrictions default
to the value at primary instance on read instances during creation. Read
instances can set new flags or override existing flags that are relevant for
reads, for example, for enabling columnar cache on a read instance. Flags set
on read instance might or might not be present on the primary instance. This
is a list of "key": "value" pairs. "key": The name of the flag. These flags
are passed at instance setup time, so include both server options and system
variables for Postgres. Flags are specified with underscores, not hyphens. "
value": The value of the flag. Booleans are set to on for true and off
for false. This field must be omitted if the flag doesn't take a value.
Corresponds to the JSON property databaseFlags
1366 1367 1368 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1366 def database_flags @database_flags end |
#delete_time ⇒ String
Output only. Delete time stamp
Corresponds to the JSON property deleteTime
1371 1372 1373 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1371 def delete_time @delete_time end |
#display_name ⇒ String
User-settable and human-readable display name for the Instance.
Corresponds to the JSON property displayName
1376 1377 1378 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1376 def display_name @display_name end |
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154)
Corresponds to the JSON property etag
1381 1382 1383 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1381 def etag @etag end |
#gce_zone ⇒ String
The Compute Engine zone that the instance should serve from, per https://cloud.
google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL
instances. If present for a REGIONAL instance, an error will be thrown. If
this is absent for a ZONAL instance, instance is created in a random zone with
available capacity.
Corresponds to the JSON property gceZone
1390 1391 1392 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1390 def gce_zone @gce_zone end |
#gemini_config ⇒ Google::Apis::AlloydbV1alpha::GeminiInstanceConfig
Instance level configuration parameters related to the Gemini in Databases add-
on.
Corresponds to the JSON property geminiConfig
1396 1397 1398 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1396 def gemini_config @gemini_config end |
#instance_type ⇒ String
Required. The type of the instance. Specified at creation time.
Corresponds to the JSON property instanceType
1401 1402 1403 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1401 def instance_type @instance_type end |
#ip_address ⇒ String
Output only. The IP address for the Instance. This is the connection endpoint
for an end-user application.
Corresponds to the JSON property ipAddress
1407 1408 1409 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1407 def ip_address @ip_address end |
#labels ⇒ Hash<String,String>
Labels as key value pairs
Corresponds to the JSON property labels
1412 1413 1414 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1412 def labels @labels end |
#machine_config ⇒ Google::Apis::AlloydbV1alpha::MachineConfig
MachineConfig describes the configuration of a machine.
Corresponds to the JSON property machineConfig
1417 1418 1419 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1417 def machine_config @machine_config end |
#name ⇒ String
Output only. The name of the instance resource with the format: * projects/
project/locations/region/clusters/cluster_id/instances/instance_id
where the cluster and instance ID segments should satisfy the regex expression
[a-z]([a-z0-9-]0,61[a-z0-9])?, e.g. 1-63 characters of lowercase letters,
numbers, and dashes, starting with a letter, and ending with a letter or
number. For more details see https://google.aip.dev/122. The prefix of the
instance resource name is the name of the parent resource: * projects/project
/locations/region/clusters/cluster_id
Corresponds to the JSON property name
1429 1430 1431 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1429 def name @name end |
#network_config ⇒ Google::Apis::AlloydbV1alpha::InstanceNetworkConfig
Metadata related to instance-level network configuration.
Corresponds to the JSON property networkConfig
1434 1435 1436 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1434 def network_config @network_config end |
#nodes ⇒ Array<Google::Apis::AlloydbV1alpha::Node>
Output only. List of available read-only VMs in this instance, including the
standby for a PRIMARY instance.
Corresponds to the JSON property nodes
1440 1441 1442 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1440 def nodes @nodes end |
#observability_config ⇒ Google::Apis::AlloydbV1alpha::ObservabilityInstanceConfig
Observability Instance specific configuration.
Corresponds to the JSON property observabilityConfig
1445 1446 1447 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1445 def observability_config @observability_config end |
#outbound_public_ip_addresses ⇒ Array<String>
Output only. All outbound public IP addresses configured for the instance.
Corresponds to the JSON property outboundPublicIpAddresses
1450 1451 1452 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1450 def outbound_public_ip_addresses @outbound_public_ip_addresses end |
#psc_instance_config ⇒ Google::Apis::AlloydbV1alpha::PscInstanceConfig
PscInstanceConfig contains PSC related configuration at an instance level.
Corresponds to the JSON property pscInstanceConfig
1455 1456 1457 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1455 def psc_instance_config @psc_instance_config end |
#public_ip_address ⇒ String
Output only. The public IP addresses for the Instance. This is available ONLY
when enable_public_ip is set. This is the connection endpoint for an end-user
application.
Corresponds to the JSON property publicIpAddress
1462 1463 1464 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1462 def public_ip_address @public_ip_address end |
#query_insights_config ⇒ Google::Apis::AlloydbV1alpha::QueryInsightsInstanceConfig
QueryInsights Instance specific configuration.
Corresponds to the JSON property queryInsightsConfig
1467 1468 1469 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1467 def query_insights_config @query_insights_config end |
#read_pool_config ⇒ Google::Apis::AlloydbV1alpha::ReadPoolConfig
Configuration for a read pool instance.
Corresponds to the JSON property readPoolConfig
1472 1473 1474 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1472 def read_pool_config @read_pool_config end |
#reconciling ⇒ Boolean Also known as: reconciling?
Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to
true if the current state of Instance does not match the user's intended state,
and the service is actively updating the resource to reconcile them. This can
happen due to user-triggered updates or system actions like failover or
maintenance.
Corresponds to the JSON property reconciling
1481 1482 1483 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1481 def reconciling @reconciling end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzi
1487 1488 1489 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1487 def satisfies_pzi @satisfies_pzi end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
1493 1494 1495 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1493 def satisfies_pzs @satisfies_pzs end |
#state ⇒ String
Output only. The current serving state of the instance.
Corresponds to the JSON property state
1499 1500 1501 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1499 def state @state end |
#uid ⇒ String
Output only. The system-generated UID of the resource. The UID is assigned
when the resource is created, and it is retained until it is deleted.
Corresponds to the JSON property uid
1505 1506 1507 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1505 def uid @uid end |
#update_policy ⇒ Google::Apis::AlloydbV1alpha::UpdatePolicy
Policy to be used while updating the instance.
Corresponds to the JSON property updatePolicy
1510 1511 1512 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1510 def update_policy @update_policy end |
#update_time ⇒ String
Output only. Update time stamp
Corresponds to the JSON property updateTime
1515 1516 1517 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1515 def update_time @update_time end |
#writable_node ⇒ Google::Apis::AlloydbV1alpha::Node
Details of a single node in the instance. Nodes in an AlloyDB instance are
ephemereal, they can change during update, failover, autohealing and resize
operations.
Corresponds to the JSON property writableNode
1522 1523 1524 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1522 def writable_node @writable_node end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1529 def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @availability_type = args[:availability_type] if args.key?(:availability_type) @client_connection_config = args[:client_connection_config] if args.key?(:client_connection_config) @create_time = args[:create_time] if args.key?(:create_time) @database_flags = args[:database_flags] if args.key?(:database_flags) @delete_time = args[:delete_time] if args.key?(:delete_time) @display_name = args[:display_name] if args.key?(:display_name) @etag = args[:etag] if args.key?(:etag) @gce_zone = args[:gce_zone] if args.key?(:gce_zone) @gemini_config = args[:gemini_config] if args.key?(:gemini_config) @instance_type = args[:instance_type] if args.key?(:instance_type) @ip_address = args[:ip_address] if args.key?(:ip_address) @labels = args[:labels] if args.key?(:labels) @machine_config = args[:machine_config] if args.key?(:machine_config) @name = args[:name] if args.key?(:name) @network_config = args[:network_config] if args.key?(:network_config) @nodes = args[:nodes] if args.key?(:nodes) @observability_config = args[:observability_config] if args.key?(:observability_config) @outbound_public_ip_addresses = args[:outbound_public_ip_addresses] if args.key?(:outbound_public_ip_addresses) @psc_instance_config = args[:psc_instance_config] if args.key?(:psc_instance_config) @public_ip_address = args[:public_ip_address] if args.key?(:public_ip_address) @query_insights_config = args[:query_insights_config] if args.key?(:query_insights_config) @read_pool_config = args[:read_pool_config] if args.key?(:read_pool_config) @reconciling = args[:reconciling] if args.key?(:reconciling) @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @state = args[:state] if args.key?(:state) @uid = args[:uid] if args.key?(:uid) @update_policy = args[:update_policy] if args.key?(:update_policy) @update_time = args[:update_time] if args.key?(:update_time) @writable_node = args[:writable_node] if args.key?(:writable_node) end |