How Do You Create an IAM User Account in AWS to Run AWS CLI Commands and Log into the AWS Web UI to Manage EKS?

Problem scenario
You want to use Amazon EKS.  You tried to run an “aws eks” command but got an error about the root user not being allowed to perform the operation.  How do you create an IAM user account in AWS to run AWS CLI commands for EKS and log into the AWS web UI and view EKS clusters?

Solution
Prerequisite

This assumes you have a group that has the correct policies to enable EKS manipulation. 

How Do You Create a Group for AWS Users That Can Manage a Kubernetes Cluster Running in AWS?

Problem scenario
You use EKS to create a Kubernetes cluster.  How do you create a group for AWS user accounts to enable them to manage Kubernetes clusters in AWS?

Solution
1.  Log into the AWS web console.
2.  Go here: https://console.aws.amazon.com/iam/home?
3.  Go to Groups on the left.
4.  Click the “Create New Group” button.
5.  Enter a name (e.g., coolgroup).
6. 

How Do You Create an IAM User Account in AWS to Run AWS CLI Commands and Log into the AWS Web UI?

Problem scenario
How do you create an AWS user that can run AWS CLI commands and log into the AWS web console?

Solution
1.  Log into the AWS web console.
2.  Go here: https://console.aws.amazon.com/iam/home?
3.  Go to Users on the left.
4.  Click the “Add User” button.
5.  Enter a name (e.g., jdoe).  
6.  Check the boxes for both “Programmatic access” and “AWS Management Console access”.

How Do You Create an Amazon Resource Name Role in AWS?

Problem scenario
You want to create an ARN Role in AWS.  What do you do?

Solution
1.  Log into the AWS web console and go here:  https://console.aws.amazon.com/iam/home?#/roles
2.  Click “Create role” (a blue button).  
3.  The type of trusted entity (at the top) should be “AWS Service” (a button like option near the top).  
4.  Click the hyperlink that you desire.  (For a role to that will create Kubernetes clusters,

How Do You Run Docker commands without sudo?

Problem scenario
For security reasons, you do not want to have to use “sudo” to elevate your privileges when you run docker commands.  What should you do?

Solution
1.  Run these commands as the user that will be able to run docker commands:
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker

2.  Install Docker.  See this posting if you need directions.

How Do You Deploy a Kubernetes Cluster into AWS with a RHEL Server?

Problem scenario
You want to create a Kubernetes cluster in AWS via a RHEL server.  What should you do?

Solution
This will deploy additional resources in your AWS account (not on to the RHEL server). It will cost money to follow these directions.

Prerequisites

i.  Install and configure the AWS CLI (or awscli). If you need help, see this posting.

What Is The Difference between AWS CodeDeploy and AWS CodeCommit?

Question
AWS has PaaS services called CodeDeploy and CodeCommit.  What are the differences between these?

Answer
“AWS CodeDeploy is a fully managed deployment service that automates software deployments to a variety of compute services such as Amazon EC2, AWS Fargate, AWS Lambda, and your on-premises servers.”  (Taken from https://aws.amazon.com/codedeploy/.)

“AWS CodeCommit is a fully-managed source control service that hosts secure Git-based repositiories.” 

What Is The Difference between AWS CodeBuild and AWS CodeCommit?

Question
AWS has PaaS services called CodeBuild and CodeCommit.  What are the differences between these?

Answer
“AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy.”  (Taken from https://aws.amazon.com/codebuild/.)

“AWS CodeCommit is a fully-managed source control service that hosts secure Git-based repositiories.”  (Taken from https://aws.amazon.com/codecommit/.)

AWS CodeCommit is a PaaS repository of code. 

What Is The Difference between AWS CodeBuild and AWS CodeDeploy?

Question
AWS has PaaS services called CodeBuild and CodeDeploy.  What are the differences between these?

Answer
“AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy.”  (Taken from https://aws.amazon.com/codebuild/.)

“AWS CodeDeploy is a fully managed deployment service that automates software deployments to a variety of compute services such as Amazon EC2,