#[non_exhaustive]pub struct Instance {Show 35 fields
pub name: String,
pub display_name: String,
pub labels: HashMap<String, String>,
pub location_id: String,
pub alternative_location_id: String,
pub redis_version: String,
pub reserved_ip_range: String,
pub secondary_ip_range: String,
pub host: String,
pub port: i32,
pub current_location_id: String,
pub create_time: Option<Timestamp>,
pub state: State,
pub status_message: String,
pub redis_configs: HashMap<String, String>,
pub tier: Tier,
pub memory_size_gb: i32,
pub authorized_network: String,
pub persistence_iam_identity: String,
pub connect_mode: ConnectMode,
pub auth_enabled: bool,
pub server_ca_certs: Vec<TlsCertificate>,
pub transit_encryption_mode: TransitEncryptionMode,
pub maintenance_policy: Option<MaintenancePolicy>,
pub maintenance_schedule: Option<MaintenanceSchedule>,
pub replica_count: i32,
pub nodes: Vec<NodeInfo>,
pub read_endpoint: String,
pub read_endpoint_port: i32,
pub read_replicas_mode: ReadReplicasMode,
pub customer_managed_key: String,
pub persistence_config: Option<PersistenceConfig>,
pub suspension_reasons: Vec<SuspensionReason>,
pub maintenance_version: String,
pub available_maintenance_versions: Vec<String>,
/* private fields */
}Expand description
A Memorystore for Redis instance.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringRequired. 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.
display_name: StringAn arbitrary and optional user-provided name for the instance.
labels: HashMap<String, String>Resource labels to represent user provided metadata
location_id: StringOptional. The zone where the instance will be provisioned. If not provided, the service will choose a zone from the specified region for the instance. For standard tier, additional nodes will be added across multiple zones for protection against zonal failures. If specified, at least one node will be provisioned in this zone.
alternative_location_id: StringOptional. If specified, at least one node will be provisioned in this zone in addition to the zone specified in location_id. Only applicable to standard tier. If provided, it must be a different zone from the one provided in [location_id]. Additional nodes beyond the first 2 will be placed in zones selected by the service.
redis_version: StringOptional. The version of Redis software. If not provided, latest supported version will be used. Currently, the supported values are:
REDIS_3_2for Redis 3.2 compatibilityREDIS_4_0for Redis 4.0 compatibility (default)REDIS_5_0for Redis 5.0 compatibilityREDIS_6_Xfor Redis 6.x compatibility
reserved_ip_range: StringOptional. 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. For READ_REPLICAS_ENABLED the default block size is /28.
secondary_ip_range: StringOptional. Additional IP range for node placement. Required when enabling read replicas on an existing instance. For DIRECT_PEERING mode value must be a CIDR range of size /28, or “auto”. For PRIVATE_SERVICE_ACCESS mode value must be the name of an allocated address range associated with the private service access connection, or “auto”.
host: StringOutput only. Hostname or IP address of the exposed Redis endpoint used by clients to connect to the service.
port: i32Output only. The port number of the exposed Redis endpoint.
current_location_id: StringOutput only. The current zone where the Redis primary node is located. In basic tier, this will always be the same as [location_id]. In standard tier, this can be the zone of any node in the instance.
create_time: Option<Timestamp>Output only. The time the instance was created.
state: StateOutput only. The current state of this instance.
status_message: StringOutput only. Additional information about the current status of this instance, if available.
redis_configs: HashMap<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
tier: TierRequired. The service tier of the instance.
memory_size_gb: i32Required. Redis memory size in GiB.
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.
persistence_iam_identity: StringOutput only. Cloud IAM identity used by import / export operations to transfer data to/from Cloud Storage. Format is “serviceAccount:<service_account_email>”. The value may change over time for a given instance so should be checked before each import/export operation.
connect_mode: ConnectModeOptional. The network connect mode of the Redis instance. If not provided, the connect mode defaults to DIRECT_PEERING.
auth_enabled: boolOptional. 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.
server_ca_certs: Vec<TlsCertificate>Output only. List of server CA certificates for the instance.
transit_encryption_mode: TransitEncryptionModeOptional. The TLS mode of the Redis instance. If not provided, TLS is disabled for the instance.
maintenance_policy: Option<MaintenancePolicy>Optional. The maintenance policy for the instance. If not provided, maintenance events can be performed at any time.
maintenance_schedule: Option<MaintenanceSchedule>Output only. Date and time of upcoming maintenance events which have been scheduled.
replica_count: i32Optional. The number of replica nodes. The valid range for the Standard Tier with read replicas enabled is [1-5] and defaults to 2. If read replicas are not enabled for a Standard Tier instance, the only valid value is 1 and the default is 1. The valid value for basic tier is 0 and the default is also 0.
nodes: Vec<NodeInfo>Output only. Info per node.
read_endpoint: StringOutput only. Hostname or IP address of the exposed readonly Redis endpoint. Standard tier only. Targets all healthy replica nodes in instance. Replication is asynchronous and replica nodes will exhibit some lag behind the primary. Write requests must target ‘host’.
read_endpoint_port: i32Output only. The port number of the exposed readonly redis endpoint. Standard tier only. Write requests should target ‘port’.
read_replicas_mode: ReadReplicasModeOptional. Read replicas mode for the instance. Defaults to READ_REPLICAS_DISABLED.
customer_managed_key: StringOptional. The KMS key reference that the customer provides when trying to create the instance.
persistence_config: Option<PersistenceConfig>Optional. Persistence configuration parameters
suspension_reasons: Vec<SuspensionReason>Optional. reasons that causes instance in “SUSPENDED” state.
maintenance_version: StringOptional. The self service update maintenance version. The version is date based such as “20210712_00_00”.
available_maintenance_versions: Vec<String>Optional. The available maintenance versions that an instance could update to.
Implementations§
Source§impl Instance
impl Instance
pub fn new() -> Self
Sourcepub fn set_display_name<T: Into<String>>(self, v: T) -> Self
pub fn set_display_name<T: Into<String>>(self, v: T) -> Self
Sets the value of display_name.
Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sets the value of labels.
Sourcepub fn set_location_id<T: Into<String>>(self, v: T) -> Self
pub fn set_location_id<T: Into<String>>(self, v: T) -> Self
Sets the value of location_id.
Sourcepub fn set_alternative_location_id<T: Into<String>>(self, v: T) -> Self
pub fn set_alternative_location_id<T: Into<String>>(self, v: T) -> Self
Sets the value of alternative_location_id.
Sourcepub fn set_redis_version<T: Into<String>>(self, v: T) -> Self
pub fn set_redis_version<T: Into<String>>(self, v: T) -> Self
Sets the value of redis_version.
Sourcepub fn set_reserved_ip_range<T: Into<String>>(self, v: T) -> Self
pub fn set_reserved_ip_range<T: Into<String>>(self, v: T) -> Self
Sets the value of reserved_ip_range.
Sourcepub fn set_secondary_ip_range<T: Into<String>>(self, v: T) -> Self
pub fn set_secondary_ip_range<T: Into<String>>(self, v: T) -> Self
Sets the value of secondary_ip_range.
Sourcepub fn set_current_location_id<T: Into<String>>(self, v: T) -> Self
pub fn set_current_location_id<T: Into<String>>(self, v: T) -> Self
Sets the value of current_location_id.
Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
Sourcepub fn set_status_message<T: Into<String>>(self, v: T) -> Self
pub fn set_status_message<T: Into<String>>(self, v: T) -> Self
Sets the value of status_message.
Sourcepub fn set_redis_configs<T, K, V>(self, v: T) -> Self
pub fn set_redis_configs<T, K, V>(self, v: T) -> Self
Sets the value of redis_configs.
Sourcepub fn set_memory_size_gb<T: Into<i32>>(self, v: T) -> Self
pub fn set_memory_size_gb<T: Into<i32>>(self, v: T) -> Self
Sets the value of memory_size_gb.
Sets the value of authorized_network.
Sourcepub fn set_persistence_iam_identity<T: Into<String>>(self, v: T) -> Self
pub fn set_persistence_iam_identity<T: Into<String>>(self, v: T) -> Self
Sets the value of persistence_iam_identity.
Sourcepub fn set_connect_mode<T: Into<ConnectMode>>(self, v: T) -> Self
pub fn set_connect_mode<T: Into<ConnectMode>>(self, v: T) -> Self
Sets the value of connect_mode.
Sourcepub fn set_auth_enabled<T: Into<bool>>(self, v: T) -> Self
pub fn set_auth_enabled<T: Into<bool>>(self, v: T) -> Self
Sets the value of auth_enabled.
Sourcepub fn set_server_ca_certs<T, V>(self, v: T) -> Self
pub fn set_server_ca_certs<T, V>(self, v: T) -> Self
Sets the value of server_ca_certs.
Sourcepub fn set_transit_encryption_mode<T: Into<TransitEncryptionMode>>(
self,
v: T,
) -> Self
pub fn set_transit_encryption_mode<T: Into<TransitEncryptionMode>>( self, v: T, ) -> Self
Sets the value of transit_encryption_mode.
Sourcepub fn set_maintenance_policy<T>(self, v: T) -> Selfwhere
T: Into<MaintenancePolicy>,
pub fn set_maintenance_policy<T>(self, v: T) -> Selfwhere
T: Into<MaintenancePolicy>,
Sets the value of maintenance_policy.
Sourcepub fn set_or_clear_maintenance_policy<T>(self, v: Option<T>) -> Selfwhere
T: Into<MaintenancePolicy>,
pub fn set_or_clear_maintenance_policy<T>(self, v: Option<T>) -> Selfwhere
T: Into<MaintenancePolicy>,
Sets or clears the value of maintenance_policy.
Sourcepub fn set_maintenance_schedule<T>(self, v: T) -> Selfwhere
T: Into<MaintenanceSchedule>,
pub fn set_maintenance_schedule<T>(self, v: T) -> Selfwhere
T: Into<MaintenanceSchedule>,
Sets the value of maintenance_schedule.
Sourcepub fn set_or_clear_maintenance_schedule<T>(self, v: Option<T>) -> Selfwhere
T: Into<MaintenanceSchedule>,
pub fn set_or_clear_maintenance_schedule<T>(self, v: Option<T>) -> Selfwhere
T: Into<MaintenanceSchedule>,
Sets or clears the value of maintenance_schedule.
Sourcepub fn set_replica_count<T: Into<i32>>(self, v: T) -> Self
pub fn set_replica_count<T: Into<i32>>(self, v: T) -> Self
Sets the value of replica_count.
Sourcepub fn set_read_endpoint<T: Into<String>>(self, v: T) -> Self
pub fn set_read_endpoint<T: Into<String>>(self, v: T) -> Self
Sets the value of read_endpoint.
Sourcepub fn set_read_endpoint_port<T: Into<i32>>(self, v: T) -> Self
pub fn set_read_endpoint_port<T: Into<i32>>(self, v: T) -> Self
Sets the value of read_endpoint_port.
Sourcepub fn set_read_replicas_mode<T: Into<ReadReplicasMode>>(self, v: T) -> Self
pub fn set_read_replicas_mode<T: Into<ReadReplicasMode>>(self, v: T) -> Self
Sets the value of read_replicas_mode.
Sourcepub fn set_customer_managed_key<T: Into<String>>(self, v: T) -> Self
pub fn set_customer_managed_key<T: Into<String>>(self, v: T) -> Self
Sets the value of customer_managed_key.
Sourcepub fn set_persistence_config<T>(self, v: T) -> Selfwhere
T: Into<PersistenceConfig>,
pub fn set_persistence_config<T>(self, v: T) -> Selfwhere
T: Into<PersistenceConfig>,
Sets the value of persistence_config.
Sourcepub fn set_or_clear_persistence_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<PersistenceConfig>,
pub fn set_or_clear_persistence_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<PersistenceConfig>,
Sets or clears the value of persistence_config.
Sourcepub fn set_suspension_reasons<T, V>(self, v: T) -> Self
pub fn set_suspension_reasons<T, V>(self, v: T) -> Self
Sets the value of suspension_reasons.
Sourcepub fn set_maintenance_version<T: Into<String>>(self, v: T) -> Self
pub fn set_maintenance_version<T: Into<String>>(self, v: T) -> Self
Sets the value of maintenance_version.
Sourcepub fn set_available_maintenance_versions<T, V>(self, v: T) -> Self
pub fn set_available_maintenance_versions<T, V>(self, v: T) -> Self
Sets the value of available_maintenance_versions.