Hướng dẫn này dành cho các nhà phát triển sử dụng Cloud Run để gắn thẻ phía máy chủ và muốn thiết lập máy chủ xem trước riêng tư.
Tính năng gắn thẻ phía máy chủ cho phép bạn xem trước các thay đổi về việc gắn thẻ ở chế độ xem trước và gỡ lỗi trước khi áp dụng. Đây là một phần quan trọng trong quy trình phát triển để đảm bảo thẻ hoạt động như dự kiến. Để bật chức năng này, bạn cần có hai bản triển khai Cloud Run: một bản triển khai cho máy chủ gắn thẻ và một bản triển khai cho máy chủ xem trước. Hướng dẫn này cung cấp thêm thông tin về cách hai máy chủ giao tiếp và cách bạn có thể định cấu hình các máy chủ đó trong môi trường doanh nghiệp.
Tổng quan
Khi triển khai tính năng gắn thẻ phía máy chủ cho Cloud Run, bạn có thể triển khai tính năng này có hoặc không có bộ cân bằng tải. Đối với các trường hợp triển khai nhiều khu vực, bạn cần có bộ cân bằng tải để chuyển hướng lưu lượng truy cập đến thực thể gần nhất.
Hình 1: Triển khai mà không có bộ cân bằng tải.
Hình 2: Triển khai bằng bộ cân bằng tải.
Trong cả hai lần triển khai, điểm truy cập cho cả máy chủ xem trước và môi trường gắn thẻ chính thức đều là cùng một URL (ví dụ: sgtm.example.com
). Máy chủ gắn thẻ được triển khai bằng một biến môi trường có tên là PREVIEW_SERVER_URL
, đại diện cho URL của máy chủ xem trước.
Khi bạn truy cập vào tagmanager.google.com
và mở chế độ xem trước, Trình quản lý thẻ sẽ chuyển đến sgtm.example.com?id=[gtm_server_id]>m_auth=[auth_id]>m_preview=[env_id]
và đặt một cookie. Sau đó, khi bạn sử dụng cùng một trình duyệt để khám phá trang web mục tiêu, các yêu cầu được gửi đến sgtm.example.com
cũng sẽ chuyển tiếp cookie. Nhờ cookie, máy chủ gắn thẻ biết đây là các sự kiện của bạn, vì vậy, máy chủ này chỉ chuyển tiếp các sự kiện của bạn đến máy chủ xem trước để bạn xem và khắc phục sự cố.
Máy chủ gắn thẻ chuyển tiếp các sự kiện này bằng cách tạo yêu cầu HTTP đến URL được đặt trong biến môi trường PREVIEW_SERVER_URL
.
Giới thiệu về máy chủ xem trước công khai
Hành vi mặc định này yêu cầu máy chủ xem trước của bạn phải ở chế độ công khai. Tuy nhiên, điều này gây ra vấn đề cho một số tổ chức vì họ có các quy định hạn chế về cơ sở hạ tầng có thể hiển thị công khai và thường thực thi các biện pháp bảo mật bổ sung thông qua bộ cân bằng tải. Trình cân bằng tải mang lại cho bạn:
- Có nhiều quyền kiểm soát hơn đối với các tính năng như chính sách SSL để hạn chế các bộ mật mã.
- Tích hợp gốc với Cloud Armor để dùng tường lửa cho ứng dụng web (WAF) hoặc tính năng từ chối dịch vụ (DDoS) phân tán.
- Các tính năng quản lý lưu lượng truy cập nâng cao.
Định tuyến máy chủ xem trước thông qua trình cân bằng tải
Để tạo máy chủ xem trước riêng tư, hãy sử dụng tính năng định tuyến dựa trên máy chủ lưu trữ thông qua bộ cân bằng tải có thêm một miền con. Phần còn lại của hướng dẫn này giải thích cách định tuyến máy chủ xem trước thông qua bộ cân bằng tải.
Điều kiện tiên quyết
- Máy chủ gắn thẻ được triển khai trên Cloud Run phía sau trình cân bằng tải.
- Quyền truy cập vào dự án trên Google Cloud.
- Quyền truy cập vào một miền con mới cho máy chủ xem trước, ví dụ:
preview.sgtm.example.com
.
Bước 1: Cập nhật biến môi trường bằng một miền con mới
Để sử dụng miền máy chủ xem trước mới, hãy cập nhật biến môi trường máy chủ gắn thẻ phía máy chủ PREVIEW_SERVER_URL
:
- Mở Cloud Run.
- Chọn máy chủ gắn thẻ.
- Nhấp vào Chỉnh sửa rồi nhấp vào Triển khai bản sửa đổi mới.
- Trong thẻ Variables and secrets (Biến và khoá bí mật), trong mục Containers (Vùng chứa), hãy thay đổi
PREVIEW_SERVER_URL
thành miền mới. Ví dụ:preview.sgtm.example.com
.
Bước 2: Định cấu hình bộ cân bằng tải hiện có để sử dụng tính năng định tuyến dựa trên máy chủ lưu trữ
Để định cấu hình bộ cân bằng tải hiện có, hãy sử dụng tính năng định tuyến dựa trên máy chủ lưu trữ và gửi lưu lượng truy cập đến đúng máy chủ:
- Trong Cloud Run, hãy mở trang Phân tải rồi nhấp vào tên của bộ cân bằng tải.
- Nhấp vào nút Chỉnh sửa.
- Nhấp vào trang Cấu hình phụ trợ rồi mở trình đơn thả xuống cho Dịch vụ phụ trợ và bộ chứa phụ trợ.
- Nhấp vào Tạo dịch vụ phụ trợ rồi hoàn tất các bước sau:
- Đặt tên thích hợp cho lớp này (ví dụ:
preview-backend-service
). - Chọn loại phần phụ trợ là Nhóm điểm cuối của mạng không có máy chủ.
- Đặt tên thích hợp cho lớp này (ví dụ:
- Trong phần Backend (Phần phụ trợ), hãy tạo một nhóm thiết bị đầu cuối của mạng không có máy chủ mới và hoàn thành các bước sau:
- Đặt tên cho máy chủ rồi chọn khu vực lưu trữ máy chủ xem trước.
- Chọn Cloud Run làm loại nhóm điểm cuối mạng không có máy chủ và máy chủ xem trước làm dịch vụ.
- Nhấp vào Tạo.
- Thay đổi các chế độ cài đặt khác nếu cần hoặc giữ nguyên chế độ mặc định rồi nhấp vào Tạo.
Bước 3: Thêm quy tắc mới và cập nhật chế độ kiểm soát truy cập
Cách thêm quy tắc cho URL máy chủ mới và cập nhật chế độ kiểm soát truy cập:
- Mở trang Quy tắc máy chủ lưu trữ và đường dẫn.
- Thêm quy tắc mới trong đó:
- Máy chủ lưu trữ là URL mới:
preview.sgtm.example.com
- Đường dẫn là:
/*
- Phần phụ trợ là:
preview-backend-service
- Máy chủ lưu trữ là URL mới:
- Nhấp vào nút Cập nhật để triển khai lại bộ cân bằng tải.
- Quay lại Cloud Run, hãy mở máy chủ xem trước rồi chọn thẻ Networking (Mạng).
- Thay đổi Ingress control (Chế độ kiểm soát truy cập) thành Internal (Nội bộ) và đánh dấu vào Allow traffic from external application load balancers (Cho phép lưu lượng truy cập từ bộ cân bằng tải ứng dụng bên ngoài) để lưu lượng truy cập không truy cập được công khai.
Kết quả: Cấu trúc máy chủ của bạn hiện sẽ giống như Hình 3, trong đó tất cả yêu cầu lưu lượng truy cập đều được chuyển đến máy chủ gắn thẻ và máy chủ gắn thẻ có thể chuyển tiếp các yêu cầu đến máy chủ xem trước.
Hình 3: Sử dụng tính năng định tuyến dựa trên máy chủ.
Kiểm tra cấu hình
Cách kiểm tra cấu hình:
- Mở Trình quản lý thẻ của Google.
- Mở vùng chứa máy chủ.
- Nhấp vào Quản trị > Cài đặt vùng chứa rồi đặt URL vùng chứa phía máy chủ thành URL máy chủ gắn thẻ.
- Đóng cửa sổ và xem trước không gian làm việc. Cửa sổ gỡ lỗi sẽ mở ra. Khi bạn di chuyển trên trang web, các sự kiện sẽ xuất hiện trong cửa sổ gỡ lỗi.