This page looks best with JavaScript enabled

[Dành cho Beginner] Hướng dẫn triển khai ứng dụng NodeJS cho AWS trên EC2 và S3

 ·  ☕ 3 phút đọc · 👀... views

Xin chào mọi người. Hôm nay chúng ta sẽ cùng tìm hiểu cách để có thể triển khai 1 ứng dụng NodeJS trên EC2 và thông tin dữ liệu được
lưu ở S3 trên AWS nhé!

Mô hình triển khai

Mình sẽ nói qua chút về mô hình triển khai của bài Lab này, yêu cầu của bài lab bao gồm:

  • Chuẩn bị EC2 đã được cấu hình IAM Rule truy cập S3
  • Cài đặt NodeJS lên EC2
  • Lấy code NodeJS truy cập S3 và hiển thị nội dung(danh sách file, ảnh) trong S3 lên web
    Chúng ta sẽ đến bài lab ngay bây giờ 😄

1. Chuẩn bị EC2 đã được cấu hình IAM Rule truy cập S3

Trước hết mình đã tạo 1 VPC, với subnet public và subnet private ở bài trước, bạn có thể đọc lại bài VPC trong AWS của mình

Bước 1: Tạo EC2, S3 Bucket với giao diện AWS Console

Chúng ta lần lượt tạo EC2 và S3 Bucket như sau:

chú ý ở bước tạo Network setting chúng ta sẽ chọn VPC public mà chúng ta tạo ở bài trước

Các bước khác bạn làm tương tự như bài hướng dẫn về EC2

Tiếp theo mình sẽ tạo 1 S3 Bucket, nếu bạn chưa biết S3 Bucket là gì thì S3 Bucket là dịch vụ đám mây lưu trữ do đó bạn có thể tải lên các tệp, các tài liệu,
các dữ liệu tải về của người dùng hoặc các bản sao lưu.

Để hiểu về Amazon S3, bạn cần nắm 1 số khái niệm cơ bản:

  • Amazon S3 lưu trữ dữ liệu như các object trong các bucket. Một object gồm 1 file và metadata mô tả cho file (tùy chọn).
  • Để lưu 1 object trong Amazon S3, bạn tải file lên 1 bucket. Khi đã tải file, bạn có thể gán quyền cho đối tượng cũng như bổ sung metadata.
  • Bucket là các thùng chứa cho các object. Bạn có thể tạo 1 hay nhiều bucket.
  • Với mỗi bucket, bạn có thể điều khiển việc truy xuất đến nó (ai có thể tạo, xóa và xem các object trong bucket), xem nhật ký truy xuất đến bucket và đến các object bên trong, cũng như chọn region mà Amazon S3 sẽ lưu bucket và nội dung trong nó.
  • Chú ý là mỗi một tài khoản chỉ tạo được tối đa là 100 buckets, và Bucket có tên là duy nhất
    Mình sẽ tạo 1 S3 Bucket như sau:

    Bạn cần bỏ tích chọn mục này

Bước 2: Tạo IAM Role

Tạo 1 rule cho phép EC2 truy cập S3 như sau

Bước 3: Chỉnh sửa Bucket Policy

Bước 4: Kiểm tra EC2 truy cập S3 mà không cần lưu trữ use/key/pass

2. Cài đặt NodeJS lên EC2

3. Lấy code NodeJS truy cập S3 và hiển thị nội dung(danh sách file, ảnh) trong S3 lên web

Chia sẻ
Support the author with

Hùng Phạm
Viết bởi
Hùng Phạm
Web/Mobile Developer