#[non_exhaustive]pub struct Cluster {
pub name: String,
pub description: String,
pub labels: HashMap<String, String>,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub reconciling: bool,
pub network_resources: HashMap<String, NetworkResource>,
pub storage_resources: HashMap<String, StorageResource>,
pub compute_resources: HashMap<String, ComputeResource>,
pub orchestrator: Option<Orchestrator>,
/* private fields */
}Expand description
A collection of virtual machines and connected resources forming a high-performance computing cluster capable of running large-scale, tightly coupled workloads. A cluster combines a set a compute resources that perform computations, storage resources that contain inputs and store outputs, an orchestrator that is responsible for assigning jobs to compute resources, and network resources that connect everything together.
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: StringIdentifier. Relative resource name of the
cluster, in the format
projects/{project}/locations/{location}/clusters/{cluster}.
description: StringOptional. User-provided description of the cluster.
labels: HashMap<String, String>Optional. Labels applied to the cluster. Labels can be used to organize clusters and to filter them in queries.
create_time: Option<Timestamp>Output only. Time that the cluster was originally created.
update_time: Option<Timestamp>Output only. Time that the cluster was most recently updated.
reconciling: boolOutput only. Indicates whether changes to the cluster are currently in
flight. If this is true, then the current state might not match the
cluster’s intended state.
network_resources: HashMap<String, NetworkResource>Optional. Network resources available to the cluster. Must contain at most one value. Keys specify the ID of the network resource by which it can be referenced elsewhere, and must conform to RFC-1034 (lower-case, alphanumeric, and at most 63 characters).
storage_resources: HashMap<String, StorageResource>Optional. Storage resources available to the cluster. Keys specify the ID of the storage resource by which it can be referenced elsewhere, and must conform to RFC-1034 (lower-case, alphanumeric, and at most 63 characters).
compute_resources: HashMap<String, ComputeResource>Optional. Compute resources available to the cluster. Keys specify the ID of the compute resource by which it can be referenced elsewhere, and must conform to RFC-1034 (lower-case, alphanumeric, and at most 63 characters).
orchestrator: Option<Orchestrator>Optional. Orchestrator that is responsible for scheduling and running jobs on the cluster.
Implementations§
Source§impl Cluster
impl Cluster
Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
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_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_reconciling<T: Into<bool>>(self, v: T) -> Self
pub fn set_reconciling<T: Into<bool>>(self, v: T) -> Self
Sourcepub fn set_network_resources<T, K, V>(self, v: T) -> Self
pub fn set_network_resources<T, K, V>(self, v: T) -> Self
Sets the value of network_resources.
§Example
use google_cloud_hypercomputecluster_v1::model::NetworkResource;
let x = Cluster::new().set_network_resources([
("key0", NetworkResource::default()/* use setters */),
("key1", NetworkResource::default()/* use (different) setters */),
]);Sourcepub fn set_storage_resources<T, K, V>(self, v: T) -> Self
pub fn set_storage_resources<T, K, V>(self, v: T) -> Self
Sets the value of storage_resources.
§Example
use google_cloud_hypercomputecluster_v1::model::StorageResource;
let x = Cluster::new().set_storage_resources([
("key0", StorageResource::default()/* use setters */),
("key1", StorageResource::default()/* use (different) setters */),
]);Sourcepub fn set_compute_resources<T, K, V>(self, v: T) -> Self
pub fn set_compute_resources<T, K, V>(self, v: T) -> Self
Sets the value of compute_resources.
§Example
use google_cloud_hypercomputecluster_v1::model::ComputeResource;
let x = Cluster::new().set_compute_resources([
("key0", ComputeResource::default()/* use setters */),
("key1", ComputeResource::default()/* use (different) setters */),
]);Sourcepub fn set_orchestrator<T>(self, v: T) -> Selfwhere
T: Into<Orchestrator>,
pub fn set_orchestrator<T>(self, v: T) -> Selfwhere
T: Into<Orchestrator>,
Sets the value of orchestrator.
§Example
use google_cloud_hypercomputecluster_v1::model::Orchestrator;
let x = Cluster::new().set_orchestrator(Orchestrator::default()/* use setters */);Sourcepub fn set_or_clear_orchestrator<T>(self, v: Option<T>) -> Selfwhere
T: Into<Orchestrator>,
pub fn set_or_clear_orchestrator<T>(self, v: Option<T>) -> Selfwhere
T: Into<Orchestrator>,
Sets or clears the value of orchestrator.
§Example
use google_cloud_hypercomputecluster_v1::model::Orchestrator;
let x = Cluster::new().set_or_clear_orchestrator(Some(Orchestrator::default()/* use setters */));
let x = Cluster::new().set_or_clear_orchestrator(None::<Orchestrator>);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