EC2 Fundamentals
Phong Nguyen
Bài Lab này sẽ hướng dẫn cách tạo EC2, ssh đến EC2, gắn Role cho EC2 để thực hiện access đến S3
Lưu ý
- Chọn region: us-east-1
- Khi setting Network: chọn default VPC
Create security group
Chúng ta sẽ tạo SG cho phép có thể access đến EC2 thông qua giao thức ssh, đồng thời cũng cho phép có thể access đến EC2 thông qua http
Tại giao diện EC2 console -> chọn Security Groups ở menu phía bên trái
Chọn Create security group
Nhập các thông tin như trong hình
- Security group name:
d-sg-SAA-basion-host
- Description:
Allow ssh and http from internet
- VPC: chọn Default VPC (nếu như account các bạn có nhiều VPC)
- Inbound rules: Như hình bên dưới
- Outbound rules: Như hình bên dưới
- Tags - optional:
Key | value |
---|---|
Name | d-sg-SAA-basion-host |
Create EC2
Tiếp sau chúng ta sẽ tạo EC2 ở default VPC. Default thì Region nào cũng có default VPC, nếu bạn không xoá thì nó sẽ ở đó - không ảnh hưởng gì đến hệ thống cả. Nếu bạn nào vô tình xoá thì cũng có thể tạo lại được
Trong khi tạo EC2 Instace thì chúng ta cũng tạo key pair - cách để connect đến EC2 thông qua SSH
Tại EC2 console, chọn Instance ở menu bên trái, chọn Launch Instances
Name: d-ec2-SAA-bastion-host
và nhấn "Add additional tags"
OS Images (AMI): default
Instance type: t2.micro (loại này support free tier)
Để tạo new key pair -> nhấn Create new key pair
Key pair name: d-key-SAA-common
(key này sẽ dùng trong suốt khoá học).
Download key pair và lưu trữ cẩn thận
Chọn key pair vừa tạo
Network: Sử dụng default VPC, nhớ Enable public IP, chọn SG vừa tạo step trước
Configue storage: để default
Mở Advanced details và setting user data (lưu ý copy chính xác script bên dưới)
#!/bin/bash
yum update -y
yum install -y httpd.x86_64
systemctl start httpd.service
systemctl enable httpd.service
echo “Hello World from $(hostname -f)” > /var/www/html/index.html
Launch instance
Instance đang starting
Đợi một chút thì EC2 đã running hoàn toàn
Connect to EC2 via ssh
Sử dụng git bash (đối với Windows), terminal (đối với Mac) tại thư mục có chứa file key pair
- Lấy command để ssh vào EC2
- Chạy lệnh 1 để set quyền thực thi cho file
.pem
- Chạy lệnh 2 để ssh vào EC2 (lưu ý đúng tên file key pair nhé)
Connect to EC2 via Console
Chúng ta có thể ssh đến EC2 trên chính Management console - rất tiện lợi
Chọn Instance -> Connect
Lưu ý User name, Click connect
Vậy là chúng ta đã connect dc đến Instance (OS: Amazon linux 2023)
http://{EC2 public IP}
Access to Chúng ta đã sử dụng script để install apache server. Vậy nên bây giờ có thể sử dụng web browser để access đến server thông qua http
Lấy địa chỉ public của EC2
Access http://{public ip}
(lưu ý là http
chứ không phải https
)
Create and Assign IAM role SAAEC2S3FullAccessRole to Instance
Tại IAM console, Menu Role -> Create role
Chọn EC2 làm trusted entity
Tìm và chọn AWS Managed policy AmazonS3FullAccess
Điền tên Role SAAEC2S3FullAccessRole
và nhấn Create role
Confirm kết quả
SAAEC2S3FullAccessRole
to EC2
Attach role Tại EC2 Console, thực hiện như sau:
Chọn role SAAEC2S3FullAccessRole
và nhấn Update IAM role
Connect to EC2 and run: aws s3 ls
ssh đến Ec2 và thực hiện command aws s3 ls
để test connect đến S3 (account các bạn nếu chưa có bucket nào thì không hiển thị gì cả, nhưng không báo lỗi gì thì là thành công)
Cleanup
Vậy là các bạn đã tạo thành thông EC2 Instance và ssh đến EC2 ok. Để tiết kiệm chúng ta sẽ Terminated EC2 khi không còn dùng nữa.