Instance

Struct Instance 

Source
#[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
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§name: String

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.

§display_name: String

An arbitrary and optional user-provided name for the instance.

§labels: HashMap<String, String>

Resource labels to represent user provided metadata

§location_id: String

Optional. 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: String

Optional. 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: String

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
§reserved_ip_range: String

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. For READ_REPLICAS_ENABLED the default block size is /28.

§secondary_ip_range: String

Optional. 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: String

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

§port: i32

Output only. The port number of the exposed Redis endpoint.

§current_location_id: String

Output 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: State

Output only. The current state of this instance.

§status_message: String

Output 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: Tier

Required. The service tier of the instance.

§memory_size_gb: i32

Required. Redis memory size in GiB.

§authorized_network: String

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: String

Output 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: ConnectMode

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

§auth_enabled: bool

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.

§server_ca_certs: Vec<TlsCertificate>

Output only. List of server CA certificates for the instance.

§transit_encryption_mode: TransitEncryptionMode

Optional. 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: i32

Optional. 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: String

Output 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: i32

Output only. The port number of the exposed readonly redis endpoint. Standard tier only. Write requests should target ‘port’.

§read_replicas_mode: ReadReplicasMode

Optional. Read replicas mode for the instance. Defaults to READ_REPLICAS_DISABLED.

§customer_managed_key: String

Optional. 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: String

Optional. 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

Source

pub fn new() -> Self

Source

pub fn set_name<T: Into<String>>(self, v: T) -> Self

Sets the value of name.

Source

pub fn set_display_name<T: Into<String>>(self, v: T) -> Self

Sets the value of display_name.

Source

pub fn set_labels<T, K, V>(self, v: T) -> Self
where T: IntoIterator<Item = (K, V)>, K: Into<String>, V: Into<String>,

Sets the value of labels.

Source

pub fn set_location_id<T: Into<String>>(self, v: T) -> Self

Sets the value of location_id.

Source

pub fn set_alternative_location_id<T: Into<String>>(self, v: T) -> Self

Sets the value of alternative_location_id.

Source

pub fn set_redis_version<T: Into<String>>(self, v: T) -> Self

Sets the value of redis_version.

Source

pub fn set_reserved_ip_range<T: Into<String>>(self, v: T) -> Self

Sets the value of reserved_ip_range.

Source

pub fn set_secondary_ip_range<T: Into<String>>(self, v: T) -> Self

Sets the value of secondary_ip_range.

Source

pub fn set_host<T: Into<String>>(self, v: T) -> Self

Sets the value of host.

Source

pub fn set_port<T: Into<i32>>(self, v: T) -> Self

Sets the value of port.

Source

pub fn set_current_location_id<T: Into<String>>(self, v: T) -> Self

Sets the value of current_location_id.

Source

pub fn set_create_time<T>(self, v: T) -> Self
where T: Into<Timestamp>,

Sets the value of create_time.

Source

pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
where T: Into<Timestamp>,

Sets or clears the value of create_time.

Source

pub fn set_state<T: Into<State>>(self, v: T) -> Self

Sets the value of state.

Source

pub fn set_status_message<T: Into<String>>(self, v: T) -> Self

Sets the value of status_message.

Source

pub fn set_redis_configs<T, K, V>(self, v: T) -> Self
where T: IntoIterator<Item = (K, V)>, K: Into<String>, V: Into<String>,

Sets the value of redis_configs.

Source

pub fn set_tier<T: Into<Tier>>(self, v: T) -> Self

Sets the value of tier.

Source

pub fn set_memory_size_gb<T: Into<i32>>(self, v: T) -> Self

Sets the value of memory_size_gb.

Source

pub fn set_authorized_network<T: Into<String>>(self, v: T) -> Self

Sets the value of authorized_network.

Source

pub fn set_persistence_iam_identity<T: Into<String>>(self, v: T) -> Self

Sets the value of persistence_iam_identity.

Source

pub fn set_connect_mode<T: Into<ConnectMode>>(self, v: T) -> Self

Sets the value of connect_mode.

Source

pub fn set_auth_enabled<T: Into<bool>>(self, v: T) -> Self

Sets the value of auth_enabled.

Source

pub fn set_server_ca_certs<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<TlsCertificate>,

Sets the value of server_ca_certs.

Source

pub fn set_transit_encryption_mode<T: Into<TransitEncryptionMode>>( self, v: T, ) -> Self

Sets the value of transit_encryption_mode.

Source

pub fn set_maintenance_policy<T>(self, v: T) -> Self

Sets the value of maintenance_policy.

Source

pub fn set_or_clear_maintenance_policy<T>(self, v: Option<T>) -> Self

Sets or clears the value of maintenance_policy.

Source

pub fn set_maintenance_schedule<T>(self, v: T) -> Self

Sets the value of maintenance_schedule.

Source

pub fn set_or_clear_maintenance_schedule<T>(self, v: Option<T>) -> Self

Sets or clears the value of maintenance_schedule.

Source

pub fn set_replica_count<T: Into<i32>>(self, v: T) -> Self

Sets the value of replica_count.

Source

pub fn set_nodes<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<NodeInfo>,

Sets the value of nodes.

Source

pub fn set_read_endpoint<T: Into<String>>(self, v: T) -> Self

Sets the value of read_endpoint.

Source

pub fn set_read_endpoint_port<T: Into<i32>>(self, v: T) -> Self

Sets the value of read_endpoint_port.

Source

pub fn set_read_replicas_mode<T: Into<ReadReplicasMode>>(self, v: T) -> Self

Sets the value of read_replicas_mode.

Source

pub fn set_customer_managed_key<T: Into<String>>(self, v: T) -> Self

Sets the value of customer_managed_key.

Source

pub fn set_persistence_config<T>(self, v: T) -> Self

Sets the value of persistence_config.

Source

pub fn set_or_clear_persistence_config<T>(self, v: Option<T>) -> Self

Sets or clears the value of persistence_config.

Source

pub fn set_suspension_reasons<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<SuspensionReason>,

Sets the value of suspension_reasons.

Source

pub fn set_maintenance_version<T: Into<String>>(self, v: T) -> Self

Sets the value of maintenance_version.

Source

pub fn set_available_maintenance_versions<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of available_maintenance_versions.

Trait Implementations§

Source§

impl Clone for Instance

Source§

fn clone(&self) -> Instance

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Instance

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Instance

Source§

fn default() -> Instance

Returns the “default value” for a type. Read more
Source§

impl Message for Instance

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for Instance

Source§

fn eq(&self, other: &Instance) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for Instance

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,