Container on AWS: Quick and Dirty

Ever since 2010 a company known as Docker helped lift cloud containerization. This new way of architecting paved the way for the DevOps movement. What makes containers so popular? Thanks to the massive improvements to virtualization and the rapid increase of cloud computing, allowed for containers that isolate a workload based on an OS, exposing and accessing only what is necessary.

 

Within just a few years, Amazon Elastic Container Service (ECS) was first introduced November 13, 2014, and was the primary way to run containers in the public cloud. ECS is a container management service that allows you to run Docker containers on a cluster.

Then Google released Kubernetes in June 2014, which was later released to Cloud Native Computing Foundation (CNCF) community the following year. Google Cloud Provider and Microsoft Azure where early adopters to Kubernetes, but with GCP being the only public cloud provider to have a working service called Google Kubernetes Engine (GKE). GKE was launched in 2015 and Azure Kubernetes Service (AKS) being released in the Fall of 2017 into the preview.

Amazon Elastic Container Service for Kubernetes (EKS) is a fully managed service that makes it easy for you to use kubernetes on EKS is running upstream Kubernetes so you can connect to it with kubectl just like a self-managed Kubernetes. AWS Introduced EKS at re:Invent 2017. AWS claims to upstream Kubernetes by using countless AWS growing services.

AWS has a hidden service that GCP nor Azure have. AWS Fargate is a new service for running containers without needing to manage the underlying infrastructure. Fargate supports ECS and EKS, but is also, often closely compared with Lambda. You pay per computing second used without having to worry about the EC2 instances.

Managing Kubernetes can be complicated and usually requires a deep understanding of how to schedule, manage your masters, pods, services, and managing additional orchestration of architecture on top of the virtualization that was already abstracted from you.

Fargate takes all of this away by streamline deployments. The game-changer is that you do not need to start with Fargate, but that you can use EKS or ECS then migrate your workloads to Fargate when your program has matured more.

KOPS was the go-to method of deploying Kubernetes on ECS via EC2 instances or on an EC2 instance. KOPS is an open sourced project that makes running kubernetes easy. KOPS is built using EC2 instance. KOPS provides multitudes of controls on deployments and good support for high availability.

Summary

Containers are not just a hype, but the could be the future for at least the next few years. With AWS finally joining the Kubernetes club, and Fargate being a game-changer anything is possible. But there is is still a lot of unanswered questions that we hope will be addressed.

EKS and Fargate are currently limited in Ohio and Virginia regions, but you should see a big push to use these services as more regions get rolled out.

What do we do in the meantime? It reminds me of a quote:

“All we have to decide is what to do with the time that is given us.”
– Gandalf

Until then, KOPS will be the best method to use.

What containers do you use on aws and are you waiting to explore with AWS EKS or Fargate?

My journey to becoming AWS Certified

Getting AWS Certified is only half the battle. A certification is much more than a piece of paper – it is used as an assurance to showcase that you have the basic understanding of the product that you’re looking to be certified in. Each certification uses strict requirements and procedures.

Understanding the organizational challenges

Everything starts with you and ends with you, but of course, having an organization that values training and improving employees is a big plus. Organizations are constantly weighing in options for transitioning into the cloud. Everyone has heard about the vast number of enablers like faster time-to-market, infrastructure as code, DevOps, automation, a fresh start, and most of all, the growing cloud services.

Organisations have been overworking IT employees for a long time and now they want them to be trained in a new mindset. This is easier said than done because humans usually resist change, but in fact, the organization already has these invaluable resources. This knowledge usually consists of networking, operating systems, database, managed services, and so much more.

The issue now is that some organization’s executives do not have the understanding of the key services provided by the different cloud platforms. So they push the employees to get this training, but do not provide any incentives.

Employees who are willing to continuously self-develop and improve themselves are becoming very valuable in the market. This increases the competition in the growing market. Every day certified employees are being contacted by HR or Headhunters who are also offering a 10% raise. Money is a big enabler for a lot of employees, but so is dedication and respect of a current organization.

Most people are juggling life and work responsibilities, but some still have the motivation to add another commitment to their already hectic schedules, especially the ones that are taking technical courses to gain proficiency.

Offering competitive wages and keeping those wages fair amongst current and future employees should be something that the organization automatically does, but since this is usually not the case providing incentives can be the motivation that keeps that employee committed to their current organization. This can be anything from a pay raise, one-time bonus, stocks, donation to a charity of choice to something as simple as giving flexible work hours during the study period.

 

How to become an AWS Partner


It is not just for you to show growth in the industry, but your organization also needs it to become an APN Partner. Currently, there are three performance tiers (Standard, Advanced, Premier) based on training, customer engagements, and overall business investment. Getting certified helps your organization look more mature compared to other competitors

At re:Invent 2014, they announced a change to the APN Partners requirements for 2015. This was to showcase that AWS is helping customers identify successful APN Partners. One way was by increasing the certifications needed to achieve the different tiers. The Premier Tier was “8 Associate Levels” and “4 Professional Levels” certifications needed. Below is the current 2016 requirements.

As you can see from the 2016 APN Partner requirements that Associate Level has increased by 250% and Professional Level by 200%.

AWS Certification Roadmap:

There is a lot of material available to help you prepare for an AWS certificate, but the internet is also full of older material that can lead you down the wrong rabbit hole. The first place to start is by looking at the AWS Certification Roadmap:

*Note that you have to take an associate certification before you can take a professional cert.

AWS Certified Solutions Architect – Associate is broken up into 5 domains.

Each domain will challenge your understanding of AWS Services, AWS Best Practices, and most of all the Well-Architected Framework.

AWS recommends a three-day training course titled “Architecting on AWS” and a 4-hour “AWS Certification Exam Readiness Workshop”. Before taking the certification exam I recently joined a Nordcloud “Architecting on AWS” Training course and was able to use it as a refresher course. Architecting on AWS is a course designed to teach solution architects how to optimize and get a deeper understanding of AWS Services and to showcase how the numerous services fit into Architecting on AWS.

The key focus for the Solution Architect – Associate is High-Availability, In/outs of VPC, EC2, RDS, and the plentiful storage solutions

 

My journey to becoming AWS Certified:

I am going to share with you how I prepared for the certification because I believe it’s best to hear from the source. When I was new to AWS, I started by taking the AWS Accreditation courses: “AWS TCO and Cloud Economics” and “AWS Technical Professional” AWS Accreditations are only provided to APN Partners. It took me just under one week to get accredited following the curriculum during my spare time.  

As I started to prepare for the Architect exam, another exam called “Cloud Practitioner” came out and I wanted to make sure that I knew the basics of AWS and had a good feeling on how to take the exam. I changed gears and took some AWS training courses that focussed on “Cloud Practitioner” exam. This took me about 3 weeks.

My Cloud Practitioner Training Path:

AWS Free Training Path:

AWS Cloud Practitioner Essentials

AWS Solutions Training for Partners – Best Practices: Well-Architected

AWS Well-Architected Training

Nordcloud Training

AWS Technical Essentials Day

I picked a date and signed up for the exam. I also knew that I was going to take the Architect exam about 1 month later so I already registered for this as well because I didn’t want to wait until I felt like I could take the test. Nobody is ready to take a test because we always have this fear of failing.

Note: If you do not hold a passport from a Native Speaking Country you are able to request up to an additional 30 minutes.


Non-English Speaker Steps:

To request a 30-minute extension for your exam, please log into your AWS Certification Account (not the PSI account) and take the following steps:

  1. From the top navigation, click Upcoming Exams
  2. On the right, click the Request Exam Accommodations button
  3. Click the Request Accommodation button
  4. Select ESL +30 Minutes from the accommodation dropdown
  5. Click Create

Now when you go to schedule your exam the time will be 30 minutes longer than normal. Note that you MUST request the accommodation BEFORE you schedule the exam.


My Solution Architect: Associate Training Path:

AWS Free Training Path:

AWS Security Fundamentals

Preview Course: Deep Dive into Amazon Elastic Block Store (EBS)

Preview Course: Deep Dive into Elastic File System (EFS)

Whitepapers

Nordcloud Training:

Security Operations on AWS

Architecting on AWS

QwikLabs

Introduction to AWS Identity and Access Management (IAM)

Introduction to Amazon Virtual Private Cloud (VPC)

Introduction to AWS Lambda

Introduction to Amazon DynamoDB

Introduction to Amazon Route 53

Challenge Lab

Maintaining High Availability with Auto Scaling (for Linux)

Working with Amazon Elastic Block Store (EBS)

 

Days leading up to the Exam

My mindset ever since my first test/exams in grade school has always been understanding things and not just memorizing them. The same goes for AWS exams because I really want to understand how each service works and all each feature helps to enhance the key services.

Does this hurt me on exams? Of course, it does, because I can’t remember the exact IOPS or throughput of the various EBS Volume Types. I do know that HDD EBS Volumes are mainly used Big Data or log processing. I know that Provisioned IOPS SSD allows for more than 10,000 IOPS and are mainly used for large databases.

Spot Instances cost more than a regular EC2 instance, but I do not know by how much. I do know it depends on the region and that they are primarily used for a short burst of intensive jobs in CI/CD pipelines or batch processing jobs.

EXAM DAY!

It was finally the exam day and boy was I nervous. I didn’t want to let the organization down nor be a failure. I arrived at the testing center about 20 minutes before and had a coffee to try to calm my nerves down.

Exam Tips!

Sometimes I didn’t understand what the question was trying to ask. I just moved on and came back to it at the end of the exam. AWS Exams allow you to mark the questions so you are able to identify the ones you skipped or needed more in-depth thinking on.

Scenario-based questions are time to consume, but what I did was skip them until later. I understand this could be risky if I didn’t finish the exam on time, but spending a long time on understanding the harder question could make me miss out on easier ones later.

 

Exam Results:

 

When I finished the Solution Architect: Associate and Practitioner Exam the results came about 2 days later. PASSED