/* * 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 elasticmapreduce-2009-03-31.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.ElasticMapReduce.Model { /// /// Provides information about the Amazon EC2 instances in a cluster grouped by category. /// For example, key name, subnet ID, IAM instance profile, and so on. /// public partial class Ec2InstanceAttributes { private List _additionalMasterSecurityGroups = new List(); private List _additionalSlaveSecurityGroups = new List(); private string _ec2AvailabilityZone; private string _ec2KeyName; private string _ec2SubnetId; private string _emrManagedMasterSecurityGroup; private string _emrManagedSlaveSecurityGroup; private string _iamInstanceProfile; private List _requestedEc2AvailabilityZones = new List(); private List _requestedEc2SubnetIds = new List(); private string _serviceAccessSecurityGroup; /// /// Gets and sets the property AdditionalMasterSecurityGroups. /// /// A list of additional Amazon EC2 security group IDs for the master node. /// /// public List AdditionalMasterSecurityGroups { get { return this._additionalMasterSecurityGroups; } set { this._additionalMasterSecurityGroups = value; } } // Check to see if AdditionalMasterSecurityGroups property is set internal bool IsSetAdditionalMasterSecurityGroups() { return this._additionalMasterSecurityGroups != null && this._additionalMasterSecurityGroups.Count > 0; } /// /// Gets and sets the property AdditionalSlaveSecurityGroups. /// /// A list of additional Amazon EC2 security group IDs for the core and task nodes. /// /// public List AdditionalSlaveSecurityGroups { get { return this._additionalSlaveSecurityGroups; } set { this._additionalSlaveSecurityGroups = value; } } // Check to see if AdditionalSlaveSecurityGroups property is set internal bool IsSetAdditionalSlaveSecurityGroups() { return this._additionalSlaveSecurityGroups != null && this._additionalSlaveSecurityGroups.Count > 0; } /// /// Gets and sets the property Ec2AvailabilityZone. /// /// The Availability Zone in which the cluster will run. /// /// public string Ec2AvailabilityZone { get { return this._ec2AvailabilityZone; } set { this._ec2AvailabilityZone = value; } } // Check to see if Ec2AvailabilityZone property is set internal bool IsSetEc2AvailabilityZone() { return this._ec2AvailabilityZone != null; } /// /// Gets and sets the property Ec2KeyName. /// /// The name of the Amazon EC2 key pair to use when connecting with SSH into the master /// node as a user named "hadoop". /// /// public string Ec2KeyName { get { return this._ec2KeyName; } set { this._ec2KeyName = value; } } // Check to see if Ec2KeyName property is set internal bool IsSetEc2KeyName() { return this._ec2KeyName != null; } /// /// Gets and sets the property Ec2SubnetId. /// /// Set this parameter to the identifier of the Amazon VPC subnet where you want the cluster /// to launch. If you do not specify this value, and your account supports EC2-Classic, /// the cluster launches in EC2-Classic. /// /// public string Ec2SubnetId { get { return this._ec2SubnetId; } set { this._ec2SubnetId = value; } } // Check to see if Ec2SubnetId property is set internal bool IsSetEc2SubnetId() { return this._ec2SubnetId != null; } /// /// Gets and sets the property EmrManagedMasterSecurityGroup. /// /// The identifier of the Amazon EC2 security group for the master node. /// /// public string EmrManagedMasterSecurityGroup { get { return this._emrManagedMasterSecurityGroup; } set { this._emrManagedMasterSecurityGroup = value; } } // Check to see if EmrManagedMasterSecurityGroup property is set internal bool IsSetEmrManagedMasterSecurityGroup() { return this._emrManagedMasterSecurityGroup != null; } /// /// Gets and sets the property EmrManagedSlaveSecurityGroup. /// /// The identifier of the Amazon EC2 security group for the core and task nodes. /// /// public string EmrManagedSlaveSecurityGroup { get { return this._emrManagedSlaveSecurityGroup; } set { this._emrManagedSlaveSecurityGroup = value; } } // Check to see if EmrManagedSlaveSecurityGroup property is set internal bool IsSetEmrManagedSlaveSecurityGroup() { return this._emrManagedSlaveSecurityGroup != null; } /// /// Gets and sets the property IamInstanceProfile. /// /// The IAM role that was specified when the cluster was launched. The Amazon EC2 instances /// of the cluster assume this role. /// /// public string IamInstanceProfile { get { return this._iamInstanceProfile; } set { this._iamInstanceProfile = value; } } // Check to see if IamInstanceProfile property is set internal bool IsSetIamInstanceProfile() { return this._iamInstanceProfile != null; } /// /// Gets and sets the property RequestedEc2AvailabilityZones. /// /// Applies to clusters configured with the instance fleets option. Specifies one or more /// Availability Zones in which to launch Amazon EC2 cluster instances when the EC2-Classic /// network configuration is supported. Amazon EMR chooses the Availability Zone with /// the best fit from among the list of RequestedEc2AvailabilityZones, and /// then launches all cluster instances within that Availability Zone. If you do not specify /// this value, Amazon EMR chooses the Availability Zone for you. RequestedEc2SubnetIDs /// and RequestedEc2AvailabilityZones cannot be specified together. /// /// public List RequestedEc2AvailabilityZones { get { return this._requestedEc2AvailabilityZones; } set { this._requestedEc2AvailabilityZones = value; } } // Check to see if RequestedEc2AvailabilityZones property is set internal bool IsSetRequestedEc2AvailabilityZones() { return this._requestedEc2AvailabilityZones != null && this._requestedEc2AvailabilityZones.Count > 0; } /// /// Gets and sets the property RequestedEc2SubnetIds. /// /// Applies to clusters configured with the instance fleets option. Specifies the unique /// identifier of one or more Amazon EC2 subnets in which to launch Amazon EC2 cluster /// instances. Subnets must exist within the same VPC. Amazon EMR chooses the Amazon EC2 /// subnet with the best fit from among the list of RequestedEc2SubnetIds, /// and then launches all cluster instances within that Subnet. If this value is not specified, /// and the account and Region support EC2-Classic networks, the cluster launches instances /// in the EC2-Classic network and uses RequestedEc2AvailabilityZones instead /// of this setting. If EC2-Classic is not supported, and no Subnet is specified, Amazon /// EMR chooses the subnet for you. RequestedEc2SubnetIDs and RequestedEc2AvailabilityZones /// cannot be specified together. /// /// public List RequestedEc2SubnetIds { get { return this._requestedEc2SubnetIds; } set { this._requestedEc2SubnetIds = value; } } // Check to see if RequestedEc2SubnetIds property is set internal bool IsSetRequestedEc2SubnetIds() { return this._requestedEc2SubnetIds != null && this._requestedEc2SubnetIds.Count > 0; } /// /// Gets and sets the property ServiceAccessSecurityGroup. /// /// The identifier of the Amazon EC2 security group for the Amazon EMR service to access /// clusters in VPC private subnets. /// /// public string ServiceAccessSecurityGroup { get { return this._serviceAccessSecurityGroup; } set { this._serviceAccessSecurityGroup = value; } } // Check to see if ServiceAccessSecurityGroup property is set internal bool IsSetServiceAccessSecurityGroup() { return this._serviceAccessSecurityGroup != null; } } }