pub struct InstanceGroupAutoscalingPolicyConfig {
pub min_instances: i32,
pub max_instances: i32,
pub weight: i32,
}
Expand description
Configuration for the size bounds of an instance group, including its proportional size to other groups.
Fields§
§min_instances: i32
Optional. Minimum number of instances for this group.
Primary workers - Bounds: [2, max_instances]. Default: 2. Secondary workers - Bounds: [0, max_instances]. Default: 0.
max_instances: i32
Required. Maximum number of instances for this group. Required for primary workers. Note that by default, clusters will not use secondary workers. Required for secondary workers if the minimum secondary instances is set.
Primary workers - Bounds: [min_instances, ). Secondary workers - Bounds: [min_instances, ). Default: 0.
weight: i32
Optional. Weight for the instance group, which is used to determine the fraction of total workers in the cluster from this instance group. For example, if primary workers have weight 2, and secondary workers have weight 1, the cluster will have approximately 2 primary workers for each secondary worker.
The cluster may not reach the specified balance if constrained
by min/max bounds or other autoscaling settings. For example, if
max_instances
for secondary workers is 0, then only primary workers will
be added. The cluster can also be out of balance when created.
If weight is not set on any instance group, the cluster will default to equal weight for all groups: the cluster will attempt to maintain an equal number of workers in each group within the configured size bounds for each group. If weight is set for one group only, the cluster will default to zero weight on the unset group. For example if weight is set only on primary workers, the cluster will use primary workers only and no secondary workers.
Trait Implementations§
source§impl Clone for InstanceGroupAutoscalingPolicyConfig
impl Clone for InstanceGroupAutoscalingPolicyConfig
source§fn clone(&self) -> InstanceGroupAutoscalingPolicyConfig
fn clone(&self) -> InstanceGroupAutoscalingPolicyConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Message for InstanceGroupAutoscalingPolicyConfig
impl Message for InstanceGroupAutoscalingPolicyConfig
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for InstanceGroupAutoscalingPolicyConfig
impl PartialEq for InstanceGroupAutoscalingPolicyConfig
source§fn eq(&self, other: &InstanceGroupAutoscalingPolicyConfig) -> bool
fn eq(&self, other: &InstanceGroupAutoscalingPolicyConfig) -> bool
self
and other
values to be equal, and is used
by ==
.impl Copy for InstanceGroupAutoscalingPolicyConfig
impl StructuralPartialEq for InstanceGroupAutoscalingPolicyConfig
Auto Trait Implementations§
impl Freeze for InstanceGroupAutoscalingPolicyConfig
impl RefUnwindSafe for InstanceGroupAutoscalingPolicyConfig
impl Send for InstanceGroupAutoscalingPolicyConfig
impl Sync for InstanceGroupAutoscalingPolicyConfig
impl Unpin for InstanceGroupAutoscalingPolicyConfig
impl UnwindSafe for InstanceGroupAutoscalingPolicyConfig
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request