Class: Google::Apis::RedisV1::Instance

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/redis_v1/classes.rb,
lib/google/apis/redis_v1/representations.rb,
lib/google/apis/redis_v1/representations.rb

Overview

A Google Cloud Redis instance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Instance

Returns a new instance of Instance.



417
418
419
# File 'lib/google/apis/redis_v1/classes.rb', line 417

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

Instance Attribute Details

#alternative_location_idString

Optional. Only applicable to STANDARD_HA tier which protects the instance against zonal failures by provisioning it across two zones. If provided, it must be a different zone from the one provided in location_id. Corresponds to the JSON property alternativeLocationId

Returns:

  • (String)


261
262
263
# File 'lib/google/apis/redis_v1/classes.rb', line 261

def alternative_location_id
  @alternative_location_id
end

#auth_enabledBoolean Also known as: auth_enabled?

Optional. Indicates whether OSS Redis AUTH is enabled for the instance. If set to "true" AUTH is enabled on the instance. Default value is "false" meaning AUTH is disabled. Corresponds to the JSON property authEnabled

Returns:

  • (Boolean)


268
269
270
# File 'lib/google/apis/redis_v1/classes.rb', line 268

def auth_enabled
  @auth_enabled
end

#authorized_networkString

Optional. The full name of the Google Compute Engine network to which the instance is connected. If left unspecified, the default network will be used. Corresponds to the JSON property authorizedNetwork

Returns:

  • (String)


276
277
278
# File 'lib/google/apis/redis_v1/classes.rb', line 276

def authorized_network
  @authorized_network
end

#connect_modeString

Optional. The network connect mode of the Redis instance. If not provided, the connect mode defaults to DIRECT_PEERING. Corresponds to the JSON property connectMode

Returns:

  • (String)


282
283
284
# File 'lib/google/apis/redis_v1/classes.rb', line 282

def connect_mode
  @connect_mode
end

#create_timeString

Output only. The time the instance was created. Corresponds to the JSON property createTime

Returns:

  • (String)


287
288
289
# File 'lib/google/apis/redis_v1/classes.rb', line 287

def create_time
  @create_time
end

#current_location_idString

Output only. The current zone where the Redis endpoint is placed. For Basic Tier instances, this will always be the same as the location_id provided by the user at creation time. For Standard Tier instances, this can be either location_id or alternative_location_id and can change after a failover event. Corresponds to the JSON property currentLocationId

Returns:

  • (String)


295
296
297
# File 'lib/google/apis/redis_v1/classes.rb', line 295

def current_location_id
  @current_location_id
end

#display_nameString

An arbitrary and optional user-provided name for the instance. Corresponds to the JSON property displayName

Returns:

  • (String)


300
301
302
# File 'lib/google/apis/redis_v1/classes.rb', line 300

def display_name
  @display_name
end

#hostString

Output only. Hostname or IP address of the exposed Redis endpoint used by clients to connect to the service. Corresponds to the JSON property host

Returns:

  • (String)


306
307
308
# File 'lib/google/apis/redis_v1/classes.rb', line 306

def host
  @host
end

#labelsHash<String,String>

Resource labels to represent user provided metadata Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


311
312
313
# File 'lib/google/apis/redis_v1/classes.rb', line 311

def labels
  @labels
end

#location_idString

Optional. The zone where the instance will be provisioned. If not provided, the service will choose a zone for the instance. For STANDARD_HA tier, instances will be created across two zones for protection against zonal failures. If alternative_location_id is also provided, it must be different from location_id. Corresponds to the JSON property locationId

Returns:

  • (String)


320
321
322
# File 'lib/google/apis/redis_v1/classes.rb', line 320

def location_id
  @location_id
end

#maintenance_policyGoogle::Apis::RedisV1::MaintenancePolicy

Maintenance policy for an instance. Corresponds to the JSON property maintenancePolicy



325
326
327
# File 'lib/google/apis/redis_v1/classes.rb', line 325

def maintenance_policy
  @maintenance_policy
end

#maintenance_scheduleGoogle::Apis::RedisV1::MaintenanceSchedule

Upcoming maintenance schedule. If no maintenance is scheduled, fields are not populated. Corresponds to the JSON property maintenanceSchedule



331
332
333
# File 'lib/google/apis/redis_v1/classes.rb', line 331

def maintenance_schedule
  @maintenance_schedule
end

#memory_size_gbFixnum

Required. Redis memory size in GiB. Corresponds to the JSON property memorySizeGb

Returns:

  • (Fixnum)


336
337
338
# File 'lib/google/apis/redis_v1/classes.rb', line 336

def memory_size_gb
  @memory_size_gb
end

#nameString

Required. Unique name of the resource in this scope including project and location using the form: projects/project_id/locations/location_id/ instances/instance_id`Note: Redis instances are managed and addressed at regional level so location_id here refers to a GCP region; however, users may choose which specific zone (or collection of zones for cross-zone instances) an instance should be provisioned in. Refer to location_id and alternative_location_id fields for more details. Corresponds to the JSON propertyname`

Returns:

  • (String)


347
348
349
# File 'lib/google/apis/redis_v1/classes.rb', line 347

def name
  @name
end

#persistence_iam_identityString

Output only. Cloud IAM identity used by import / export operations to transfer data to/from Cloud Storage. Format is "serviceAccount:". The value may change over time for a given instance so should be checked before each import/export operation. Corresponds to the JSON property persistenceIamIdentity

Returns:

  • (String)


355
356
357
# File 'lib/google/apis/redis_v1/classes.rb', line 355

def persistence_iam_identity
  @persistence_iam_identity
end

#portFixnum

Output only. The port number of the exposed Redis endpoint. Corresponds to the JSON property port

Returns:

  • (Fixnum)


360
361
362
# File 'lib/google/apis/redis_v1/classes.rb', line 360

def port
  @port
end

#redis_configsHash<String,String>

Optional. Redis configuration parameters, according to http://redis.io/topics/ config. Currently, the only supported parameters are: Redis version 3.2 and newer: * maxmemory-policy * notify-keyspace-events Redis version 4.0 and newer:

  • activedefrag * lfu-decay-time * lfu-log-factor * maxmemory-gb Redis version 5.0 and newer: * stream-node-max-bytes * stream-node-max-entries Corresponds to the JSON property redisConfigs

Returns:

  • (Hash<String,String>)


369
370
371
# File 'lib/google/apis/redis_v1/classes.rb', line 369

def redis_configs
  @redis_configs
end

#redis_versionString

Optional. The version of Redis software. If not provided, latest supported version will be used. Currently, the supported values are: * REDIS_3_2 for Redis 3.2 compatibility * REDIS_4_0 for Redis 4.0 compatibility (default) * REDIS_5_0 for Redis 5.0 compatibility * REDIS_6_X for Redis 6.x compatibility Corresponds to the JSON property redisVersion

Returns:

  • (String)


378
379
380
# File 'lib/google/apis/redis_v1/classes.rb', line 378

def redis_version
  @redis_version
end

#reserved_ip_rangeString

Optional. For DIRECT_PEERING mode, the CIDR range of internal addresses that are reserved for this instance. Range must be unique and non-overlapping with existing subnets in an authorized network. For PRIVATE_SERVICE_ACCESS mode, the name of one allocated IP address ranges associated with this private service access connection. If not provided, the service will choose an unused / 29 block, for example, 10.0.0.0/29 or 192.168.0.0/29. Corresponds to the JSON property reservedIpRange

Returns:

  • (String)


388
389
390
# File 'lib/google/apis/redis_v1/classes.rb', line 388

def reserved_ip_range
  @reserved_ip_range
end

#server_ca_certsArray<Google::Apis::RedisV1::TlsCertificate>

Output only. List of server CA certificates for the instance. Corresponds to the JSON property serverCaCerts



393
394
395
# File 'lib/google/apis/redis_v1/classes.rb', line 393

def server_ca_certs
  @server_ca_certs
end

#stateString

Output only. The current state of this instance. Corresponds to the JSON property state

Returns:

  • (String)


398
399
400
# File 'lib/google/apis/redis_v1/classes.rb', line 398

def state
  @state
end

#status_messageString

Output only. Additional information about the current status of this instance, if available. Corresponds to the JSON property statusMessage

Returns:

  • (String)


404
405
406
# File 'lib/google/apis/redis_v1/classes.rb', line 404

def status_message
  @status_message
end

#tierString

Required. The service tier of the instance. Corresponds to the JSON property tier

Returns:

  • (String)


409
410
411
# File 'lib/google/apis/redis_v1/classes.rb', line 409

def tier
  @tier
end

#transit_encryption_modeString

Optional. The TLS mode of the Redis instance. If not provided, TLS is disabled for the instance. Corresponds to the JSON property transitEncryptionMode

Returns:

  • (String)


415
416
417
# File 'lib/google/apis/redis_v1/classes.rb', line 415

def transit_encryption_mode
  @transit_encryption_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
# File 'lib/google/apis/redis_v1/classes.rb', line 422

def update!(**args)
  @alternative_location_id = args[:alternative_location_id] if args.key?(:alternative_location_id)
  @auth_enabled = args[:auth_enabled] if args.key?(:auth_enabled)
  @authorized_network = args[:authorized_network] if args.key?(:authorized_network)
  @connect_mode = args[:connect_mode] if args.key?(:connect_mode)
  @create_time = args[:create_time] if args.key?(:create_time)
  @current_location_id = args[:current_location_id] if args.key?(:current_location_id)
  @display_name = args[:display_name] if args.key?(:display_name)
  @host = args[:host] if args.key?(:host)
  @labels = args[:labels] if args.key?(:labels)
  @location_id = args[:location_id] if args.key?(:location_id)
  @maintenance_policy = args[:maintenance_policy] if args.key?(:maintenance_policy)
  @maintenance_schedule = args[:maintenance_schedule] if args.key?(:maintenance_schedule)
  @memory_size_gb = args[:memory_size_gb] if args.key?(:memory_size_gb)
  @name = args[:name] if args.key?(:name)
  @persistence_iam_identity = args[:persistence_iam_identity] if args.key?(:persistence_iam_identity)
  @port = args[:port] if args.key?(:port)
  @redis_configs = args[:redis_configs] if args.key?(:redis_configs)
  @redis_version = args[:redis_version] if args.key?(:redis_version)
  @reserved_ip_range = args[:reserved_ip_range] if args.key?(:reserved_ip_range)
  @server_ca_certs = args[:server_ca_certs] if args.key?(:server_ca_certs)
  @state = args[:state] if args.key?(:state)
  @status_message = args[:status_message] if args.key?(:status_message)
  @tier = args[:tier] if args.key?(:tier)
  @transit_encryption_mode = args[:transit_encryption_mode] if args.key?(:transit_encryption_mode)
end