AWS Zero to Hero Day 4 - part-1

Final-year BSc IT student and DevOps Engineer with strong hands-on experience in AWS and cloud-native technologies. I focus on building, deploying, and automating reliable systems using modern DevOps practices.
I have practical experience working with Docker and Kubernetes for containerization and orchestration, Terraform and Ansible for infrastructure automation, and CI/CD pipelines using Jenkins, GitHub Actions, and AWS CodePipeline. I enjoy solving real-world problems related to deployment, scalability, and system reliability.
Tasks for the day:
Read about AWS RDS, DynamoDB, and AWS Lambda, and write a post on LinkedIn with an example in your own words.
Ans:AWS RDS: Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizable capacity for an industry-standard relational database and manages common database administration tasks.
AWS DynamoDB: Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. You can use Amazon DynamoDB to create a database table that can store and retrieve any amount of data, and serve any level of request traffic. Amazon DynamoDB automatically spreads the data and traffic for the table over a sufficient number of servers to handle the request capacity specified by the customer and the amount of data stored, while maintaining consistent and fast performance.
AWS Lambda: With AWS Lambda, you can run code without provisioning or managing servers. You pay only for the compute time that you consume—there's no charge when your code isn't running. You can run code for virtually any type of application or backend service—all with zero administration. Just upload your code and Lambda takes care of everything required to run and scale your code with high availability.
You are part of a team responsible for migrating the database of an existing e-commerce platform to Amazon RDS. The goal is to improve scalability, performance, and manageability. The current setup uses a self-managed MySQL database on an on-premises server. 👇
What needs to be done:
Set up and configure a MySQL database on AWS RDS, ensuring optimal performance.
Establish a connection between the RDS instance and your EC2 environment
Ans:
1. Created an RDS with connecting to an EC2 Instance
After the creation of RDS, connected to the EC2 instance that is attached to RDS and updated the system
After that, I created an IAM role for EC2 service with RDS and CloudWatch full access, and attached it to my EC2 Instance.
After that, I launched the EC2 and installed the MySQL client using the command
sudo apt install mysql-client -yand then ran this command and entered the password, and connected to my RDS MySQL command:
mysql -u admin -h [database-1.c3w68q0ggwwn.eu-west-1.rds.amazonaws.com](<http://database-1.c3w68q0ggwwn.eu-west-1.rds.amazonaws.com/>) -P 3306 -pwhere
database-1.c3w68q0ggwwn.eu-west-1.rds.amazonaws.comIt is the EndPoint of my RDS DB.
Then I created a database ‘aws’ using the command
create database aws;To check whether the database is created or not, I ran this to show all databases:
show databases;Then I used that database using
use awsAfter that, I created the table using the command
CREATE TABLE learners (learner_id INT, learner_name VARCHAR(50));then i inserted two data into the table
insert into learners (learner_id,learner_name) values (1,"shubham");insert into learners (learner_id,learner_name) values (2,"Amitabh");Output
select * from learners;




