#[non_exhaustive]pub struct Cluster {Show 25 fields
pub name: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub labels: HashMap<String, String>,
pub fleet: Option<Fleet>,
pub networking: Option<ClusterNetworking>,
pub authorization: Option<Authorization>,
pub default_max_pods_per_node: i32,
pub endpoint: String,
pub port: i32,
pub cluster_ca_certificate: String,
pub maintenance_policy: Option<MaintenancePolicy>,
pub control_plane_version: String,
pub node_version: String,
pub control_plane: Option<ControlPlane>,
pub system_addons_config: Option<SystemAddonsConfig>,
pub external_load_balancer_ipv4_address_pools: Vec<String>,
pub control_plane_encryption: Option<ControlPlaneEncryption>,
pub status: Status,
pub maintenance_events: Vec<MaintenanceEvent>,
pub target_version: String,
pub release_channel: ReleaseChannel,
pub survivability_config: Option<SurvivabilityConfig>,
pub external_load_balancer_ipv6_address_pools: Vec<String>,
pub connection_state: Option<ConnectionState>,
/* private fields */
}Expand description
A Google Distributed Cloud Edge Kubernetes cluster.
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. The resource name of the cluster.
create_time: Option<Timestamp>Output only. The time when the cluster was created.
update_time: Option<Timestamp>Output only. The time when the cluster was last updated.
labels: HashMap<String, String>Labels associated with this resource.
fleet: Option<Fleet>Required. Fleet configuration.
networking: Option<ClusterNetworking>Required. Cluster-wide networking configuration.
Required. Immutable. RBAC policy that will be applied and managed by GEC.
default_max_pods_per_node: i32Optional. The default maximum number of pods per node used if a maximum value is not specified explicitly for a node pool in this cluster. If unspecified, the Kubernetes default value will be used.
endpoint: StringOutput only. The IP address of the Kubernetes API server.
port: i32Output only. The port number of the Kubernetes API server.
cluster_ca_certificate: StringOutput only. The PEM-encoded public certificate of the cluster’s CA.
maintenance_policy: Option<MaintenancePolicy>Optional. Cluster-wide maintenance policy configuration.
control_plane_version: StringOutput only. The control plane release version
node_version: StringOutput only. The lowest release version among all worker nodes. This field can be empty if the cluster does not have any worker nodes.
control_plane: Option<ControlPlane>Optional. The configuration of the cluster control plane.
system_addons_config: Option<SystemAddonsConfig>Optional. The configuration of the system add-ons.
external_load_balancer_ipv4_address_pools: Vec<String>Optional. IPv4 address pools for cluster data plane external load balancing.
control_plane_encryption: Option<ControlPlaneEncryption>Optional. Remote control plane disk encryption options. This field is only used when enabling CMEK support.
status: StatusOutput only. The current status of the cluster.
maintenance_events: Vec<MaintenanceEvent>Output only. All the maintenance events scheduled for the cluster, including the ones ongoing, planned for the future and done in the past (up to 90 days).
target_version: StringOptional. The target cluster version. For example: “1.5.0”.
release_channel: ReleaseChannelOptional. The release channel a cluster is subscribed to.
survivability_config: Option<SurvivabilityConfig>Optional. Configuration of the cluster survivability, e.g., for the case when network connectivity is lost. Note: This only applies to local control plane clusters.
external_load_balancer_ipv6_address_pools: Vec<String>Optional. IPv6 address pools for cluster data plane external load balancing.
connection_state: Option<ConnectionState>Output only. The current connection state of the cluster.
Implementations§
Source§impl Cluster
impl Cluster
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.
§Example
use wkt::Timestamp;
let x = Cluster::new().set_create_time(Timestamp::default()/* use setters */);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.
§Example
use wkt::Timestamp;
let x = Cluster::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = Cluster::new().set_or_clear_create_time(None::<Timestamp>);Sourcepub fn set_update_time<T>(self, v: T) -> Self
pub fn set_update_time<T>(self, v: T) -> Self
Sets the value of update_time.
§Example
use wkt::Timestamp;
let x = Cluster::new().set_update_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of update_time.
§Example
use wkt::Timestamp;
let x = Cluster::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
let x = Cluster::new().set_or_clear_update_time(None::<Timestamp>);Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sourcepub fn set_or_clear_fleet<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_fleet<T>(self, v: Option<T>) -> Self
Sourcepub fn set_networking<T>(self, v: T) -> Selfwhere
T: Into<ClusterNetworking>,
pub fn set_networking<T>(self, v: T) -> Selfwhere
T: Into<ClusterNetworking>,
Sets the value of networking.
§Example
use google_cloud_edgecontainer_v1::model::ClusterNetworking;
let x = Cluster::new().set_networking(ClusterNetworking::default()/* use setters */);Sourcepub fn set_or_clear_networking<T>(self, v: Option<T>) -> Selfwhere
T: Into<ClusterNetworking>,
pub fn set_or_clear_networking<T>(self, v: Option<T>) -> Selfwhere
T: Into<ClusterNetworking>,
Sets or clears the value of networking.
§Example
use google_cloud_edgecontainer_v1::model::ClusterNetworking;
let x = Cluster::new().set_or_clear_networking(Some(ClusterNetworking::default()/* use setters */));
let x = Cluster::new().set_or_clear_networking(None::<ClusterNetworking>);Sets the value of authorization.
§Example
use google_cloud_edgecontainer_v1::model::Authorization;
let x = Cluster::new().set_authorization(Authorization::default()/* use setters */);Sets or clears the value of authorization.
§Example
use google_cloud_edgecontainer_v1::model::Authorization;
let x = Cluster::new().set_or_clear_authorization(Some(Authorization::default()/* use setters */));
let x = Cluster::new().set_or_clear_authorization(None::<Authorization>);Sourcepub fn set_default_max_pods_per_node<T: Into<i32>>(self, v: T) -> Self
pub fn set_default_max_pods_per_node<T: Into<i32>>(self, v: T) -> Self
Sets the value of default_max_pods_per_node.
§Example
let x = Cluster::new().set_default_max_pods_per_node(42);Sourcepub fn set_endpoint<T: Into<String>>(self, v: T) -> Self
pub fn set_endpoint<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_cluster_ca_certificate<T: Into<String>>(self, v: T) -> Self
pub fn set_cluster_ca_certificate<T: Into<String>>(self, v: T) -> Self
Sets the value of cluster_ca_certificate.
§Example
let x = Cluster::new().set_cluster_ca_certificate("example");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.
§Example
use google_cloud_edgecontainer_v1::model::MaintenancePolicy;
let x = Cluster::new().set_maintenance_policy(MaintenancePolicy::default()/* use setters */);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.
§Example
use google_cloud_edgecontainer_v1::model::MaintenancePolicy;
let x = Cluster::new().set_or_clear_maintenance_policy(Some(MaintenancePolicy::default()/* use setters */));
let x = Cluster::new().set_or_clear_maintenance_policy(None::<MaintenancePolicy>);Sourcepub fn set_control_plane_version<T: Into<String>>(self, v: T) -> Self
pub fn set_control_plane_version<T: Into<String>>(self, v: T) -> Self
Sets the value of control_plane_version.
§Example
let x = Cluster::new().set_control_plane_version("example");Sourcepub fn set_node_version<T: Into<String>>(self, v: T) -> Self
pub fn set_node_version<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_control_plane<T>(self, v: T) -> Selfwhere
T: Into<ControlPlane>,
pub fn set_control_plane<T>(self, v: T) -> Selfwhere
T: Into<ControlPlane>,
Sets the value of control_plane.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ControlPlane;
let x = Cluster::new().set_control_plane(ControlPlane::default()/* use setters */);Sourcepub fn set_or_clear_control_plane<T>(self, v: Option<T>) -> Selfwhere
T: Into<ControlPlane>,
pub fn set_or_clear_control_plane<T>(self, v: Option<T>) -> Selfwhere
T: Into<ControlPlane>,
Sets or clears the value of control_plane.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ControlPlane;
let x = Cluster::new().set_or_clear_control_plane(Some(ControlPlane::default()/* use setters */));
let x = Cluster::new().set_or_clear_control_plane(None::<ControlPlane>);Sourcepub fn set_system_addons_config<T>(self, v: T) -> Selfwhere
T: Into<SystemAddonsConfig>,
pub fn set_system_addons_config<T>(self, v: T) -> Selfwhere
T: Into<SystemAddonsConfig>,
Sets the value of system_addons_config.
§Example
use google_cloud_edgecontainer_v1::model::cluster::SystemAddonsConfig;
let x = Cluster::new().set_system_addons_config(SystemAddonsConfig::default()/* use setters */);Sourcepub fn set_or_clear_system_addons_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<SystemAddonsConfig>,
pub fn set_or_clear_system_addons_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<SystemAddonsConfig>,
Sets or clears the value of system_addons_config.
§Example
use google_cloud_edgecontainer_v1::model::cluster::SystemAddonsConfig;
let x = Cluster::new().set_or_clear_system_addons_config(Some(SystemAddonsConfig::default()/* use setters */));
let x = Cluster::new().set_or_clear_system_addons_config(None::<SystemAddonsConfig>);Sourcepub fn set_external_load_balancer_ipv4_address_pools<T, V>(self, v: T) -> Self
pub fn set_external_load_balancer_ipv4_address_pools<T, V>(self, v: T) -> Self
Sets the value of external_load_balancer_ipv4_address_pools.
§Example
let x = Cluster::new().set_external_load_balancer_ipv4_address_pools(["a", "b", "c"]);Sourcepub fn set_control_plane_encryption<T>(self, v: T) -> Selfwhere
T: Into<ControlPlaneEncryption>,
pub fn set_control_plane_encryption<T>(self, v: T) -> Selfwhere
T: Into<ControlPlaneEncryption>,
Sets the value of control_plane_encryption.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ControlPlaneEncryption;
let x = Cluster::new().set_control_plane_encryption(ControlPlaneEncryption::default()/* use setters */);Sourcepub fn set_or_clear_control_plane_encryption<T>(self, v: Option<T>) -> Selfwhere
T: Into<ControlPlaneEncryption>,
pub fn set_or_clear_control_plane_encryption<T>(self, v: Option<T>) -> Selfwhere
T: Into<ControlPlaneEncryption>,
Sets or clears the value of control_plane_encryption.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ControlPlaneEncryption;
let x = Cluster::new().set_or_clear_control_plane_encryption(Some(ControlPlaneEncryption::default()/* use setters */));
let x = Cluster::new().set_or_clear_control_plane_encryption(None::<ControlPlaneEncryption>);Sourcepub fn set_status<T: Into<Status>>(self, v: T) -> Self
pub fn set_status<T: Into<Status>>(self, v: T) -> Self
Sourcepub fn set_maintenance_events<T, V>(self, v: T) -> Self
pub fn set_maintenance_events<T, V>(self, v: T) -> Self
Sets the value of maintenance_events.
§Example
use google_cloud_edgecontainer_v1::model::cluster::MaintenanceEvent;
let x = Cluster::new()
.set_maintenance_events([
MaintenanceEvent::default()/* use setters */,
MaintenanceEvent::default()/* use (different) setters */,
]);Sourcepub fn set_target_version<T: Into<String>>(self, v: T) -> Self
pub fn set_target_version<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_release_channel<T: Into<ReleaseChannel>>(self, v: T) -> Self
pub fn set_release_channel<T: Into<ReleaseChannel>>(self, v: T) -> Self
Sets the value of release_channel.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ReleaseChannel;
let x0 = Cluster::new().set_release_channel(ReleaseChannel::None);
let x1 = Cluster::new().set_release_channel(ReleaseChannel::Regular);Sourcepub fn set_survivability_config<T>(self, v: T) -> Selfwhere
T: Into<SurvivabilityConfig>,
pub fn set_survivability_config<T>(self, v: T) -> Selfwhere
T: Into<SurvivabilityConfig>,
Sets the value of survivability_config.
§Example
use google_cloud_edgecontainer_v1::model::cluster::SurvivabilityConfig;
let x = Cluster::new().set_survivability_config(SurvivabilityConfig::default()/* use setters */);Sourcepub fn set_or_clear_survivability_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<SurvivabilityConfig>,
pub fn set_or_clear_survivability_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<SurvivabilityConfig>,
Sets or clears the value of survivability_config.
§Example
use google_cloud_edgecontainer_v1::model::cluster::SurvivabilityConfig;
let x = Cluster::new().set_or_clear_survivability_config(Some(SurvivabilityConfig::default()/* use setters */));
let x = Cluster::new().set_or_clear_survivability_config(None::<SurvivabilityConfig>);Sourcepub fn set_external_load_balancer_ipv6_address_pools<T, V>(self, v: T) -> Self
pub fn set_external_load_balancer_ipv6_address_pools<T, V>(self, v: T) -> Self
Sets the value of external_load_balancer_ipv6_address_pools.
§Example
let x = Cluster::new().set_external_load_balancer_ipv6_address_pools(["a", "b", "c"]);Sourcepub fn set_connection_state<T>(self, v: T) -> Selfwhere
T: Into<ConnectionState>,
pub fn set_connection_state<T>(self, v: T) -> Selfwhere
T: Into<ConnectionState>,
Sets the value of connection_state.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ConnectionState;
let x = Cluster::new().set_connection_state(ConnectionState::default()/* use setters */);Sourcepub fn set_or_clear_connection_state<T>(self, v: Option<T>) -> Selfwhere
T: Into<ConnectionState>,
pub fn set_or_clear_connection_state<T>(self, v: Option<T>) -> Selfwhere
T: Into<ConnectionState>,
Sets or clears the value of connection_state.
§Example
use google_cloud_edgecontainer_v1::model::cluster::ConnectionState;
let x = Cluster::new().set_or_clear_connection_state(Some(ConnectionState::default()/* use setters */));
let x = Cluster::new().set_or_clear_connection_state(None::<ConnectionState>);Trait Implementations§
impl StructuralPartialEq for Cluster
Auto Trait Implementations§
impl Freeze for Cluster
impl RefUnwindSafe for Cluster
impl Send for Cluster
impl Sync for Cluster
impl Unpin for Cluster
impl UnsafeUnpin for Cluster
impl UnwindSafe for Cluster
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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