#[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
pub fn new() -> Self
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>);