Blog
Thoughts on engineering, design, and building great products.
RDS: Running an AWS-Managed PostgreSQL Database
Create a PostgreSQL database on RDS, put it in a private subnet, connect from EC2, and understand why RDS beats running your own database on EC2. RDS is the easiest service to rack up a bill, so cleanup matters most here.
Dockerizing an Application and Pushing the Image to ECR
Package a Node.js application into a Docker image, create an ECR repository, and push the image to it. This is the foundation for the CI/CD article that follows.
CI/CD with GitHub Actions: Automatically Build and Deploy to AWS
Build a pipeline: every push to GitHub automatically builds a Docker image, pushes it to ECR, and deploys to EC2. Uses OIDC so you don't store an AWS access key in GitHub.
CloudWatch: Monitoring and Viewing Your Application's Logs
Create a CPU alarm that emails you via SNS, and ship container logs to CloudWatch Logs for centralized viewing. Know how the system is running and get alerted when something goes wrong.
Series Wrap-up and a Full Audit of Your AWS Account
The final article: a full-account audit checklist to be sure no resource is quietly billing you, a review of the best practices used, and suggestions for where to learn next.
Lession 5: Networking on AWS
Hàng triệu khách hàng, hàng triệu tài nguyên - và nếu không có ranh giới rõ ràng, traffic sẽ chạy loạn khắp nơi. Bài này giải thích AWS tổ chức và bảo vệ mạng của bạn từ cấp VPC đến từng EC2 Instance.
Lession 4: Introduction to Going Global
Để có thể cung cấp được các dịch vụ đến hàng triệu người dùng trên thế giới thì AWS có một hệ thống hạ tầng global cũng khá là chi tiết. Bài học này chúng ta sẽ cùng nhau tìm hiểu về nó.