AWS Scalability: An In-depth Look

AWS campaign graphic doc_ 3 featured

Nowadays, companies cannot survive without the advanced, networked systems that propel their operations. They face incredible competitive and financial pressures, and IT executives are required consistently to do more, do it better, do it faster, and do it with less! They need enough “horsepower” to handle the peaks and valleys of their business, they have to be able to provision new systems and capacity at the “flick of a switch,” and they must ensure that their systems are secure and have redundancy built-in to prevent major outages.

Enter Amazon Web Service Elastic Compute Cloud (AWS EC2).
Amazon Web Service Elastic Compute Cloud (AWS EC2) is an ideal alternative for IT executives looking for affordable, reliable ways to set up new systems and network capacity — on a long- or short-term basis. The practicality and economics of AWS EC2 are derived from the scale and reliability of Amazon’s enormous web computing infrastructure.

Customers can pick and choose AWS EC2 provided building blocks to match their application needs. And they only pay for what they use, when they use it. They no longer need to keep expensive network and data center hardware on standby in anticipation of business peaks, such as Black Friday or Cyber Monday. Now, they can just bring up the capacity in Amazon’s Cloud and “power it down” once the peak has passed. The scaling of capacity can be done automatically in minutes, rather than the days or weeks needed if you had to provision your own systems.

Elastic Computing Building Blocks
The basis for Elastic Computing is Virtual Server Hosting, where you can configure your choice of operating environment to be hosted in the Amazon Cloud. Multiple options are available, based on type of OS, memory size, CPU type and capability, storage type and size, etc.

Amazon makes things simple — at least to some extent by defining pre-configured “Amazon Machine Instances” (AMI). AMIs are defined for certain sizes and types of applications and you can use AMI building blocks together to meet your need. For example, you could choose web-server, app-server, and database server AMIs for an e-commerce application. You can select these AMIs from the Amazon Marketplace, which features hundreds of choices. You can choose AMIs for app development, app servers and stacks, big data and databases, networking, operating systems and security.

You then can further select by type and version of OS (Windows, Linux/Unix), by pricing plan (hourly, annual, “bring your own license”), by availability zone (where you want it to run, i.e., Europe, US-East, or West), by CPU architecture (32- or 64-bit), and by type of CPU instance (Micro, General Purpose, Memory Optimized, Storage Optimized, Compute Optimized, and GPU). In each CPU instance, there are variants governing how much compute power, memory, and storage you get. The one you choose depends on what your app needs. Let’s say that you have an engineering application, then you might go for the GPU g2.2xlarge option, which delivers the equivalent of 26 elastic compute units, and has 15 GB of memory and 60 GB of solid state storage. The elastic compute unit is a measure of CPU power that was created by Amazon.

Your Choice of Storage
You have two basic choices of storage with AWS EC2: Amazon Simple Storage Service (S3) and Amazon Elastic Block Store (EBS). S3 is used for flat file structures, whereas EBS is block level storage that, like a regular disk drive needs to be formatted and mounted. EBS supports advanced storage features such as snapshotting and cloning and is built on replicated storage for resilience. Usage of both storage types is scalable — up and down within minutes! And yes, you pay only for what you use.

Neat EC2 Things
Let’s take a quick look at some of the neat techie things that you get with EC2.

  • Multiple Locations for Resilience. You can place your EC2 instances in any Amazon region and availability zone to help ensure availability and protection from failure. AWS has geographically dispersed locations in the US (east and west coast) and in Europe. Amazon’s service level agreement commitment is 99.95% availability for each Amazon EC2 region.
  • SecurityYour resources in the AWS cloud are protected with the security and networking functionality of Amazon’s Virtual Private Cloud (VPC). You can control which instances are private and which are exposed to the Internet and to whom with IP ranges and access control lists. You also can connect to your own IT infrastructure using industry-standard encrypted connections.
  • Elastic Load Balancing. You can achieve higher levels of application performance and fault tolerance by deploying multiple instances across EC2 availability zones and then using Elastic Load Balancing to automatically distribute incoming application traffic across the multiple instances. Elastic Load Balancing can detect issues with a particular instance and automatically reroute traffic to other instances until the issues have been resolved and the original instance restored.
  • Auto Scaling. You can ratchet your Amazon EC2 capacity up or down automatically, based on conditions you define. This means you can ensure that you can maintain performance during spikes in demand and also scale down to save money when there are lulls in demand. Auto scaling and elastic load balancing can both be triggered through the Amazon CloudWatch monitoring system. CloudWatch allows you to monitor what you’re running in Amazon’s cloud — collecting and tracking metrics, monitoring log files, setting and displaying alarms, and triggering actions like auto scaling and elastic load balancing.

… And Lots of Other Stuff
Amazon EC2 plugs and plays with other Amazon Cloud services, such as Amazon Simple Storage Service (Amazon S3), Amazon Relational Database Service (Amazon RDS), and Amazon SimpleDB. There are also numerous Amazon web services that can be used with EC2, including queuing (SQS), identity and access management (IAM), domain name system (Route 53), notification services (SNS), email (SES), payment systems (FPS), and many more.

AWS Certification
Are you getting the idea that there may be challenges involved in configuring and running on the Elastic Computing Cloud? Well, with the dominance of cloud technologies, the need for IT professionals with the skills and expertise to deploy, manage, and operate AWS has skyrocketed, and Amazon has created a set of AWS certifications. Who knows? AWS certification may soon become as valuable as Cisco’s.

As you’d expect, CBT Nuggets was ahead of the pack when it came to AWS certification training. Check out our Roadmap to Success: AWS SysOps Admin, which describes how the AWS SysOps Administrator role fits into AWS certification. And check out the interview with Jeremy Cioara on his course AWS: Certified SysOps Administrator—Associate Level — interesting and engaging stuff, as always with Jeremy.

We currently have a number of video training courses that will prepare you for AWS certifications, starting with:

Completion of the AWS Essentials course, or significant hands-on experience with a variety of AWS services, is a recommended prerequisite to the Certified Solutions Architect and Certified SysOps Administrator courses.