AWS services used by AWS ParallelCluster
The following Amazon Web Services (AWS) services are used by AWS ParallelCluster.
Topics
AWS Auto Scaling
Note
This section only applies to AWS ParallelCluster versions up to and including version 2.11.4. Starting with version 2.11.5, AWS ParallelCluster doesn't support the use of AWS Auto Scaling.
AWS Auto Scaling is a service that monitors your applications and automatically adjusts capacity based on your specific and changing service requirements. This service manages your ComputeFleet instances as an Auto Scaling group. The group can be elastically driven by your changing workload or statically fixed by your initial instance configurations.
AWS Auto Scaling is used with ComputeFleet instances but is not used with AWS Batch clusters.
For more information about AWS Auto Scaling, see https://aws.amazon.com/autoscaling/
AWS Batch
AWS Batch is an AWS managed job scheduler service. It dynamically provisions the optimal quantity and type of compute resources (for example, CPU or memory-optimized instances) in AWS Batch clusters. These resources are provisioned based on the specific requirements of your batch jobs, including volume requirements. With AWS Batch, you don't need to install or manage additional batch computing software or server clusters to run your jobs effectively.
AWS Batch is used only with AWS Batch clusters.
For more information about AWS Batch, see https://aws.amazon.com/batch/
AWS CloudFormation
AWS CloudFormation is an infrastructure-as-code service that provides a common language to model and provision AWS and third-party application resources in your cloud environment. It is the main service used by AWS ParallelCluster. Each cluster in AWS ParallelCluster is represented as a stack, and all resources required by each cluster are defined within the AWS ParallelCluster AWS CloudFormation template. In most cases, AWS ParallelCluster CLI commands directly correspond to AWS CloudFormation stack commands, such as create, update, and delete commands. Instances that are launched within a cluster make HTTPS calls to the AWS CloudFormation endpoint in the AWS Region where the cluster is launched.
For more information about AWS CloudFormation, see https://aws.amazon.com/cloudformation/
Amazon CloudWatch
Amazon CloudWatch (CloudWatch) is a monitoring and observability service that provides you with data and actionable insights. These insights can be used to monitor your applications, respond to performance changes and service exceptions, and optimize resource utilization. In AWS ParallelCluster, CloudWatch is used for a dashboard, to monitor and log Docker image build steps and the output of the AWS Batch jobs.
Before AWS ParallelCluster version 2.10.0, CloudWatch was used only with AWS Batch clusters.
For more information about CloudWatch, see https://aws.amazon.com/cloudwatch/
Amazon CloudWatch Logs
Amazon CloudWatch Logs (CloudWatch Logs) is one of the core features of Amazon CloudWatch. You can use it to monitor, store, view, and search the log files for many of the components used by AWS ParallelCluster.
Before AWS ParallelCluster version 2.6.0, CloudWatch Logs was only used with AWS Batch clusters.
For more information, see Integration with Amazon CloudWatch Logs.
AWS CodeBuild
AWS CodeBuild (CodeBuild) is an AWS managed continuous integration service that complies source code, runs tests, and produces software packages that are ready to deploy. In AWS ParallelCluster, CodeBuild is used to automatically and transparently build Docker images when clusters are created.
CodeBuild is used only with AWS Batch clusters.
For more information about CodeBuild, see https://aws.amazon.com/codebuild/
Amazon DynamoDB
Amazon DynamoDB (DynamoDB) is a fast and flexible NoSQL database service. It is used to store the minimal state information of the cluster. The head node tracks provisioned instances in a DynamoDB table.
DynamoDB is not used with AWS Batch clusters.
For more information about DynamoDB, see https://aws.amazon.com/dynamodb/
Amazon Elastic Block Store
Amazon Elastic Block Store (Amazon EBS) is a high-performance block storage service that provides persistent storage for shared volumes. All Amazon EBS settings can be passed through the configuration. Amazon EBS volumes can either be initialized empty or from an existing Amazon EBS snapshot.
For more information about Amazon EBS, see https://aws.amazon.com/ebs/
Amazon Elastic Compute Cloud
Amazon Elastic Compute Cloud (Amazon EC2) provides the computing capacity for AWS ParallelCluster. The head and compute nodes are Amazon EC2 instances. Any instance type that support HVM can be selected. The head and compute nodes can be different instance types. Moreover, if multiple queues are used, some or all of compute nodes can also be launched as a Spot Instance. Instance store volumes found on the instances are mounted as striped LVM volumes.
For more information about Amazon EC2, see https://aws.amazon.com/ec2/
Amazon Elastic Container Registry
Amazon Elastic Container Registry (Amazon ECR) is a fully managed Docker container registry that makes it easy to store, manage, and deploy Docker container images. In AWS ParallelCluster, Amazon ECR stores the Docker images that are built when clusters are created. The Docker images are then used by AWS Batch to run the containers for the submitted jobs.
Amazon ECR is used only with AWS Batch clusters.
For more information, see https://aws.amazon.com/ecr/
Amazon EFS
Amazon Elastic File System (Amazon EFS) provides a simple, scalable, and fully managed elastic NFS file system for use with AWS Cloud services and on-premises resources. Amazon EFS is used when the efs_settings setting is specified and refers to an [efs] section. Support for Amazon EFS was added in AWS ParallelCluster version 2.1.0.
For more information about Amazon EFS, see https://aws.amazon.com/efs/
Amazon FSx for Lustre
FSx for Lustre provides a high-performance file system that uses the open-source Lustre file system. FSx for Lustre is used when the fsx_settings setting is specified and refers to an [fsx] section. Support for FSx for Lustre was added in AWS ParallelCluster version 2.2.1.
For more information about FSx for Lustre, see https://aws.amazon.com/fsx/lustre/
AWS Identity and Access Management
AWS Identity and Access Management (IAM) is used within AWS ParallelCluster to provide a least privileged IAM role for Amazon EC2 for the instance that is specific to each individual cluster. AWS ParallelCluster instances are given access only to the specific API calls that are required to deploy and manage the cluster.
With AWS Batch clusters, IAM roles are also created for the components that are involved with the Docker image building process when clusters are created. These components include the Lambda functions that are allowed to add and delete Docker images to and from the Amazon ECR repository. They also include the functions allowed to delete the Amazon S3 bucket that is created for the cluster and CodeBuild project. There are also roles for AWS Batch resources, instances, and jobs.
For more information about IAM, see https://aws.amazon.com/iam/
AWS Lambda
AWS Lambda (Lambda) runs the functions that orchestrate the creation of Docker images. Lambda also manages the cleanup of custom cluster resources, such as Docker images stored in the Amazon ECR repository and on Amazon S3.
For more information about Lambda, see https://aws.amazon.com/lambda/
Amazon DCV
Amazon DCV is a high-performance remote display protocol that provides a secure way to deliver remote desktops and application streaming to any device over varying network conditions. Amazon DCV is used when the dcv_settings setting is specified and refers to an [dcv] section. Support for Amazon DCV was added in AWS ParallelCluster version 2.5.0.
For more information about Amazon DCV, see https://aws.amazon.com/hpc/dcv/
Amazon Route 53
Amazon Route 53 (Route 53) is used to create hosted zones with hostnames and fully qualified domain names for each of the compute nodes.
For more information about Route 53, see https://aws.amazon.com/route53/
Amazon Simple Notification Service
Note
This section only applies to AWS ParallelCluster versions up to and including version 2.11.4. Starting with version 2.11.5, AWS ParallelCluster doesn't support the use of Amazon Simple Notification Service.
Amazon Simple Notification Service (Amazon SNS) receives notifications from Auto Scaling. These events are called lifecycle events and are generated when an instance launches or terminates in an Auto Scaling group. Within AWS ParallelCluster, the Amazon SNS topic for the Auto Scaling group is subscribed to an Amazon SQS queue.
Amazon SNS is not used with AWS Batch clusters.
For more information about Amazon SNS, see https://aws.amazon.com/sns/
Amazon Simple Queue Service
Note
This section only applies to AWS ParallelCluster versions up to and including version 2.11.4. Starting with version 2.11.5, AWS ParallelCluster doesn't support the use of Amazon Simple Queue Service.
Amazon Simple Queue Service (Amazon SQS) holds notification sent from Auto Scaling, notifications sent through Amazon SNS, and notifications sent from the compute nodes. Amazon SQS decouples the sending of notifications from the receiving of notifications. This allows the head node to handle notifications through a polling process. In this process, the head node runs Amazon SQSwatcher and polls the queue. Auto Scaling and the compute nodes post messages to the queue.
Amazon SQS is not used with AWS Batch clusters.
For more information about Amazon SQS, see https://aws.amazon.com/sqs/
Amazon Simple Storage Service
Amazon Simple Storage Service (Amazon S3) stores AWS ParallelCluster templates located in each AWS Region. AWS ParallelCluster can be configured to allow CLI/SDK tools to use Amazon S3.
When you use AWS Batch cluster, an Amazon S3 bucket in your account is used for storing related data. For example, the bucket stores artifacts created when a Docker image and scripts are created from submitted jobs.
For more information, see https://aws.amazon.com/s3/
Amazon VPC
Amazon VPC defines a network used by the nodes in your cluster. The VPC settings for the cluster are defined in the [vpc] section.
For more information about Amazon VPC, see https://aws.amazon.com/vpc/