AWS Certification Training
- 183k Enrolled Learners
- Weekend/Weekday
- Live Class
Amazon Web Services (AWS) is the most complete and widely used cloud platform in the world. It provides over 200 fully functional services from data centers worldwide. Millions of clients, including the largest corporations, most successful governmental organizations, and fastest-growing startups, use AWS to save costs, increase agility, and accelerate innovation.
Amazon Web Services(AWS) is a cloud service from Amazon that provides services in the form of building blocks. These building blocks can be used to create and deploy any application in the cloud.
These services or building blocks are designed to work together and result in sophisticated and highly scalable applications.
AWS was launched in 2006 with the release of Amazon S3 (Simple Storage Service), which truly changed the game for how businesses handle scalable storage. This marked the beginning of AWS’s journey to provide cloud solutions that are both affordable and accessible to companies of every size.
With the introduction of Amazon EC2 (Elastic Compute Cloud), users gained the ability to rent virtual servers, which significantly lowered the costs associated with setting up hardware infrastructure. As the platform grew, innovative services like AWS Lambda brought serverless computing into the limelight, empowering developers to execute code without the hassle of server management.
Over the years, AWS has joyfully expanded its array of services, introducing helpful tools like Elastic Beanstalk for effortless app deployment and a wide range of machine learning services to cater to the increasing needs of businesses around the globe. Today, AWS stands as a cloud powerhouse, offering hundreds of services designed to support companies in every industry.
AWS, with its vast array of services, is utilized by individuals and businesses across diverse industries for a multitude of purposes. Fundamentally, AWS provides the infrastructure and tools to effectively host applications, securely store data, and leverage a wide variety of services that enhance the flexibility and management of IT resources.
By offering these core components on a pay-as-you-go model, AWS makes it easy to build, deploy, and scale any application or IT solution without managing physical hardware.
Amazon Web Services (AWS) delivers cloud services through a robust global infrastructure. Here’s how it works:
AWS has a wonderful network of data centers spread across various regions around the world. Each region is thoughtfully designed with multiple Availability Zones (AZs) to provide excellent redundancy, low latency, and high availability.
This global setup serves as the backbone of AWS, providing essential support for all its cloud services, including computing, storage, networking, and databases.
You can create your very own Virtual Private Clouds (VPCs), which are secure, isolated networks within AWS that are just for you! This gives you the ability to manage IP ranges, subnets, and access controls for your cloud resources, making it a perfect fit for your needs.
AWS supports automatic scaling of applications using:
The AWS Management Console provides a user-friendly web interface for:
The architecture of AWS is crafted to:
This robust global infrastructure and suite of services enable AWS to provide highly reliable, scalable, and secure cloud computing solutions.
As you embark on your AWS journey, grasping essential concepts like Regions, Availability Zones, and Global Network Infrastructure is really important. These AWS fundamentals help ensure your applications remain reliable and scalable, providing services worldwide while strategically deploying resources for the best performance and resilience. Here are some key fundamentals of AWS to keep in mind:
These foundational concepts are key to building highly reliable, scalable, and globally accessible applications on the AWS platform.
Each type of service is categorized under a domain; the few domains which are widely used are:
The Compute domain includes services related to compute workloads, it consists of the following services:
The Storage domain includes services related data storage, it includes the following services:
The Database domain is used for database-related workloads, and it includes the following services:
The Migration domain is used for transferring data to or from the AWS Infrastructure, it includes the following services:
The Networking and Content Delivery domain is used to isolate your network infrastructure, and content delivery is used to deliver content faster. It includes the following services:
The Management Tools domain consists of services that are used to manage other services in AWS, it includes the following services:
The Security & Identity Compliance domain consists of services which are used to manage to authenticate and provide security to your AWS resources. It consists of the following services:
The Messaging domain consists of services that are used for queuing, notifying, or emailing messages. It consists of the following domains:
In the exciting world of Cloud Computing, AWS offers an amazing variety of services tailored to meet diverse fields and needs. Here are some of the most popular AWS services that many people are using today:
From compute and storage to serverless functions and networking, these top AWS services empower users to build scalable, reliable, and innovative cloud solutions.
1. Easy to use
AWS is made to enable suppliers, ISVs, and application providers to swiftly and securely host your apps, whether they are SaaS-based or not. To access AWS’s application hosting platform, use the AWS Management Console or well-documented web services APIs.
2. Flexible
You can choose the web application platform, programming language, operating system, database, and other services you require with AWS. You get a virtual environment through AWS that you may fill with the programs and services your application needs. As a result, existing applications can be more easily migrated while still having alternatives for developing new solutions.
3. Cost-Effective
There are no long-term contracts or upfront payments; you simply pay for the computing power, storage, and other resources that you really utilize. Visit the AWS Economics Center for further details on comparing the expenses of other hosting options with those of AWS.
You can benefit from a scalable, reliable, and secure global computing infrastructure with AWS, which serves as the virtual foundation for Amazon.com’s multi-billion dollar online company and has been refined for more than ten years.
5. Scalable and high-performance
Your application can scale up or down depending on demand using AWS technologies like Auto Scaling and Elastic Load Balancing. You get immediate access to computation and storage resources thanks to Amazon’s extensive infrastructure.
6. Secure
Physical, operational, and software safeguards are all used by AWS to secure and harden our infrastructure. The AWS Security Center has more details.
This Edureka AWS eBook covers the most integral concepts and services of AWS that will help you get started in a step-by-step manner along with examples.
Both startups and large enterprises are turning to AWS services to suit their usecase. Startups are leveraging these services to effectively manage hardware infrastructure costs and streamline application deployments without sacrificing performance. Meanwhile, larger companies are embracing AWS cloud solutions to manage their infrastructure, allowing them to concentrate fully on product development on a broader scale. Here are some fascinating real-world industrial use cases of AWS services:
From optimizing costs for startups to powering global enterprises, AWS serves as a foundational platform for a vast array of real-world applications and business transformations.
AWS Tutorial For Beginners
This video focuses on the complete AWS Course which is the ultimate tutorial for beginners or anyone who wishes to scale up in their career.
First and foremost, you should analyze, what is your application about. Is it something that requires you to be worried about the underlying infrastructure? Is it something that requires a database? Is it something that will require monitoring?
So, once you know all the requirements of your application, you can pick the domain, and hence choose a service.
Like for example, if you want to deploy an application in AWS, which does not require you to worry about the underlying architecture, which service will you choose?
Well, in the compute section there is this service called Elastic Beanstalk. You just upload your application, and AWS does the rest for you. It’s that simple!
Of course, you wouldn’t know about any of these services without using them right? That’s why AWS came up with an amazing free-tier option.
Every customer receives the free tier option when he registers on AWS and is eligible for it for one year from the time he registers.
How shall this help?
You can try every application in AWS and learn! The more you practice, the more you learn what AWS is.
Step 1: Go to aws.amazon.com and click on Create an AWS Account.
Step 2: Click on ‘I am a new customer’ option, enter your email address and at last click on Sign In.
Step 3: On the next page, fill-in all the relevant information and click on Create Account.
Step 4: On the next page, fill in your personal details and click on Create Account.
Step 5: You would be asked to enter your credit or debit card details on this page, once you do that, proceed by clicking on continue.
Step 6: Next Step would be to verify your phone number, enter the details and click on Call me Now.
Step 7: You will get a call from AWS and will be asked to enter a pin, next up you will be selecting your plan for AWS, but before that click on Next.
Step 8: You shall select a plan, which suits you, I will be going with a basic plan since this account would be for personal use.
Step 9: Congrats! Your AWS Account is ready to be used! Go sign in and play!
Now, since you have an AWS account at your disposal, why not do some hands-on? What say?
Let’s host a PHP website on EC2 and back it up with an RDS MySQL database. Not familiar with the services? Let me brief you up:
EC2 (Elastic Compute Cloud) is an AWS compute service that provides resizable compute capacity in the cloud.
So in simple words you get a server with custom to compute capacity, this capacity can be adjusted according to your needs. Cool, right? Want to know more, AWS EC2 Blog.
Let’s discuss RDS now, so RDS is Relational Database Service, which includes different databases like MySQL, MongoDB etc.
So basically, RDS manages these databases for you, How? Check out this blog on AWS RDS.
We will be creating a small application on EC2-RDS infrastructure. By the end, you will have a PHP application on EC2, backed by a fully managed MySQL server.
Let’s start by deploying an EC2 instance first.
Step 1: Login to AWS Management Console.
Step 2: Select a region from the drop down.
Step 3: Click EC2 under Compute section. This will take you to EC2 dashboard.
Step 4: Select Launch Instance and hence select an AMI, for our example, we will be selecting a Windows 2016 Server Instance which falls under free tier.
Step 5: Once you select your desired AMI, select your instance type, this is basically where you decide how much computing power you need to start, since ours is a small application, we shall suffice with the free tier.
Step 6: Configure all the details and then click on add storage.
Step 7: Here you will be configuring your storage devices, once done click on tag instance.
Step 8: Here you will be tagging your instance, this is how your instance will be identified.
Step 9: Now you will be configuring your security group.
Step 10: Check all your settings, once verified launch your instance!
Step 11: In the next step you will be prompted for a key pair, create one and download at a handy location.
Step 12: Select your instance and click on Connect.
Step 13: Once you click connect, you will be prompted with the following screen. Copy the public IP and then click on Get Password.
Step 14: Select the key-pair that you downloaded, then click decrypt password.
Step 15: Copy the password and the public IP, keep it handy for the next step.
Step 16: We have the Public IP and the password now, let’s connect to our instance! Open the remote desktop manager. Enter the public IP address and click on Connect.
Step 17: Enter the saved password here and click on OK.
Step 18: Congratulations! Windows Server on EC2 at your service!
Next, Let’s create an RDS instance for MySQL
Step 1: Select the RDS service from the AWS Management Console.
Step 2: Since we will be launching a MySQL instance, select the MySQL instance from the list of DBs. let’s go to Step 3.
Step 3 : Since we are creating this instance for demo purposes, we will be selecting Dev/Test option and click on Next Step.
Step 4 :
On the next page you will be filling the following details:
Step 5 :
In the next step, you will be configuring Advanced Settings for your DB
Step 6 :
Congratulations! On your first RDS Instance!!
Next, let’s configure your RDS instance to connect to your EC2 server.
Step 1: On your RDS Dashboard, select your RDS instance.
Step 2: You have to edit the Security Group here, Why? Because you want your EC2 instance to be able to connect to your RDS Instance, for that you have to add the IP address of your EC2 instance here.
Step 3: Select the Security group, then select the Inbound rules, then click on Edit.
Step 4: Select the MySQL/Aurora, and then enter the Public IP address of your EC2 instance in the second field. Any IP address that you enter here should be followed by a ‘/32’ to convert it into CIDR notation. In the end Click Save.
That’s it! Your RDS instance is ready to receive commands from your EC2 instance.
What next? You would need a MySQL Workbench or a server to connect to your RDS instance. I installed MySQL on the EC2 instance itself, you can do that on your localhost too.
Note: If you are doing it on your localhost, be sure to add your IP address in the Security Group of your RDS instance, like we did in the above step.
Let’s connect to the RDS Instance Now!
Step 1: Open the command prompt and navigate to the bin folder of your MySQL.
Step 2: Next up, copy the endpoint from your RDS instance dashboard, you will be needing this in the next step to connect to your RDS instance. The endpoint is how your RDS instance gets identified. Following the endpoint is the port number ‘3306’ which you shall also need in the next step.
Step 3: Come back to the command prompt and type the following command, you will prompted for the password, enter the password that you entered while you created your RDS instance and you are set!
mysql -h xx.rds.amazonaws.com -P <port number> -u <username> -p
You can create your database and relevant tables here, I have already created mine, for your reference I am creating the sample ones here.
Your RDS service is set now!
Let’s move on, to the most exciting part of this What is AWS blog! Hosting your website!!
Step 1: On your EC2 instance, click on start and then Server Manager.
Step 2: Click on Add roles and features.
Step 3: Click on next on the first page, on the second page, select the following option and click Next.
Step 4: Select the server pool option and click on Next.
Step 5: Select the web server IIS from the list and click on Next.
Step 6: Select the .NET Frameworks mentioned here, and click next.
Step 7: This is the confirmation page, go through what is getting installed, and Click on Install.
Once IIS is installed, you will be able to see it on your server manager dashboard.
After this, install Microsoft Web Platform Installer from here.
Step 8: Open IIS now, double click the server, and click on the web platform installer from the Management Section.
We will be deploying a PHP web application, therefore we need PHP installed on this server, therefore we would be needing Web Platform Installer.
Step 9 : Search for PHP in the search bar of WPI, install the following package.
*Note: If your PHP Manager is failing to install, there are some values that you have to change in the registry.
Step 10: Once installed, you can view your PHP manager in IIS.
Your EC2 server is ready to host a website now!
Related Learning: AWS Well Architected Framework
Let’s upload your website to this EC2 server.
Step 1: First, copy all your files of your website to this folder in “C:/inetpub/wwwroot” on this server.
Step 2: Return to IIS, click on your server and then right click on Sites.
Step 3: In the ‘site name’ give a relevant name to your website, in the next step give the following physical path, and in the end click OK.
Your website is now live!
Step 4 : Enter the public IP address of your EC2 instance and voila! Your website is up and running. Enter the details and click on Add.
Step 5 : This shows that your RDS connection with your EC2 instance is working well. So whatever you entered here, is getting stored on your RDS instance, and your website is stored on your EC2 instance. Click on Go Back.
Step 6 : On the main page, click on View Results. And you shall see this page.
These are the records which are present in your MySQL table.
Need the code for this application? Here you go:
index.php
<!DOCTYPE html> <html> <body> <h1>Registration Page</h1> <form action="process.php" method="post"> <b> Name: </b> <input type="text" name="name"> <b> Email: </b> <input type="text" name="email"> <input type="Submit" value="add"> <a href="result.php">View Results</a> </form> </body> </html>
process.php
<html> <body> <?php $name=$_POST['name']; echo ' '; $email=$_POST['email']; $hostname='edureka-test.cx9qgfyl1dhy.us-west-2.rds.amazonaws.com'; $username='edureka'; $password='hemant1994'; $dbname='edu_test'; $usertable='test'; $yourfield='name'; $con=mysqli_connect($hostname,$username, $password) OR DIE ('Unable to connect to database! Please try again later.'); mysqli_select_db($con,$dbname); $query = "insert into ".$usertable." values('".$name."','".$email."');"; mysqli_query($con,$query) or die("Not Updated!"); echo "Insertion Successful!!"; ?> <a href="index.php">Go Back</a> </body> </html>
result.php
<html> <?php $hostname='edureka-test.cx9qgfyl1dhy.us-west-2.rds.amazonaws.com'; $username='edureka'; $password='hemant1994'; $dbname='edu_test'; $usertable='test'; $yourfield1='name'; $yourfield2='email'; var_dump(function_exists('mysqli_connect')); $con=mysqli_connect($hostname,$username, $password) OR DIE ('Unable to connect to database! Please try again later.'); mysqli_select_db($con,$dbname); $query = 'SELECT * FROM test'; $result = mysqli_query($con,$query); echo '<body><center> <table> <table border=3> <tr> <td><b>Name</b></td> <td><b>Email</b></td> </tr> '; if($result) while($row = mysqli_fetch_array($result)){ $name = $row[$yourfield1]; $email= $row[$yourfield2]; echo ' '; echo ' <tr> <td>' . $name . '</td> ' ; echo ' <td> ' . $email . '</td> </tr> ' ; } ?> </table> <a href="index.php"> Go Back </a> </body> </html>
The AWS global infrastructure is truly extensive, spanning a variety of geographical regions! Each of these regions is further divided into distinct availability zones. When it comes to choosing the right geographical regions for AWS, there are three important factors to consider:
Every region is divided into at least two availability zones, designed to be physically isolated from one another, ensuring business continuity for the infrastructure just like in a distributed system. If one zone experiences a failure, the infrastructure in the other availability zones continues to run smoothly. The largest region, North Virginia (US-East), boasts six availability zones. These zones are linked by high-speed fiber-optic networking, helping to maintain robust connections.
Did you know there are over 100 edge locations spread across the globe for CloudFront, our content delivery network? CloudFront is great at caching frequently accessed content, like stunning images and exciting live streaming videos, at these edge locations. This means it can quickly deliver content to users worldwide with amazing speed and low latency. Plus, it helps to keep your content safe from DDOS attacks!
The AWS management console offers a convenient web-based interface for accessing AWS services. You’ll need an AWS account to get started, and there’s even a smartphone app available for added flexibility! When you sign in for the first time, you’ll be greeted by the console home page, showcasing all the incredible services AWS provides. Plus, it’s easy to keep an eye on your costs right through the console!
You can easily access AWS resources through a variety of Software Development Kits (SDKs), making it a breeze for developers to create applications with AWS as their backend. There are SDKs available for all the major programming languages, including JavaScript, Python, Node.js, .Net, PHP, Ruby, Go, and C++. Plus, if you’re developing mobile apps, there are SDKs for Android, iOS, React Native, Unity, and Xamarin. Another great option is to make HTTP calls using the AWS API. For those who prefer using a command line, AWS offers an AWS Command Line Interface (CLI) that allows you to access AWS remotely and even automate many processes with scripts. You can also enjoy the convenience of the AWS Console, which is available as an app for both Android and iOS. Just download the AWS Console app and you’re all set!
AWS offers three cloud computing models:
Understanding these distinct AWS cloud computing models is key to choosing the most efficient and effective approach for deploying and managing your applications in the cloud.
AWS (Amazon Web Services) embraces a pay-as-you-go pricing model that offers incredible flexibility and scalability for businesses, no matter their size! With pricing that varies based on the services you choose, AWS also provides a variety of options to help you optimize costs. Let’s explore some of the key AWS pricing features and models together:
AWS utilizes a usage-based billing system, allowing you to pay solely for your actual consumption. This pricing model takes into account factors such as:
This model suits businesses that experience fluctuating workloads.
To ensure predictable usage, consider a long-term contract (1 or 3 years) with Reserved Instances for services such as EC2, RDS, and Redshift. This provides:
Spot Instances enable you to place bids on available EC2 capacity that is not currently in use. Prices vary according to supply and demand, allowing you to potentially save up to 90% compared to on-demand rates. They are ideal for tasks like batch processing, data analysis, or workloads that require flexibility.
AWS provides new users with a Free Tier that grants access to a limited range of services at no cost, including:
This offers a great option for businesses to experiment with AWS at no cost.
AWS offers a Pricing Calculator that estimates costs tailored to your usage. This tool allows you to forecast the overall expense of your cloud infrastructure by choosing services and configurations pertinent to your business.
AWS provides tools such as AWS Cost Explorer and AWS Budgets to:
By understanding these key pricing features and utilizing available tools, users can effectively manage and optimize their AWS spend, maximizing the value of their cloud investment.
Despite its widespread adoption and powerful capabilities, Amazon Web Services (AWS) comes with certain challenges that users should consider.
Acknowledging these potential downsides, including complexity, cost implications, and shared security responsibilities, is vital for effectively managing your AWS cloud environment.
So this is it, guys! I hope you enjoyed this. If you are reading this, Congratulations! You are no longer a newbie in AWS! The things that you learned in the hands-on part of this blog are what is required in AWS Interview Questions. The more you practice the more you will learn. Edureka provides a curriculum that covers exactly what you would need to crack the Solution Architect Exam!
You can also learn data engineering by enrolling AWS Certified Data Engineer training
Got a question for us? Please mention it in the comments section of this What is AWS blog and we will get back to you.
edureka.co
I followed the steps and couldn’t get the site up and running. it gave me an authentication error when I ran the test connection. also, the PHP manager component doesnt show in the IIS manager and the 3 files mentioned were never existing which I manually created. will re-produce it tomorrow and post the result as a follow-up of this one.