Như tiêu đề, có lúc bạn làm việc với GCP Cloud Run và mapping domain với a.example.com. và một lúc nào đó, bạn được yêu cầu khi truy cập vào b.example.com và mong muốn trang này phải redicrect toàn bộ từ path cho đến các param, query trên url. Bạn đang loay hoay không biết phải xử lý như thế nào thì đây sẽ là giải pháp cho bạn mà chúng tôi đã thực hiện thành công thông qua GCP Network services Load Balancing.
Chuẩn bị:
- Một services cloud run đang chạy ngon lành
- Quyền quản lý domain của bạn, có thể thêm các subdomain và mapping vào bằng thẻ A, CNAME v.v..
Thực hiện:
- Truy cập vào trang quản lý Load Balancing: https://console.cloud.google.com/net-services/loadbalancing/list/loadBalancers?project=projectId, chọn Create Load Balancer
- Ở mục Application Load Balancer (HTTP/S), chọn Start Configuration
- Chọn các thông số như hình và chọn Continue
- Mục Frontend Configuration:
Load Balancer name: lb-example
FE Configuration name: fe-example
Protocol: HTTPS
Network: Premium
IP Address: Đang là Ephemeral, chọn mũi tên trỏ xuống và chọn Create IP Address -> Điền tên "ip-example" và nhấn Create (bước này sẽ tạo Static IP để mình sử dụng mapping vào domain)
Certificate: tạo mới và chọn như hình!
Hình ảnh tổng thể Front end Configuration
- Mục Backend Configuration
Tạo mới Backend Service: Các thông số như sau:
Lưu ý:
- Khi tạo New Backend:
Chọn Regions và chọn Server Cloud Runs mong muốn
- Bỏ tích Enable Cloud CDN (sau khi config ổn định có thể bật lại)
- Tích chọn Enable logging
Bước 5 hoàn thành: Nhấn Create new backend
- Host and path rules (Quan trọng)
Chọn Advanced host and path rule (URL redirect, URL rewrite)
Chọn Add host and path rule
Điền host mình muốn redicrects: a.example.com. Nhấn button Edit Chọn theo các thông số sau
Lưu ý: Tích chọn Enable HTTPS redirect, Bỏ tích chọn Enable Stripe Query để lấy full path + query param nếu có (nếu tích chọn sẽ chỉ lấy đến path, bỏ qua query param)
Kiểm tra lại và nhấn Create để tạo Load balancer "lb-example"
- Mapping domain a.example.com và b.example.com vào địa chỉ IP Static đã được tạo ở Mục 4.
Trong khoảng thời gian domain mapping và quá trình certificate kiểm tra domain của mình mất khoảng 30p, đừng lo lắng nếu bạn đã làm tất cả các bước ở trên nhé. Chờ 30 phút và kiểm tra lại thôi :)