AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
ClusterInstanceGroupSpecification.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/sagemaker/SageMaker_EXPORTS.h>
10#include <aws/sagemaker/model/ClusterCapacityRequirements.h>
11#include <aws/sagemaker/model/ClusterInstanceRequirements.h>
12#include <aws/sagemaker/model/ClusterInstanceStorageConfig.h>
13#include <aws/sagemaker/model/ClusterInstanceType.h>
14#include <aws/sagemaker/model/ClusterKubernetesConfig.h>
15#include <aws/sagemaker/model/ClusterLifeCycleConfig.h>
16#include <aws/sagemaker/model/ClusterSlurmConfig.h>
17#include <aws/sagemaker/model/DeepHealthCheckType.h>
18#include <aws/sagemaker/model/ScheduledUpdateConfig.h>
19#include <aws/sagemaker/model/VpcConfig.h>
20
21#include <utility>
22
23namespace Aws {
24namespace Utils {
25namespace Json {
26class JsonValue;
27class JsonView;
28} // namespace Json
29} // namespace Utils
30namespace SageMaker {
31namespace Model {
32
40 public:
41 AWS_SAGEMAKER_API ClusterInstanceGroupSpecification() = default;
44 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
45
47
51 inline int GetInstanceCount() const { return m_instanceCount; }
52 inline bool InstanceCountHasBeenSet() const { return m_instanceCountHasBeenSet; }
53 inline void SetInstanceCount(int value) {
54 m_instanceCountHasBeenSet = true;
55 m_instanceCount = value;
56 }
58 SetInstanceCount(value);
59 return *this;
60 }
62
64
73 inline int GetMinInstanceCount() const { return m_minInstanceCount; }
74 inline bool MinInstanceCountHasBeenSet() const { return m_minInstanceCountHasBeenSet; }
75 inline void SetMinInstanceCount(int value) {
76 m_minInstanceCountHasBeenSet = true;
77 m_minInstanceCount = value;
78 }
81 return *this;
82 }
84
86
89 inline const Aws::String& GetInstanceGroupName() const { return m_instanceGroupName; }
90 inline bool InstanceGroupNameHasBeenSet() const { return m_instanceGroupNameHasBeenSet; }
91 template <typename InstanceGroupNameT = Aws::String>
92 void SetInstanceGroupName(InstanceGroupNameT&& value) {
93 m_instanceGroupNameHasBeenSet = true;
94 m_instanceGroupName = std::forward<InstanceGroupNameT>(value);
95 }
96 template <typename InstanceGroupNameT = Aws::String>
98 SetInstanceGroupName(std::forward<InstanceGroupNameT>(value));
99 return *this;
100 }
102
104
107 inline ClusterInstanceType GetInstanceType() const { return m_instanceType; }
108 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
110 m_instanceTypeHasBeenSet = true;
111 m_instanceType = value;
112 }
114 SetInstanceType(value);
115 return *this;
116 }
118
120
126 inline const ClusterInstanceRequirements& GetInstanceRequirements() const { return m_instanceRequirements; }
127 inline bool InstanceRequirementsHasBeenSet() const { return m_instanceRequirementsHasBeenSet; }
128 template <typename InstanceRequirementsT = ClusterInstanceRequirements>
129 void SetInstanceRequirements(InstanceRequirementsT&& value) {
130 m_instanceRequirementsHasBeenSet = true;
131 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
132 }
133 template <typename InstanceRequirementsT = ClusterInstanceRequirements>
135 SetInstanceRequirements(std::forward<InstanceRequirementsT>(value));
136 return *this;
137 }
139
141
144 inline const ClusterLifeCycleConfig& GetLifeCycleConfig() const { return m_lifeCycleConfig; }
145 inline bool LifeCycleConfigHasBeenSet() const { return m_lifeCycleConfigHasBeenSet; }
146 template <typename LifeCycleConfigT = ClusterLifeCycleConfig>
147 void SetLifeCycleConfig(LifeCycleConfigT&& value) {
148 m_lifeCycleConfigHasBeenSet = true;
149 m_lifeCycleConfig = std::forward<LifeCycleConfigT>(value);
150 }
151 template <typename LifeCycleConfigT = ClusterLifeCycleConfig>
153 SetLifeCycleConfig(std::forward<LifeCycleConfigT>(value));
154 return *this;
155 }
157
159
162 inline const Aws::String& GetExecutionRole() const { return m_executionRole; }
163 inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; }
164 template <typename ExecutionRoleT = Aws::String>
165 void SetExecutionRole(ExecutionRoleT&& value) {
166 m_executionRoleHasBeenSet = true;
167 m_executionRole = std::forward<ExecutionRoleT>(value);
168 }
169 template <typename ExecutionRoleT = Aws::String>
171 SetExecutionRole(std::forward<ExecutionRoleT>(value));
172 return *this;
173 }
175
177
187 inline int GetThreadsPerCore() const { return m_threadsPerCore; }
188 inline bool ThreadsPerCoreHasBeenSet() const { return m_threadsPerCoreHasBeenSet; }
189 inline void SetThreadsPerCore(int value) {
190 m_threadsPerCoreHasBeenSet = true;
191 m_threadsPerCore = value;
192 }
194 SetThreadsPerCore(value);
195 return *this;
196 }
198
200
204 inline const Aws::Vector<ClusterInstanceStorageConfig>& GetInstanceStorageConfigs() const { return m_instanceStorageConfigs; }
205 inline bool InstanceStorageConfigsHasBeenSet() const { return m_instanceStorageConfigsHasBeenSet; }
206 template <typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
207 void SetInstanceStorageConfigs(InstanceStorageConfigsT&& value) {
208 m_instanceStorageConfigsHasBeenSet = true;
209 m_instanceStorageConfigs = std::forward<InstanceStorageConfigsT>(value);
210 }
211 template <typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
213 SetInstanceStorageConfigs(std::forward<InstanceStorageConfigsT>(value));
214 return *this;
215 }
216 template <typename InstanceStorageConfigsT = ClusterInstanceStorageConfig>
218 m_instanceStorageConfigsHasBeenSet = true;
219 m_instanceStorageConfigs.emplace_back(std::forward<InstanceStorageConfigsT>(value));
220 return *this;
221 }
223
225
229 inline const Aws::Vector<DeepHealthCheckType>& GetOnStartDeepHealthChecks() const { return m_onStartDeepHealthChecks; }
230 inline bool OnStartDeepHealthChecksHasBeenSet() const { return m_onStartDeepHealthChecksHasBeenSet; }
231 template <typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
232 void SetOnStartDeepHealthChecks(OnStartDeepHealthChecksT&& value) {
233 m_onStartDeepHealthChecksHasBeenSet = true;
234 m_onStartDeepHealthChecks = std::forward<OnStartDeepHealthChecksT>(value);
235 }
236 template <typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
238 SetOnStartDeepHealthChecks(std::forward<OnStartDeepHealthChecksT>(value));
239 return *this;
240 }
242 m_onStartDeepHealthChecksHasBeenSet = true;
243 m_onStartDeepHealthChecks.push_back(value);
244 return *this;
245 }
247
249
257 inline const Aws::String& GetTrainingPlanArn() const { return m_trainingPlanArn; }
258 inline bool TrainingPlanArnHasBeenSet() const { return m_trainingPlanArnHasBeenSet; }
259 template <typename TrainingPlanArnT = Aws::String>
260 void SetTrainingPlanArn(TrainingPlanArnT&& value) {
261 m_trainingPlanArnHasBeenSet = true;
262 m_trainingPlanArn = std::forward<TrainingPlanArnT>(value);
263 }
264 template <typename TrainingPlanArnT = Aws::String>
266 SetTrainingPlanArn(std::forward<TrainingPlanArnT>(value));
267 return *this;
268 }
270
272
300 inline const VpcConfig& GetOverrideVpcConfig() const { return m_overrideVpcConfig; }
301 inline bool OverrideVpcConfigHasBeenSet() const { return m_overrideVpcConfigHasBeenSet; }
302 template <typename OverrideVpcConfigT = VpcConfig>
303 void SetOverrideVpcConfig(OverrideVpcConfigT&& value) {
304 m_overrideVpcConfigHasBeenSet = true;
305 m_overrideVpcConfig = std::forward<OverrideVpcConfigT>(value);
306 }
307 template <typename OverrideVpcConfigT = VpcConfig>
309 SetOverrideVpcConfig(std::forward<OverrideVpcConfigT>(value));
310 return *this;
311 }
313
315
319 inline const ScheduledUpdateConfig& GetScheduledUpdateConfig() const { return m_scheduledUpdateConfig; }
320 inline bool ScheduledUpdateConfigHasBeenSet() const { return m_scheduledUpdateConfigHasBeenSet; }
321 template <typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
322 void SetScheduledUpdateConfig(ScheduledUpdateConfigT&& value) {
323 m_scheduledUpdateConfigHasBeenSet = true;
324 m_scheduledUpdateConfig = std::forward<ScheduledUpdateConfigT>(value);
325 }
326 template <typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
328 SetScheduledUpdateConfig(std::forward<ScheduledUpdateConfigT>(value));
329 return *this;
330 }
332
334
352 inline const Aws::String& GetImageId() const { return m_imageId; }
353 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
354 template <typename ImageIdT = Aws::String>
355 void SetImageId(ImageIdT&& value) {
356 m_imageIdHasBeenSet = true;
357 m_imageId = std::forward<ImageIdT>(value);
358 }
359 template <typename ImageIdT = Aws::String>
361 SetImageId(std::forward<ImageIdT>(value));
362 return *this;
363 }
365
367
373 inline const ClusterKubernetesConfig& GetKubernetesConfig() const { return m_kubernetesConfig; }
374 inline bool KubernetesConfigHasBeenSet() const { return m_kubernetesConfigHasBeenSet; }
375 template <typename KubernetesConfigT = ClusterKubernetesConfig>
376 void SetKubernetesConfig(KubernetesConfigT&& value) {
377 m_kubernetesConfigHasBeenSet = true;
378 m_kubernetesConfig = std::forward<KubernetesConfigT>(value);
379 }
380 template <typename KubernetesConfigT = ClusterKubernetesConfig>
382 SetKubernetesConfig(std::forward<KubernetesConfigT>(value));
383 return *this;
384 }
386
388
391 inline const ClusterSlurmConfig& GetSlurmConfig() const { return m_slurmConfig; }
392 inline bool SlurmConfigHasBeenSet() const { return m_slurmConfigHasBeenSet; }
393 template <typename SlurmConfigT = ClusterSlurmConfig>
394 void SetSlurmConfig(SlurmConfigT&& value) {
395 m_slurmConfigHasBeenSet = true;
396 m_slurmConfig = std::forward<SlurmConfigT>(value);
397 }
398 template <typename SlurmConfigT = ClusterSlurmConfig>
400 SetSlurmConfig(std::forward<SlurmConfigT>(value));
401 return *this;
402 }
404
406
409 inline const ClusterCapacityRequirements& GetCapacityRequirements() const { return m_capacityRequirements; }
410 inline bool CapacityRequirementsHasBeenSet() const { return m_capacityRequirementsHasBeenSet; }
411 template <typename CapacityRequirementsT = ClusterCapacityRequirements>
412 void SetCapacityRequirements(CapacityRequirementsT&& value) {
413 m_capacityRequirementsHasBeenSet = true;
414 m_capacityRequirements = std::forward<CapacityRequirementsT>(value);
415 }
416 template <typename CapacityRequirementsT = ClusterCapacityRequirements>
418 SetCapacityRequirements(std::forward<CapacityRequirementsT>(value));
419 return *this;
420 }
422 private:
423 int m_instanceCount{0};
424
425 int m_minInstanceCount{0};
426
427 Aws::String m_instanceGroupName;
428
430
431 ClusterInstanceRequirements m_instanceRequirements;
432
433 ClusterLifeCycleConfig m_lifeCycleConfig;
434
435 Aws::String m_executionRole;
436
437 int m_threadsPerCore{0};
438
439 Aws::Vector<ClusterInstanceStorageConfig> m_instanceStorageConfigs;
440
441 Aws::Vector<DeepHealthCheckType> m_onStartDeepHealthChecks;
442
443 Aws::String m_trainingPlanArn;
444
445 VpcConfig m_overrideVpcConfig;
446
447 ScheduledUpdateConfig m_scheduledUpdateConfig;
448
449 Aws::String m_imageId;
450
451 ClusterKubernetesConfig m_kubernetesConfig;
452
453 ClusterSlurmConfig m_slurmConfig;
454
455 ClusterCapacityRequirements m_capacityRequirements;
456 bool m_instanceCountHasBeenSet = false;
457 bool m_minInstanceCountHasBeenSet = false;
458 bool m_instanceGroupNameHasBeenSet = false;
459 bool m_instanceTypeHasBeenSet = false;
460 bool m_instanceRequirementsHasBeenSet = false;
461 bool m_lifeCycleConfigHasBeenSet = false;
462 bool m_executionRoleHasBeenSet = false;
463 bool m_threadsPerCoreHasBeenSet = false;
464 bool m_instanceStorageConfigsHasBeenSet = false;
465 bool m_onStartDeepHealthChecksHasBeenSet = false;
466 bool m_trainingPlanArnHasBeenSet = false;
467 bool m_overrideVpcConfigHasBeenSet = false;
468 bool m_scheduledUpdateConfigHasBeenSet = false;
469 bool m_imageIdHasBeenSet = false;
470 bool m_kubernetesConfigHasBeenSet = false;
471 bool m_slurmConfigHasBeenSet = false;
472 bool m_capacityRequirementsHasBeenSet = false;
473};
474
475} // namespace Model
476} // namespace SageMaker
477} // namespace Aws
ClusterInstanceGroupSpecification & WithImageId(ImageIdT &&value)
ClusterInstanceGroupSpecification & WithExecutionRole(ExecutionRoleT &&value)
ClusterInstanceGroupSpecification & WithOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
ClusterInstanceGroupSpecification & WithTrainingPlanArn(TrainingPlanArnT &&value)
ClusterInstanceGroupSpecification & WithInstanceRequirements(InstanceRequirementsT &&value)
ClusterInstanceGroupSpecification & AddInstanceStorageConfigs(InstanceStorageConfigsT &&value)
ClusterInstanceGroupSpecification & WithOverrideVpcConfig(OverrideVpcConfigT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupSpecification(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< ClusterInstanceStorageConfig > & GetInstanceStorageConfigs() const
ClusterInstanceGroupSpecification & WithScheduledUpdateConfig(ScheduledUpdateConfigT &&value)
ClusterInstanceGroupSpecification & WithInstanceGroupName(InstanceGroupNameT &&value)
ClusterInstanceGroupSpecification & WithCapacityRequirements(CapacityRequirementsT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
ClusterInstanceGroupSpecification & WithMinInstanceCount(int value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
ClusterInstanceGroupSpecification & WithInstanceType(ClusterInstanceType value)
const Aws::Vector< DeepHealthCheckType > & GetOnStartDeepHealthChecks() const
ClusterInstanceGroupSpecification & WithLifeCycleConfig(LifeCycleConfigT &&value)
ClusterInstanceGroupSpecification & WithKubernetesConfig(KubernetesConfigT &&value)
ClusterInstanceGroupSpecification & WithSlurmConfig(SlurmConfigT &&value)
ClusterInstanceGroupSpecification & AddOnStartDeepHealthChecks(DeepHealthCheckType value)
ClusterInstanceGroupSpecification & WithInstanceStorageConfigs(InstanceStorageConfigsT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupSpecification()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue