
This video will give you an overview about the course.
How to use S3 to host websites that do not need server-side processing. S3 would save costs compared to doing the same thing on an EC2 instance.
• You need to create a bucket and set its permissions
• Start uploading your website files to the bucket
• Verify that the website is working by visiting the endpoint
The endpoint provided by the S3 bucket web-hosting service is anything but user-friendly. We need to use our own domain name to access our website.
• Register a new domain at Amazon or use your preferred registrar
• Migrate your domain records to Route 53
• Visit the website using the domain name that you specified
Speed up content delivery by using multiple “edge” locations around the world. The user should be served from the best location in terms of network speed.
• Create a new CloudFront distribution and associate it with the S3 bucket
• Connect the distribution with your Route 53 zone record.
• Navigate to the website to ensure that content is delivered correctly
Shows how we can use Elastic Beanstalk to build an environment that would host a WordPress installation.
• Create a new RDS instance and configure the necessary security group
• Create a new EB environment and explore the different options
• Select PHP as the runtime language and prepare for uploading the package
Configure WordPress to be uploaded and installed on EB environment that we created earlier.
• Download WordPress standard installation package in zip format
• Unzip the package locally, re-zip it to ensure that all the files are in the root of the package
• Upload the new zipped package to EB and start installing WP using the wizard
Associate a custom domain name with your WP installation.
• Create a new zone on Route 53 and add the necessary record set
• Navigate to your DNS manager and create NS records that point to Route 53
• Wait for a few seconds then visit your WordPress site using the custom domain name
Create a Flask application locally and ensure that it works correctly.
• Install Flask using pip and install awsebcli
• Write the application code
• Launch the application and ensure that it is working as expected
Prepare the necessary files to be deployed on EB.
• Use pip in the virtual environment to create requiremnets.txt file
• Create a new environment using awsebcli and configure the settings
• Use awsebcli to deploy the code to EB
Create a new environment on EB and deploy the sample code.
• Login to EB
• Create a new environment using sample code option
• Ensure that the application is working by visiting the URL
Download the sample NodeJS application provided by AWS and deploy it on the environment. Modify the app to communicate with DynamoDB.
• Download the application from https://github.com/awslabs/eb-node-express-sample/releases/download/v1.1/eb-node-express-sample-v1.1.zip
• Deploy the zipped package to EB
• Ensure that the app is working and communicating with DynamoDB
Create a simple Asp.net web application and test it locally.
• Open Visual Studio 2017 and create a new Asp.net core API application
• Run the code locally and ensure that the endpoints are working
• Try to publish the application and notice the available options provided by Visual Studio by default
Download and install the AWS Toolkit for Visual Studio and use it to publish the application.
• Install AWS Toolkit plugin and restart Visual Studio IDE
• Configure the necessary plugin options like AWS credentials and region
• From the publish icon, deploy the application to EB and test the endpoints
Avail the necessary prerequisites for creating AWS directory service to be later used with the workspace that we will create.
• Create an elastic IP
• Create a VPC using the wizard. It should contain one public and one private subnet
• Create a third subnet manually and ensure that the necessary routes have been created
Create a new directory service using the Microsoft managed option.
• Create a directory service and choose “Standard Edition”
• Select the VPC and subnets created in the previous video
• Setup an administrator password that complies to the password strength policy
Add the first user to the directory service, create a workspace, and connect it to the directory service already created.
• Add a new user to the directory service
• Create a workspace, ensure that it is set to “Auto stop”. Choose the standard Windows 10 option for the desktop type
• Choose the directory that was already created before to be associated with the workspace
Learn the difference and the impact of rebooting and rebuilding a workspace.
• Reboot the workspace and ensure that all your settings are intact
• Install an application and add a file and rebuild the image
• Notice how the application and the created file are no longer available after rebooting the workspace
Learn how to create a custom image and a bundle to be used as a template for deploying new workspaces. Ensure that the new workspace contains all the application and files of the original one.
• Install a new application to the workspace
• Create a new image from the existing workspace
• Use the image to create a bundle and use that to provision a new workspace
Explain how you can create a CodePipeline and the different components that it can interact with.
• Login to CodePipeline service
• Create a CodePipeline
• Demonstrate the different options in the wizard
Create a repository in CodeCommit and add application files.
• Create a new repository in CodeCommit
• Generate access keys for the user
• Push sample app files to the repository
Create an EC2 instance and a CodeDeploy service to be used in the CodePipeline stages.
• Create a new EC2 instance and make the necessary configurations
• Create the necessary IAM role for CodeDeploy
• Create deployment group and application. Test the CD pipeline
Learn how we can use AWS CodeCommit to create a private Git repository and configure the required access.
• Login to CodeCommit service
• Create the repo, give it a descriptive name
• Create the required https credentials
Download your existing code repository to the local machine and push it to the new repository on AWS CodeCommit.
• Pull/Clone the repository
• Change the repository to point to the new AWS service
• Push the application code files to the new repository.
Create an EC2 instance and configure the necessary settings for hosting a Jenkins server.
• Create an EC2 instance
• Configure the necessary security group rules and SSH key pair
• Launch the instance and ensure that you can login using your private key
Download the Jenkins repository package and install the software.
• Download the package file
• Install Jenkins
• Login to the welcome page and enter the default password
Install and configure the AWS EC2 plugin to enable Jenkins to spawn EC2 build servers.
• Download the AWS EC2 plugin
• Configure the plugin
• Ensure that the nodes section can launch EC2 build servers
Create or transfer a domain to be managed by Route S3.
• Create a new hosted zone on Route S3
• Create a record set on the hosted zone
• Create NS records on the domain manager with the new records
Create a new rule set on SES and configure it to store emails on S3.
• Create a new rule set
• Configure the target action to store the records on S3
• Send a test email and ensure that you have an object created on the S3 bucket
Create an EC2 instance keypair that will be required later when we create our CloudFormation stack.
• Login to EC2 console
• Create a keypair with a descriptive name
• Download the key and change its permissions to 400
Use a CloudFormation template that can be downloaded from https://github.com/aws-samples/aws-sns-samples to build the stack.
• Download the CloudFormation template and have a quick view
• Login to CloudFormation and upload the template file
• View the resources that were automatically created for us
Ensure that the instance does not have Internet connectivity. Create an Amazon VPC endpoint to SNS.
• Login to the EC2 instance and try to access the Internet. Ensure that you can’t
• Create a VPC endpoint, link it with the VPC, and choose SNS as the target service
• Wait till the endpoint is in the available state.
Login to the EC2 instance, ensure that you can publish messages to SNS, and view the results in CloudWatch logs.
• Login to EC2 instance
• Try to send a message to SNS
• Ensure that the message was published and view the results in CloudWatch logs
Do you need to set up an AWS infrastructure quickly but don’t have the time and energy to sift through tons of boring documentation? AWS is a powerful platform that can handle any load you can throw at it. But, with great power comes great responsibility. The last thing you want is to fully deploy an application only to find out you did it wrong.
This course will teach you to effectively deploy AWS resources like a true pro in a matter of minutes. You will learn the concepts behind architecting systems in the cloud and how to engineer your environment to withstand failures. Take a deep breath and follow these easy deployment scenarios featuring real-world examples of everything from websites to Machine Learning and beyond.
This course will catapult you from a young grasshopper, wet-behind-the-ears, into a true AWS Jedi master in just a few hours. Why wait? Take this course and learn how to wield the power of AWS today!.
About The Author
TechSnips is an IT career development platform that provides free learning content to people in information technology (IT). We provide screencasts or snips on a range of technology-related topics like cloud computing, programming, system administration and a whole lot more.
All of the content we publish is built by IT professionals, system administrators, DevOps engineers, software developers…you name it! All content is created by people in the trenches performing this work day in and day out. We have no “professional” trainers here. Our experts are hand-picked, coached and mentored along the way resulting in high-quality learning content.
We like to call ourselves an IT career development platform more than an e-learning platform because our service provides career development benefits to both contributors (the ones creating the content) and to subscribers (the ones consuming the content). We help people on both sides of the coin become better in their careers.
Ahmed El-Fakharany is a senior Cloud and DevOps engineer. He’s worked with Linux and open-source technologies since 2011. Having held various job titles both in the enterprise world as well as in small and medium-sized startups, Ahmed has experienced the whole lifecycle of software creation and maintenance start to finish.
He has also taught many students various DevOps tools like Docker, Ansible, Chef, Vagrant, Jenkins, as well as AWS cloud technologies like EC2, S3, Beanstalk, and Lambda functions. Ahmed is a certified AWS Solution Architect Associate.