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
-
#activation_policy ⇒ String
Optional.
-
#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. -
#connection_pool_config ⇒ Google::Apis::AlloydbV1alpha::ConnectionPoolConfig
Configuration for Managed Connection Pool (MCP).
-
#create_time ⇒ String
Output only.
-
#data_api_access ⇒ String
Optional.
-
#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. -
#gca_config ⇒ Google::Apis::AlloydbV1alpha::GcaInstanceConfig
Instance level configuration parameters related to the Gemini Cloud Assist product.
-
#gce_zone ⇒ String
The Compute Engine zone that the instance should serve from, per https://cloud.
-
#gemini_config ⇒ Google::Apis::AlloydbV1alpha::GeminiInstanceConfig
Deprecated and unused.
-
#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.
-
#maintenance_version_name ⇒ String
Output only.
-
#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.
-
#psc_instance_info ⇒ Google::Apis::AlloydbV1alpha::PscInstanceInfo
Information about the Private Service Connect (PSC) for the instance.
-
#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.
2275 2276 2277 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2275 def initialize(**args) update!(**args) end |
Instance Attribute Details
#activation_policy ⇒ String
Optional. Specifies whether an instance needs to spin up. Once the instance is
active, the activation policy can be updated to the NEVER to stop the
instance. Likewise, the activation policy can be updated to ALWAYS to start
the instance. There are restrictions around when an instance can/cannot be
activated (for example, a read pool instance should be stopped before stopping
primary etc.). Please refer to the API documentation for more details.
Corresponds to the JSON property activationPolicy
2045 2046 2047 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2045 def activation_policy @activation_policy end |
#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
2051 2052 2053 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2051 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
2060 2061 2062 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2060 def availability_type @availability_type end |
#client_connection_config ⇒ Google::Apis::AlloydbV1alpha::ClientConnectionConfig
Client connection configuration
Corresponds to the JSON property clientConnectionConfig
2065 2066 2067 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2065 def client_connection_config @client_connection_config end |
#connection_pool_config ⇒ Google::Apis::AlloydbV1alpha::ConnectionPoolConfig
Configuration for Managed Connection Pool (MCP).
Corresponds to the JSON property connectionPoolConfig
2070 2071 2072 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2070 def connection_pool_config @connection_pool_config end |
#create_time ⇒ String
Output only. Create time stamp
Corresponds to the JSON property createTime
2075 2076 2077 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2075 def create_time @create_time end |
#data_api_access ⇒ String
Optional. Controls whether the Data API is enabled for this instance. When
enabled, this allows authorized users to connect to the instance from the
public internet using the executeSql API, even for private IP instances. If
this is not specified, the data API is enabled by default for Google internal
services like AlloyDB Studio. Disable it explicitly to disallow Google
internal services as well.
Corresponds to the JSON property dataApiAccess
2085 2086 2087 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2085 def data_api_access @data_api_access 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
2100 2101 2102 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2100 def database_flags @database_flags end |
#delete_time ⇒ String
Output only. Delete time stamp
Corresponds to the JSON property deleteTime
2105 2106 2107 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2105 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
2110 2111 2112 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2110 def display_name @display_name end |
#etag ⇒ String
For Resource freshness validation (https://google.aip.dev/154)
Corresponds to the JSON property etag
2115 2116 2117 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2115 def etag @etag end |
#gca_config ⇒ Google::Apis::AlloydbV1alpha::GcaInstanceConfig
Instance level configuration parameters related to the Gemini Cloud Assist
product.
Corresponds to the JSON property gcaConfig
2121 2122 2123 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2121 def gca_config @gca_config 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
2130 2131 2132 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2130 def gce_zone @gce_zone end |
#gemini_config ⇒ Google::Apis::AlloydbV1alpha::GeminiInstanceConfig
Deprecated and unused. This message will be removed in the near future.
Corresponds to the JSON property geminiConfig
2135 2136 2137 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2135 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
2140 2141 2142 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2140 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
2146 2147 2148 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2146 def ip_address @ip_address end |
#labels ⇒ Hash<String,String>
Labels as key value pairs
Corresponds to the JSON property labels
2151 2152 2153 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2151 def labels @labels end |
#machine_config ⇒ Google::Apis::AlloydbV1alpha::MachineConfig
MachineConfig describes the configuration of a machine.
Corresponds to the JSON property machineConfig
2156 2157 2158 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2156 def machine_config @machine_config end |
#maintenance_version_name ⇒ String
Output only. Maintenance version of the instance, for example: POSTGRES_15.
2025_07_15.04_00. Output only. Update this field via the parent cluster's
maintenance_version field(s).
Corresponds to the JSON property maintenanceVersionName
2163 2164 2165 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2163 def maintenance_version_name @maintenance_version_name 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
2175 2176 2177 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2175 def name @name end |
#network_config ⇒ Google::Apis::AlloydbV1alpha::InstanceNetworkConfig
Metadata related to instance-level network configuration.
Corresponds to the JSON property networkConfig
2180 2181 2182 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2180 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
2186 2187 2188 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2186 def nodes @nodes end |
#observability_config ⇒ Google::Apis::AlloydbV1alpha::ObservabilityInstanceConfig
Observability Instance specific configuration.
Corresponds to the JSON property observabilityConfig
2191 2192 2193 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2191 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
2196 2197 2198 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2196 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
2201 2202 2203 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2201 def psc_instance_config @psc_instance_config end |
#psc_instance_info ⇒ Google::Apis::AlloydbV1alpha::PscInstanceInfo
Information about the Private Service Connect (PSC) for the instance.
Corresponds to the JSON property pscInstanceInfo
2206 2207 2208 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2206 def psc_instance_info @psc_instance_info 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
2213 2214 2215 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2213 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
2218 2219 2220 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2218 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
2223 2224 2225 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2223 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
2232 2233 2234 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2232 def reconciling @reconciling end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzi
2238 2239 2240 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2238 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
2244 2245 2246 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2244 def satisfies_pzs @satisfies_pzs end |
#state ⇒ String
Output only. The current serving state of the instance.
Corresponds to the JSON property state
2250 2251 2252 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2250 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
2256 2257 2258 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2256 def uid @uid end |
#update_policy ⇒ Google::Apis::AlloydbV1alpha::UpdatePolicy
Policy to be used while updating the instance.
Corresponds to the JSON property updatePolicy
2261 2262 2263 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2261 def update_policy @update_policy end |
#update_time ⇒ String
Output only. Update time stamp
Corresponds to the JSON property updateTime
2266 2267 2268 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2266 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
ephemeral, they can change during update, failover, autohealing and resize
operations.
Corresponds to the JSON property writableNode
2273 2274 2275 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2273 def writable_node @writable_node end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 |
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 2280 def update!(**args) @activation_policy = args[:activation_policy] if args.key?(:activation_policy) @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) @connection_pool_config = args[:connection_pool_config] if args.key?(:connection_pool_config) @create_time = args[:create_time] if args.key?(:create_time) @data_api_access = args[:data_api_access] if args.key?(:data_api_access) @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) @gca_config = args[:gca_config] if args.key?(:gca_config) @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) @maintenance_version_name = args[:maintenance_version_name] if args.key?(:maintenance_version_name) @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) @psc_instance_info = args[:psc_instance_info] if args.key?(:psc_instance_info) @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 |