1. Giới thiệu
Trong lớp học lập trình này, bạn sẽ tạo Trình cân bằng tải cho ứng dụng theo khu vực L7 và Private Service Connect Backend (Kết nối dịch vụ riêng tư) để truy cập vào Looker theo hướng bắc. Để truy cập vào Looker, bạn phải thêm VPC của người tiêu dùng vào danh sách cho phép đối với thực thể PSC của Looker.
Private Service Connect là một tính năng của mạng Google Cloud, cho phép người dùng truy cập riêng tư vào các dịch vụ được quản lý từ bên trong mạng VPC của họ. Tương tự, dịch vụ này cho phép nhà sản xuất dịch vụ được quản lý lưu trữ các dịch vụ này trong mạng VPC riêng của họ và cung cấp kết nối riêng tư cho người dùng. Ví dụ: khi dùng Private Service Connect để truy cập vào Looker, bạn là người sử dụng dịch vụ và Google là nhà sản xuất dịch vụ, như được đánh dấu trong Hình 1.
Hình 1.
Quyền truy cập từ dưới lên (còn gọi là PSC đảo ngược) cho phép Người dùng tạo một Dịch vụ đã xuất bản dưới dạng Nhà sản xuất để cho phép Looker truy cập vào các điểm cuối tại chỗ, trong VPC, vào các dịch vụ được quản lý và Internet. Bạn có thể triển khai các kết nối hướng Nam ở bất kỳ khu vực nào, bất kể vị trí triển khai Looker PSC, như được làm nổi bật trong Hình 2.
Hình 2.
Kiến thức bạn sẽ học được
- Yêu cầu về mạng
- Cập nhật danh sách cho phép của Looker để truy cập vào hướng bắc
- Tạo một phần phụ trợ Kết nối dịch vụ riêng tư trong VPC của người tiêu dùng
- Chứng chỉ tự ký của Google so với chứng chỉ tự ký
Bạn cần có
- Dự án trên Google Cloud có quyền Chủ sở hữu
- Miền đã đăng ký
- Thực thể PSC Looker hiện có
2. Sản phẩm bạn sẽ tạo ra
Bạn sẽ thiết lập một mạng Người dùng có trong danh sách cho phép, looker-psc-demo, để triển khai bộ cân bằng tải ứng dụng L7 bên ngoài theo khu vực và NEG phụ trợ PSC yêu cầu chứng chỉ Google hoặc chứng chỉ tự ký. Trong cả hai phương thức, bạn đều phải có một miền đã đăng ký khớp với miền tuỳ chỉnh được xác định trong Looker.
3. Yêu cầu về mạng
Dưới đây là bảng chi tiết các yêu cầu về mạng:
Thành phần | Mô tả |
VPC (Looker-psc-demo) | VPC chế độ tuỳ chỉnh |
Mạng con PSC NEG | Dùng để phân bổ địa chỉ IP cho Nhóm thiết bị đầu cuối mạng |
Mạng con chỉ proxy | Mỗi proxy của trình cân bằng tải được chỉ định một địa chỉ IP nội bộ. Các gói được gửi từ proxy đến máy ảo hoặc điểm cuối phụ trợ có địa chỉ IP nguồn từ mạng con chỉ có proxy. |
Dịch vụ phụ trợ | Dịch vụ phụ trợ đóng vai trò là cầu nối giữa trình cân bằng tải và các tài nguyên phụ trợ. Trong hướng dẫn này, dịch vụ phụ trợ được liên kết với PSC NEG. |
4. Cấu trúc liên kết của lớp học lập trình
5. Thiết lập và yêu cầu
Thiết lập môi trường theo tiến độ riêng
- Đăng nhập vào Google Cloud Console rồi tạo một dự án mới hoặc sử dụng lại một dự án hiện có. Nếu chưa có tài khoản Gmail hoặc Google Workspace, bạn phải tạo một tài khoản.
- Tên dự án là tên hiển thị cho người tham gia dự án này. Đây là một chuỗi ký tự không được API của Google sử dụng. Bạn luôn có thể cập nhật thông tin này.
- Mã dự án là duy nhất trong tất cả các dự án Google Cloud và không thể thay đổi (không thể thay đổi sau khi đặt). Cloud Console sẽ tự động tạo một chuỗi duy nhất; thường bạn không quan tâm đến sản phẩm đó là gì. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham khảo Mã dự án của mình (thường được xác định là
PROJECT_ID
). Nếu không thích mã đã tạo, bạn có thể tạo một mã nhận dạng ngẫu nhiên khác. Ngoài ra, bạn có thể thử cách riêng của mình để xem có thể sử dụng hay không. Bạn không thể thay đổi thông tin này sau bước này và thông tin này sẽ được giữ nguyên trong suốt thời gian diễn ra dự án. - Đối với thông tin của bạn, có giá trị thứ ba, Project Number (Số dự án), mà một số API sử dụng. Tìm hiểu thêm về cả ba giá trị này trong tài liệu này.
- Tiếp theo, bạn sẽ phải bật tính năng thanh toán trong Cloud Console để sử dụng API/tài nguyên trên đám mây. Việc tham gia lớp học lập trình này sẽ không tốn kém nhiều chi phí, nếu có. Để tắt các tài nguyên nhằm tránh bị tính phí sau khi hoàn tất hướng dẫn này, bạn có thể xoá các tài nguyên đã tạo hoặc xoá dự án. Người dùng mới của Google Cloud đủ điều kiện tham gia chương trình Dùng thử miễn phí 300 USD.
Khởi động Cloud Shell
Mặc dù bạn có thể vận hành Google Cloud từ xa trên máy tính xách tay, nhưng trong lớp học lập trình này, bạn sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trong Đám mây.
Trong Bảng điều khiển Google Cloud, hãy nhấp vào biểu tượng Cloud Shell trên thanh công cụ trên cùng bên phải:
Sẽ chỉ mất một chút thời gian để cấp phép và kết nối với môi trường. Khi hoàn tất, bạn sẽ thấy như sau:
Máy ảo này được tải sẵn tất cả các công cụ phát triển mà bạn cần. Phiên bản này cung cấp thư mục gốc có dung lượng ổn định 5 GB và chạy trên Google Cloud, giúp nâng cao đáng kể hiệu suất và khả năng xác thực của mạng. Bạn có thể thực hiện tất cả công việc trong lớp học lập trình này bằng trình duyệt. Bạn không cần cài đặt gì cả.
6. Trước khi bắt đầu
Bật API
Bên trong Cloud Shell, hãy đảm bảo bạn đã thiết lập mã dự án:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
echo $project
echo $region
Bật tất cả dịch vụ cần thiết:
gcloud services enable compute.googleapis.com
7. Mạng người tiêu dùng
Trong phần sau, bạn sẽ tạo mạng người dùng sẽ được cập nhật trong danh sách cho phép VPC Looker PSC.
Mạng VPC
Bên trong Cloud Shell, hãy thực hiện các thao tác sau:
gcloud compute networks create looker-psc-demo --subnet-mode custom
Tạo mạng con
Bên trong Cloud Shell, hãy tạo mạng con của nhóm điểm cuối mạng người tiêu dùng:
gcloud compute networks subnets create consumer-psc-neg-subnet --network looker-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access
Bên trong Cloud Shell, hãy tạo mạng con chỉ có proxy theo khu vực cho nhà sản xuất:
gcloud compute networks subnets create $region-proxy-only-subnet \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE \
--region=$region \
--network=looker-psc-demo \
--range=10.10.10.0/24
Đặt trước địa chỉ IP của trình cân bằng tải
Bên trong Cloud Shell, hãy đặt trước một địa chỉ IP bên ngoài cho trình cân bằng tải:
gcloud compute addresses create regional-alb-static-ip \
--region=$region \
--network-tier=STANDARD
Bên trong Cloud Shell, hãy xem Địa chỉ IP dành riêng:
gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:
Kết quả điểm dữ liệu:
user@cloudshell$ gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:
address: 35.208.202.244
8. Tạo Miền tuỳ chỉnh
Bạn phải thực hiện các bước sau đây để thiết lập miền tuỳ chỉnh:
Ví dụ về miền tuỳ chỉnh
Miền tuỳ chỉnh looker.cosmopup.com tồn tại dưới dạng miền con DNS công khai được liên kết với bản ghi A của địa chỉ IP tĩnh (regional-alb-static-ip) được xác định trước đó. Xem ảnh chụp màn hình được chụp từ một thiết bị đầu cuối xác thực việc tra cứu DNS.
Tiếp theo, hãy tạo miền của khách hàng bằng tên miền phụ looker.cosmopup.com
Ví dụ về OAuth
Dưới đây là ví dụ về thông tin đăng nhập OAuth cho các nguồn gốc được uỷ quyền và lệnh gọi lại cho miền con Lookerer.cosmopup.com.
9. Các chứng chỉ
Bạn có thể tạo chứng chỉ Compute Engine hoặc Certificate Manager. Sử dụng bất kỳ phương thức nào sau đây để tạo chứng chỉ bằng Trình quản lý chứng chỉ:
- Chứng chỉ tự quản lý theo khu vực. Để biết thông tin về cách tạo và sử dụng chứng chỉ tự quản lý theo khu vực, hãy xem phần triển khai chứng chỉ tự quản lý theo khu vực. Không hỗ trợ bản đồ chứng chỉ.
- Chứng chỉ theo khu vực do Google quản lý. Không hỗ trợ bản đồ chứng chỉ. Trình quản lý chứng chỉ hỗ trợ các loại chứng chỉ theo khu vực sau đây do Google quản lý:
- Chứng chỉ theo khu vực do Google quản lý có ủy quyền DNS theo từng dự án. Để biết thêm thông tin, hãy xem bài viết Triển khai chứng chỉ do Google quản lý theo khu vực.
- Chứng chỉ (riêng tư) theo khu vực do Google quản lý với Dịch vụ tổ chức phát hành chứng chỉ. Để biết thêm thông tin, hãy xem bài viết Triển khai chứng chỉ do Google quản lý theo khu vực bằng Dịch vụ CA.
10. Đưa VPC vào danh sách cho phép của Looker
Xem VPC được phép
Trong phần sau, bạn sẽ sử dụng giao diện người dùng Cloud Console để xem danh sách VPC được phép của Looker.
Trong Cloud Console, hãy chuyển đến:
Looker → Phiên bản Looker → Chi tiết
Ví dụ bên dưới, không có mục nào trong danh sách VPC được phép:
Cập nhật VPC được phép
Cập nhật thực thể Looker để hỗ trợ việc truy cập theo hướng bắc bằng cách thêm Looker-psc-demo làm VPC được phép.
Trong Cloud Console, hãy chuyển đến:
Looker → Phiên bản Looker → Chỉnh sửa
Kết nối → VPC được phép
Nhớ chọn dự án mà Looker-psc-demo được triển khai, sau đó là VPC Lookerer-psc-demo rồi chọn Tiếp tục.
Xác thực VPC được phép
Xem danh sách VPC được phép cập nhật
Trong Cloud Console, hãy chuyển đến:
Looker → Phiên bản Looker → Chi tiết
11. Tạo phần phụ trợ PSC
Looker PSC đóng vai trò là Nhà sản xuất dịch vụ tạo URI tệp đính kèm dịch vụ mà Người dùng dịch vụ sử dụng để triển khai các điểm cuối và phần phụ trợ nhằm có quyền truy cập phía bắc vào Looker. Trong bước sau, bạn sẽ xác định URI tệp đính kèm dịch vụ Looker PSC, sau đó tạo một phần phụ trợ Private Service Connect Network Endpoint Group (NEG) trong VPC của người tiêu dùng.
Xác định tệp đính kèm dịch vụ PSC của Looker
Trong Cloud Console, hãy chuyển đến và sao chép URI tệp đính kèm dịch vụ:
Looker → Phiên bản Looker → Chi tiết
Tạo nhóm thiết bị đầu cuối mạng PSC
Bên trong Cloud Shell, hãy thực hiện các bước sau để đảm bảo cập nhật psc-target-service:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=[UPDATE WITH YOU LOOKER SERVICE ATTACHMENT URI] \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
Ví dụ:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183 \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
Xác thực việc tạo nhóm cuối trên mạng PSC
Bên trong Cloud Shell, hãy thực hiện các bước sau, sau đó giá trị pscConnectionStatus được chấp nhận:
gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
Ví dụ:
user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
pscConnectionStatus: ACCEPTED
Tạo trình cân bằng tải cho ứng dụng theo khu vực
Trong các bước sau, bạn sẽ sử dụng Cloud Console để tạo bộ cân bằng tải ứng dụng bên ngoài theo khu vực, đồng thời liên kết các chứng chỉ đã tạo với cấu hình giao diện người dùng.
Trong Cloud Console, hãy chuyển đến:
Dịch vụ mạng → Cân bằng tải → Tạo trình cân bằng tải
Chọn các tuỳ chọn sau:
Tạo cấu hình giao diện người dùng
Chọn các lựa chọn sau đây và tuỳ chỉnh môi trường dựa trên quá trình triển khai của bạn:
- Khu vực dùng để triển khai cơ sở hạ tầng mạng
- Mạng con Chỉ proxy được tự động điền dựa trên khu vực của bạn
- IP tĩnh được xác định trước đây được cung cấp dựa trên khu vực bạn chọn
Khi chọn Chứng chỉ, hệ thống sẽ thả xuống tùy chọn sử dụng chứng chỉ hiện có hoặc mới:
Tải Chứng chỉ và Khoá riêng tư lên, sau đó chọn TẠO:
Chọn XONG để hoàn tất Cấu hình giao diện người dùng:
Tạo cấu hình phụ trợ
Chọn các lựa chọn sau:
Tạo quy tắc định tuyến
Chọn các tuỳ chọn sau đây (tuỳ chọn mặc định):
Xem lại và hoàn tất
Xác minh cấu hình rồi chọn CREATE (Tạo):
Trình cân bằng tải hiện đã được bật:
Truy cập vào giao diện người dùng Looker
Giờ đây, khi bộ cân bằng tải đang hoạt động, bạn có thể truy cập vào miền Looker tuỳ chỉnh thông qua trình duyệt web. Điều quan trọng cần lưu ý là bạn có thể gặp cảnh báo tuỳ thuộc vào loại chứng chỉ mà bạn đang sử dụng, ví dụ: chứng chỉ không đáng tin cậy so với chứng chỉ đáng tin cậy.
Dưới đây là ví dụ (giấy chứng nhận không đáng tin cậy) về việc truy cập vào miền tuỳ chỉnh Looker looker.cosmopup.com để có quyền truy cập phía bắc vào giao diện người dùng Looker:
12. Dọn dẹp
Xoá các thành phần của lớp học từ một thiết bị đầu cuối Cloud Shell
gcloud compute forwarding-rules delete regional-external-alb-fr --region=$region -q
gcloud compute target-https-proxies delete regional-external-alb-target-proxy --region=$region -q
gcloud compute url-maps delete regional-external-alb --region=$region -q
gcloud compute backend-services delete looker-psc-neg-backend-svc --region=$region -q
gcloud compute addresses delete regional-alb-static-ip --region=$region -q
gcloud compute network-endpoint-groups delete looker-northbound-neg --region=$region -q
gcloud compute networks delete looker-psc-demo -q
13. Xin chúc mừng
Xin chúc mừng! Bạn đã định cấu hình và xác thực thành công khả năng kết nối theo hướng bắc với Looker bằng miền của khách hàng và trình cân bằng tải ứng dụng bên ngoài theo khu vực.
Bạn đã tạo cơ sở hạ tầng người dùng, tìm hiểu cách tạo PSC NEG, miền tuỳ chỉnh và tìm hiểu các lựa chọn chứng chỉ khác nhau. Có rất nhiều tính năng thú vị để giúp bạn bắt đầu với Looker.
Cosmopup cho rằng lớp học lập trình thật tuyệt vời!!
Tiếp theo là gì?
Hãy xem một số lớp học lập trình này...
- Sử dụng Private Service Connect để phát hành và sử dụng dịch vụ
- Kết nối với các dịch vụ tại chỗ thông qua Mạng kết hợp bằng Private Service Connect và bộ cân bằng tải Proxy TCP nội bộ
- Quyền truy cập vào tất cả lớp học lập trình đã xuất bản của Private Service Connect
Tài liệu đọc thêm và video
Tài liệu tham khảo
- Sử dụng chứng chỉ SSL tự quản lý | Cân bằng tải | Google Cloud
- Triển khai chứng chỉ theo khu vực do Google quản lý
- Tạo phần phụ trợ Kết nối dịch vụ riêng tư | VPC | Google Cloud
- Tạo phần phụ trợ Kết nối dịch vụ riêng tư | VPC | Google Cloud
- Tạo một phiên bản Kết nối dịch vụ riêng tư của Looker (Google Cloud Core)
- Cách xuất bản một dịch vụ bằng Private Service Connect