/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the batch-2016-08-10.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Batch.Model
{
///
/// Provides information used to select Amazon Machine Images (AMIs) for instances in
/// the compute environment. If Ec2Configuration
isn't specified, the default
/// is ECS_AL2
(Amazon
/// Linux 2).
///
///
///
/// This object isn't applicable to jobs that are running on Fargate resources.
///
///
///
public partial class Ec2Configuration
{
private string _imageIdOverride;
private string _imageKubernetesVersion;
private string _imageType;
///
/// Gets and sets the property ImageIdOverride.
///
/// The AMI ID used for instances launched in the compute environment that match the image
/// type. This setting overrides the imageId
set in the computeResource
/// object.
///
///
///
/// The AMI that you choose for a compute environment must match the architecture of the
/// instance types that you intend to use for that compute environment. For example, if
/// your compute environment uses A1 instance types, the compute resource AMI that you
/// choose must support ARM instances. Amazon ECS vends both x86 and ARM versions of the
/// Amazon ECS-optimized Amazon Linux 2 AMI. For more information, see Amazon
/// ECS-optimized Amazon Linux 2 AMI in the Amazon Elastic Container Service Developer
/// Guide.
///
///
///
[AWSProperty(Min=1, Max=256)]
public string ImageIdOverride
{
get { return this._imageIdOverride; }
set { this._imageIdOverride = value; }
}
// Check to see if ImageIdOverride property is set
internal bool IsSetImageIdOverride()
{
return this._imageIdOverride != null;
}
///
/// Gets and sets the property ImageKubernetesVersion.
///
/// The Kubernetes version for the compute environment. If you don't specify a value,
/// the latest version that Batch supports is used.
///
///
[AWSProperty(Min=1, Max=256)]
public string ImageKubernetesVersion
{
get { return this._imageKubernetesVersion; }
set { this._imageKubernetesVersion = value; }
}
// Check to see if ImageKubernetesVersion property is set
internal bool IsSetImageKubernetesVersion()
{
return this._imageKubernetesVersion != null;
}
///
/// Gets and sets the property ImageType.
///
/// The image type to match with the instance type to select an AMI. The supported values
/// are different for ECS
and EKS
resources.
///
/// - ECS
-
///
/// If the
imageIdOverride
parameter isn't specified, then a recent Amazon
/// ECS-optimized Amazon Linux 2 AMI (ECS_AL2
) is used. If a new image
/// type is specified in an update, but neither an imageId
nor a imageIdOverride
/// parameter is specified, then the latest Amazon ECS optimized AMI for that image type
/// that's supported by Batch is used.
///
/// - ECS_AL2
-
///
/// Amazon
/// Linux 2: Default for all non-GPU instance families.
///
///
- ECS_AL2_NVIDIA
-
///
/// Amazon
/// Linux 2 (GPU): Default for all GPU instance families (for example
P4
/// and G4
) and can be used for all non Amazon Web Services Graviton-based
/// instance types.
///
/// - ECS_AL1
-
///
/// Amazon
/// Linux. Amazon Linux has reached the end-of-life of standard support. For more
/// information, see Amazon Linux AMI.
///
///
- EKS
-
///
/// If the
imageIdOverride
parameter isn't specified, then a recent Amazon
/// EKS-optimized Amazon Linux AMI (EKS_AL2
) is used. If a new image
/// type is specified in an update, but neither an imageId
nor a imageIdOverride
/// parameter is specified, then the latest Amazon EKS optimized AMI for that image type
/// that Batch supports is used.
///
/// - EKS_AL2
-
///
/// Amazon
/// Linux 2: Default for all non-GPU instance families.
///
///
- EKS_AL2_NVIDIA
-
///
/// Amazon
/// Linux 2 (accelerated): Default for all GPU instance families (for example,
P4
/// and G4
) and can be used for all non Amazon Web Services Graviton-based
/// instance types.
///
///
///
[AWSProperty(Required=true, Min=1, Max=256)]
public string ImageType
{
get { return this._imageType; }
set { this._imageType = value; }
}
// Check to see if ImageType property is set
internal bool IsSetImageType()
{
return this._imageType != null;
}
}
}