I created my conceptual diagram on lucid chart. It was my first time to use lucid chart so I watched a tutorial on youtube which helped me to use it properly.
Conceptual Diagram In Lucid Chart Preview below
Logical Architectual Diagram Preview below
While creating the admin user, I created a User Group
with the AdministratorAccess
permission and added the user to it.
With the user group I can easily manage all users with administrative permission.
I added MFA
to the admin user for extra security layer to the user.
The AWS CloudShell is a web based and pre-authenticated shell for utilizing AWS resources via the command line. I ran commands on the Cloudshell to examine their output. Some these commands are:
aws
aws help
aws sts get-caller-identity
aws account get-contact-information
I created access key and secret for my admin user to provide programmatic access to my aws resources. Then I configured my aws credentials using to methods
- used
aws configure
- set env var using
export
I installed AWS CLI manually on my gitpod after which I added the installation script to my gitpod config file to automatically install it every time I start a new gitpod instance.
Here is the installation command for Linus machines
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
I updated my gitpod.yml
file with the script below to automate the installation
tasks:
- name: aws-cli
env:
AWS_CLI_AUTO_PROMPT: on-partial
init: |
cd /workspace
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
cd $THEIA_WORKSPACE_ROOT
I created a billing alarm via the AWS managment console and AWS CLI. After which I deleted one since they do exactly the same thing.
I also created budget via the AWS managment console and AWS CLI. After which I delete to prevent unexpected charges since the maximum of budget to have on the aws free tier account is two.
- To destroy or stop using my root account credentials I created an Admin user with with the
AdministratorAccess
permission - I set up MFA on my root account and Admin user account to add an extra security layer during login.
- I created an IAM role for which I name
S3_Lambda
which will allows Lambda functions to call AWS services on your behalf.
2. Use EventBridge to hookup Health Dashboard to SNS and send notification when there is a service health issue
- I started by creating an SNS topic
health-issue
- Then I followed the guide in this AWS tutorial to create create the EventBridge Rule to hookup Health Dashboard.
4. Create an architectural diagram (to the best of your ability) the CI/CD logical pipeline in Lucid Charts
5. Research the technical and service limits of specific services and how they could impact the technical path for technical flexibility.
I started out following the videos by Shala Warner (@giftedLane) to create free accounts on tools and application required for the bootcamp.
Here is a list of the accounts created
-
Amazon Web Services: Amazon Web Services(AWS) is a cloud based service that provides on demand cloud computing and APIs to individuals, companies and government
-
Github: Github is an internet hosting service for software development and version control using git.
-
Gitpod: Gitpod is an open source developer platform automating the provisioning of ready-to-code developer environments
-
LucidChart: Lucidchart is used to sketch and share professional flowchart diagrams and architecture.
-
Honeycomb: Honeycomb helps you observer and analyze application to discover issues.
-
Rollbar: Rollbar can help you discover and fix errors faster across your development pipeline by uncovering and resolving them in real-time, before users complain.