Load Balancing Amazon RDS Mysql Simple Way

Tôi đã được sử dụng Amazon RDS MySQL trong nhiều năm ở nhiều dự án. Một trong những điểm tốt nhất của việc sử dụng AWS RDS thay chạy trên EC2 là bảo trì và quản lý dễ dàng.RDS Multi-AZ là một tính năng rất tốt trong RDS, khi bạn chạy một instance với tùy chọn Multi-AZ, RDS tự động tạo ra một instance khác trong một khu sẵn có và tự động sao chép giữa chúng.

Nếu main instance gặp bất kỳ vấn đề hoặc lỗi, bạn và khách hàng của bạn sẽ không cảm thấy bất kỳ gián đoạn dịch vụ bởi vì hệ thống sẽ tự động được chuyển hướng đến another instance cho đến khi master instance được khôi phục thành công. Ngoài ra, tính năng Multi-AZ là rất hữu ích khi bạn muốn nâng cấp instance type của bạn (tài nguyên phần cứng). Trong bài viết này, tôi muốn nói về nâng cao năng lực của bạn khi kinh doanh của bạn phát triển.

Bạn có hai lựa chọn trong RDS:

Option 1:

Tăng instance type của bạn ví dụ (CPU, RAM, vv ..)

Option 2:

Thêm nhiều instances và phân chia lưu lượng giữa instances.

Trong dịch vụ RDS, bạn có thể dễ dàng tạo ra bản sao instance từ master instance chỉ với một vài cú nhấp chuột. Nhưng sau khi bạn tạo bản sao instance, những gì bạn cần làm là chuyển đổi giữa chúng. giải pháp có sẵn là sử dụng một proxy như HAProxy, cái này rất phổ biến.

Step 1:

Tạo một bản sao từ master instance của bạn bằng cách nhấp vào menu action của bạn trong RDS

create-read-replica-amazon-rds.png

Step 2:

Click on Create Read Replica on Action Menu.

create-read-replica-amazon-rds-step2.png

Step 3:

fill and select your instance type and source of replication (source must be your master DB instance) endpoint-amazon-rds-mysql.png

Step 4:

Kiểm tra xem các instance đã được tạo ra và hoạt động.

Sau một vài phút, instance của bạn trở nên có sẵn để đọc (chỉ đọc), và bạn có thể sử dụng nó. Để kiểm tra xem mọi thứ là ok chúng tôi kết nối với các ví dụ với người dùng và mật khẩu để các thiết bị đầu cuối của các instance mới.Nếu bạn có thể kết nối với các instance mới và tất cả mọi thứ là ok, chúng tôi đi tiếp đến bước tiếp theo.

Step 5:

Bây giờ đến Amazon Route 53 service.

1-route53-amazon-create-zone.png

Step 6 :

Bạn cần một tên miền DNS tổ chức ở Route 53 service.

2-aws-route53-create-hosted-zone-step2.png

Step 7 :

Tạo một khu vực và thiết lập DNS trong tên miền của bạn. Ngoài ra thêm record khác cho web hoặc dịch vụ liên quan cho dịch vụ của bạn như một dịch vụ DNS bình thường.

3-aws-route53-zone-create-step3.png

4-amazon-route53-zone-create-step5.png

Step 8:

Thêm một bản ghi CNAME cho tên miền của bạn và đặt tên cho db.mydomain.com và TTL đến 1 giây và chọn chính sách định tuyến để trọng và đầy sức nặng cho 1 và thiết lập ID đến master.

5-aws-a-record-rds-mysql-step1-master1.png

Step 9:

Thêm một bản ghi CNAME cho tên miền của bạn và đặt tên cho db.mydomain.com và TTL đến 1 giây và chọn các chính sách định tuyến để trọng và đầy sức nặng cho 1 và thiết lập ID để đọc 1.

1.png

2.png

Step 10:

Kiểm tra cuối cùng là kiểm tra rằng các dịch vụ DNS đang làm việc đúng cách. Sử dụng lệnh ping để ping db.mydomain.com. Mỗi lần bạn ping bạn phải nhận được ngẫu nhiên địa chỉ IP Ví dụ về các trường hợp khác nhau của bạn.

Step 11:

Bước cuối, Như là bước cuối cùng để viết và cập nhật, sử dụng ví dụ URL Endpoint của chính và tất cả các khác để đọc Sử dụng db.mydomain.com thay vì địa chỉ điểm cuối của mỗi trường hợp.

Lưu ý: Nếu một số instances của bạn có phần cứng mạnh mẽ hơn (CPU, RAM), bạn có thể thiết lập weight nhiều hơn cho higher powered instance. Ví dụ, nếu bạn có một master với very high throughput và hai bản sao đọc mà có mức độ nguồn lực rất thấp. Bạn có thể thiết lập weight cho master đến 50 và thiết lập 25 cho từng đọc bản sao. Dựa vào thiết lập này, trong số 10 yêu cầu đọc 5 được gửi đến master và 2 hoặc 3 được gửi đến mỗi trường hợp bản sao.

Nguồn:

https://www.pbxdom.com/load-balancing-amazon-rds-mysql-simple-way