AWS Systems Manager
Systems Manager Services (available through the AWS console) is a collection of tools for monitoring and managing the resources you have running in the AWS cloud and in your own on-premises infrastructure.
Through the Systems Manager portal, you can organize your AWS resources into resource groups, mine various visualization tools for insights into the health and behavior of your operations, directly execute commands or launch tasks remotely without having to log on, automate patching and other lifecycle events, and manage service parameters and access secrets.
Read more: AWS system’s Manager
Placement groups are useful for multiple EC2 instances that require especially low-latency network interconnectivity. There are two placement group strategies.
- Cluster groups launch each associated instance within a single availability zone within close physical proximity to each other.
- Spread groups separate instances physically across hardware to reduce the risk of failure-related data or service loss.
AWS Elastic Beanstalk
Elastic Beanstalk lets you upload your application code and define a few parameters, and AWS will configure, launch, and maintain all the infrastructure necessary to keep it running. That might include EC2 load-balanced and autoscaled instances, RDS database instances, and all the network plumbing you would otherwise have had to build yourself.
Compatible languages and platforms include .NET, Java, Node.js, Python, and Docker. Elastic Beanstalk adds no charges beyond the cost of the running infrastructure itself.
Amazon Elastic Container Service and AWS Fargate
Running Docker container-based applications at scale is the kind of thing that’s a natural fit for a cloud platform like AWS. Once upon a time, if you wanted to get that done, you’d have to fire up one or more robust EC2 instances and then manually provision them as your Docker hosts.
With Amazon Elastic Container Service (ECS), however, AWS lets you launch a prebuilt Docker host instance and define the way you want your Docker containers to behave (called a task), and ECS will make it all happen. The containers will exist within an infrastructure that’s automated and fully integrated with your AWS resources.
The more recently released Fargate tool further abstracts the ECS configuration process, removing the need for you to run and configure instances for your containers. With Fargate, all you do is package your application and set your environment requirements.
“Serverless” applications are powered by programming code that’s run on servers—just not servers under the control of the application owners. Instead, code can be configured to run when AWS’s Lambda servers are triggered by present events.
Lambda allows you to instantly perform almost any operation on demand at almost any time but without having to provision and pay for always-on servers.
- VM Import/Export allows you to easily move virtual machine images back and forth between your on-premises VMware environment and your AWS account (via an S3 bucket).
- This can make it much simpler to manage hybrid environments and efficiently migrate workloads up to the AWS cloud.
Elastic Load Balancing and Auto Scaling
A load balancer directs external user requests between multiple EC2 instances to more efficiently distribute server resources and improve user experience.
Autoscaling will react to preset performance thresholds by automatically increasing or decreasing the number of EC2 instances you have running to match demand.
Both Elastic Load Balancing (ELB) and Auto Scaling can be closely integrated with your EC2 infrastructure, making for simple and seamless operation.