Private Service Connect 64

1. Giới thiệu

Private Service Connect mang đến một cuộc cách mạng trong cách các tổ chức sử dụng dịch vụ trong hệ sinh thái Google Cloud, cung cấp đầy đủ khả năng hỗ trợ cho việc định địa chỉ IPv6 cùng với IPv4. Giải pháp này kết hợp tính năng bảo mật nâng cao, khả năng kết nối đơn giản, hiệu suất cải thiện và hoạt động quản lý tập trung, nhờ đó trở thành giải pháp lý tưởng cho những doanh nghiệp đang tìm kiếm một mô hình sử dụng dịch vụ mạnh mẽ, đáng tin cậy và hiệu quả, sẵn sàng cho tương lai của mạng. Cho dù bạn đang xây dựng một đám mây kết hợp, chia sẻ các dịch vụ trong tổ chức của mình hay truy cập vào các dịch vụ của bên thứ ba, PSC đều mang đến một con đường liền mạch và an toàn để khai thác toàn bộ tiềm năng của Google Cloud, đồng thời tận hưởng những lợi ích của IPv6.

Kiến thức bạn sẽ học được

  • Lợi ích chính của PSC 64
  • Bản dịch được hỗ trợ của Private Service Connect 64
  • Tổng quan về ULA ngăn xếp kép
  • Yêu cầu về mạng
  • Tạo dịch vụ của nhà cung cấp Private Service Connect
  • Tạo một điểm cuối Private Service Connect
  • Thiết lập kết nối đến điểm cuối Private Service Connect từ một máy ảo IPv4
  • Thiết lập kết nối đến điểm cuối Private Service Connect từ một máy ảo có ngăn xếp kép

Bạn cần có

  • Dự án trên Google Cloud có quyền của chủ sở hữu

2. Sản phẩm bạn sẽ tạo ra

Bạn sẽ thiết lập một mạng Nhà cung cấp để triển khai máy chủ web apache dưới dạng một dịch vụ đã xuất bản thông qua Private Service Connect (PSC). Sau khi xuất bản, bạn sẽ thực hiện các thao tác sau để xác thực quyền truy cập vào dịch vụ Nhà sản xuất:

  • Từ VPC của Người tiêu dùng, thực thể GCE IPv4, hãy nhắm đến Điểm cuối PSC IPv4 để tiếp cận dịch vụ của nhà sản xuất.
  • Từ VPC của Người tiêu dùng, thực thể GCE có ngăn xếp kép, nhắm đến Điểm cuối PSC IPv6 để tiếp cận dịch vụ của nhà sản xuất.

Các lợi ích chính của PSC 64

  • Tích hợp liền mạch: PSC tích hợp liền mạch với các mạng VPC được định cấu hình cho IPv6, cho phép bạn tận dụng các lợi ích của việc định địa chỉ IPv6 cho các kết nối dịch vụ.
  • Hỗ trợ ngăn xếp kép: PSC hỗ trợ các cấu hình ngăn xếp kép, cho phép sử dụng đồng thời IPv4 và IPv6 trong cùng một VPC, mang lại sự linh hoạt và đảm bảo mạng của bạn sẽ hoạt động trong tương lai.
  • Đơn giản hoá quá trình chuyển đổi: PSC đơn giản hoá quá trình chuyển đổi sang IPv6 bằng cách cho phép bạn dần dần áp dụng IPv6 cùng với cơ sở hạ tầng IPv4 hiện có.
  • Hỗ trợ nhà sản xuất: Nhà sản xuất không bắt buộc phải áp dụng ngăn xếp kép, thay vào đó, Người tiêu dùng có thể chọn triển khai Điểm cuối PSC IPv4 hoặc IPv6.

3. Bản dịch được hỗ trợ của Private Service Connect 64 và 66

Những điều cần cân nhắc đối với người tiêu dùng

Phiên bản IP của điểm cuối có thể là IPv4 hoặc IPv6, nhưng không được là cả hai. Người dùng có thể sử dụng địa chỉ IPv4 nếu mạng con của địa chỉ đó là single-stack. Người dùng có thể sử dụng địa chỉ IPv4 hoặc IPv6 nếu mạng con của địa chỉ đó là ngăn xếp kép. Người dùng có thể kết nối cả điểm cuối IPv4 và IPv6 với cùng một tệp đính kèm dịch vụ. Điều này có thể hữu ích khi di chuyển các dịch vụ sang IPv6.

Những điều cần cân nhắc đối với nhà sản xuất

Phiên bản IP của quy tắc chuyển tiếp của nhà sản xuất sẽ xác định phiên bản IP của tệp đính kèm dịch vụ và lưu lượng truy cập thoát khỏi tệp đính kèm dịch vụ. Phiên bản IP của tệp đính kèm dịch vụ có thể là IPv4 hoặc IPv6, nhưng không thể là cả hai. Nhà sản xuất có thể sử dụng địa chỉ IPv4 nếu mạng con của địa chỉ đó là ngăn xếp đơn. Nhà sản xuất có thể sử dụng địa chỉ IPv4 hoặc IPv6 nếu mạng con của địa chỉ đó là ngăn xếp kép.

Phiên bản IP của địa chỉ IP trong quy tắc chuyển tiếp của nhà sản xuất phải tương thích với loại ngăn xếp của mạng con NAT trong tệp đính kèm dịch vụ.

  • Nếu quy tắc chuyển tiếp của nhà sản xuất là IPv4, thì mạng con NAT có thể là mạng đơn hoặc mạng kép.
  • Nếu quy tắc chuyển tiếp của nhà sản xuất là IPv6, thì mạng con NAT phải là mạng con có hai ngăn xếp.

Bạn có thể kết hợp các chế độ sau đây cho cấu hình được hỗ trợ:

  • Điểm cuối IPv4 đến tệp đính kèm dịch vụ IPv4
  • Điểm cuối IPv6 đến tệp đính kèm dịch vụ IPv6
  • Điểm cuối IPv6 đến tệp đính kèm dịch vụ IPv4 Trong cấu hình này, Private Service Connect tự động dịch giữa hai phiên bản IP.

Các tính năng sau đây không được hỗ trợ:

Private Service Connect không hỗ trợ việc kết nối một điểm cuối IPv4 với một tệp đính kèm dịch vụ IPv6. Trong trường hợp này, quá trình tạo điểm cuối sẽ không thành công và hiện thông báo lỗi sau:

Quy tắc chuyển tiếp Private Service Connect có địa chỉ IPv4 không thể nhắm đến một tệp đính kèm dịch vụ IPv6.

4. Tổng quan về ULA ngăn xếp kép

Google Cloud hỗ trợ việc tạo các mạng con và máy ảo IPv6 riêng tư ULA. RFC 4193 xác định một lược đồ địa chỉ IPv6 để giao tiếp cục bộ, lý tưởng cho giao tiếp nội bộ VPC. Địa chỉ ULA không thể định tuyến trên toàn cầu, vì vậy, các VM của bạn hoàn toàn tách biệt với Internet, mang lại hành vi tương tự như RFC-1918 bằng IPv6. Google Cloud cho phép tạo tiền tố ULA mạng VPC /48 để tất cả các mạng con ULA IPv6 /64 đều được chỉ định từ dải mạng VPC đó.

Tương tự như địa chỉ IPv6 bên ngoài duy nhất trên toàn cầu mà Google Cloud hỗ trợ, mỗi mạng con được bật ULA IPv6 sẽ nhận được một mạng con /64 từ dải ULA mạng VPC /48 và mỗi VM sẽ được chỉ định một địa chỉ /96 từ mạng con đó.

RFC4193 xác định không gian địa chỉ IPv6 trong dải fc00::/7. Bạn có thể phân bổ và sử dụng địa chỉ ULA một cách tự do trong các mạng/trang web riêng tư. Google Cloud chỉ định tất cả các địa chỉ ULA trong dải fd20::/20. Những địa chỉ này chỉ có thể định tuyến trong phạm vi VPC và không thể định tuyến trong Internet IPv6 toàn cầu.

Google Cloud đảm bảo rằng các địa chỉ ULA được chỉ định là duy nhất trên tất cả các mạng VPC. Google Cloud đảm bảo rằng không có hai mạng VPC nào được chỉ định cùng một tiền tố ULA. Điều này giúp loại bỏ vấn đề về các dải địa chỉ trùng lặp trong mạng VPC.

Bạn có thể cho phép Google Cloud tự động chỉ định /48 cho mạng của bạn hoặc bạn có thể chọn một tiền tố IPv6 /48 cụ thể. Nếu tiền tố IPv6 mà bạn chỉ định đã được chỉ định cho một VPC khác hoặc trên mạng tại cơ sở của bạn, thì bạn có thể chọn một dải khác.

5. Yêu cầu về mạng

Dưới đây là bảng chi tiết về các yêu cầu đối với mạng cho mạng Consumer và Producer:

Mạng lưới người tiêu dùng (tất cả các thành phần được triển khai trong us-central1)

Thành phần

Mô tả

VPC

Tính năng nối mạng hai ngăn xếp yêu cầu một VPC ở chế độ tuỳ chỉnh có ULA được bật

Điểm cuối PSC

  • Điểm cuối PSC IPv4 dùng để truy cập vào Dịch vụ của nhà cung cấp
  • Điểm cuối PSC IPV6 dùng để truy cập vào Dịch vụ của nhà cung cấp

Mạng con

IPv4 và ngăn xếp kép

GCE

IPv4 và ngăn xếp kép

Mạng nhà sản xuất(tất cả các thành phần được triển khai trong us-central1)

Thành phần

Mô tả

VPC

VPC ở chế độ tuỳ chỉnh, ULA chưa được bật

Mạng con NAT PSC

IPv4. Các gói từ mạng VPC của người dùng được dịch bằng NAT nguồn (SNAT) để địa chỉ IP nguồn ban đầu của các gói được chuyển đổi thành địa chỉ IP nguồn từ mạng con NAT trong mạng VPC của nhà sản xuất.

Quy tắc chuyển tiếp PSC

IPv4. Trình cân bằng tải mạng chuyển tiếp nội bộ

Kiểm tra tình trạng

Một quy tắc lưu lượng truy cập đến, áp dụng cho các phiên bản đang được cân bằng tải, cho phép lưu lượng truy cập từ các hệ thống kiểm tra tình trạng của Google Cloud (130.211.0.0/22 và 35.191.0.0/16).

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 nhóm phiên bản không được quản lý.

Nhóm thực thể không được quản lý

Hỗ trợ các máy ảo yêu cầu cấu hình hoặc điều chỉnh riêng lẻ. Không hỗ trợ tính năng tự động điều chỉnh quy mô.

6. Cấu trúc liên kết lớp học lập trình

b52931afd997d61.png

7. Thiết lập và yêu cầu

Thiết lập môi trường theo tốc độ của riêng bạn

  1. Đă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.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Tên dự án là tên hiển thị của những người tham gia dự án này. Đây là một chuỗi ký tự mà các API của Google không sử dụng. Bạn luôn có thể cập nhật thông tin này.
  • Mã dự án là mã duy nhất trên tất cả các dự án trên Google Cloud và không thể thay đổi (bạn không thể thay đổi mã này sau khi đã đặt). Cloud Console sẽ tự động tạo một chuỗi duy nhất; thường thì bạn không cần quan tâm đến chuỗi này. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham chiếu đến Mã dự án (thường được xác định là PROJECT_ID). Nếu không thích mã nhận dạng được tạo, bạn có thể tạo một mã nhận dạng ngẫu nhiên khác. Hoặc bạn có thể thử tên người dùng của riêng mình để xem tên đó có được chấp nhận hay không. Bạn không thể thay đổi tên này sau bước này và tên này sẽ tồn tại trong suốt thời gian của dự án.
  • Để bạn nắm được thông tin, có một giá trị thứ ba là Số dự án mà một số API sử dụng. Tìm hiểu thêm về cả 3 giá trị này trong tài liệu.
  1. Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên/API trên Cloud. Việc thực hiện lớp học lập trình này sẽ không tốn nhiều chi phí, nếu có. Để tắt các tài nguyên nhằm tránh bị tính phí ngoài phạm vi 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í trị giá 300 USD.

Khởi động Cloud Shell

Mặc dù 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 trên Cloud.

Trên 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:

55efc1aaa7a4d3ad.png

Quá trình này chỉ mất vài phút để cung cấp và kết nối với môi trường. Khi quá trình này kết thúc, bạn sẽ thấy như sau:

7ffe5cbb04455448.png

Máy ảo này được trang bị tất cả các công cụ phát triển mà bạn cần. Nó cung cấp một thư mục chính có dung lượng 5 GB và chạy trên Google Cloud, giúp tăng cường đáng kể hiệu suất mạng và hoạt động xác thực. Bạn có thể thực hiện mọi thao tác trong lớp học lập trình này trong trình duyệt. Bạn không cần cài đặt bất cứ thứ gì.

8. Trước khi bắt đầu

Bật API

Trong Cloud Shell, hãy đảm bảo rằng 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=us-central1
echo $project
echo $region

Bật tất cả các dịch vụ cần thiết:

gcloud services enable compute.googleapis.com

9. Tạo mạng VPC của nhà sản xuất

Mạng VPC

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute networks create producer-vpc --subnet-mode custom

Tạo mạng con

Mạng con PSC sẽ được liên kết với PSC Service Attachment (Tệp đính kèm dịch vụ PSC) cho mục đích Dịch địa chỉ mạng. Đối với các trường hợp sử dụng trong môi trường sản xuất, bạn cần điều chỉnh kích thước của mạng con này cho phù hợp để hỗ trợ lượng lưu lượng truy cập đến từ tất cả các điểm cuối PSC được đính kèm. Hãy xem tài liệu về việc định cỡ mạng con NAT PSC để biết thêm thông tin.

Trong Cloud Shell, hãy tạo Mạng con NAT PSC:

gcloud compute networks subnets create producer-psc-nat-subnet --network producer-vpc --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT

Trong Cloud Shell, hãy tạo mạng con quy tắc chuyển tiếp của nhà sản xuất:

gcloud compute networks subnets create producer-psc-fr-subnet --network producer-vpc --range 172.16.20.0/28 --region $region --enable-private-ip-google-access

Trong Cloud Shell, hãy tạo mạng con vm của nhà sản xuất:

gcloud compute networks subnets create producer-psc-vm-subnet --network producer-vpc --range 172.16.30.0/28 --region $region --enable-private-ip-google-access

Tạo cổng NAT công khai

producer-vm cần có quyền truy cập vào Internet để tải apache xuống, tuy nhiên, thực thể GCE không có IP ngoài; do đó, Cloud NAT sẽ cung cấp quyền truy cập Internet để tải gói xuống.

Trong Cloud Shell, hãy tạo Cloud Router:

gcloud compute routers create producer-cloud-router --network producer-vpc --region us-central1

Trong Cloud Shell, hãy tạo cổng Cloud NAT để cho phép lưu lượng truy cập internet đi ra:

gcloud compute routers nats create producer-nat-gw --router=producer-cloud-router --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1

Tạo chính sách tường lửa mạng và quy tắc tường lửa

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute network-firewall-policies create producer-vpc-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy producer-vpc-policy --network producer-vpc --name producer-vpc --global-firewall-policy

Để cho phép IAP kết nối với các phiên bản máy ảo, hãy tạo một quy tắc tường lửa có:

  • Áp dụng cho tất cả các phiên bản máy ảo mà bạn muốn có thể truy cập bằng IAP.
  • Cho phép lưu lượng truy cập vào từ dải IP 35.235.240.0/20. Dải này chứa tất cả địa chỉ IP mà IAP sử dụng để chuyển tiếp TCP.

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy producer-vpc-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22  --global-firewall-policy

Quy tắc tường lửa sau đây cho phép lưu lượng truy cập từ dải địa chỉ của lệnh kiểm tra tình trạng đến tất cả các thực thể trong mạng. Trong môi trường sản xuất, quy tắc tường lửa này chỉ nên giới hạn ở những thực thể được liên kết với dịch vụ nhà sản xuất cụ thể.

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute network-firewall-policies rules create 2000 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from health check probe range" --direction INGRESS --src-ip-ranges 130.211.0.0/22,35.191.0.0/16 --layer4-configs tcp:80 --global-firewall-policy

Quy tắc tường lửa sau đây cho phép lưu lượng truy cập từ dải mạng con NAT PSC đến tất cả các phiên bản trong mạng. Trong môi trường sản xuất, quy tắc tường lửa này chỉ nên giới hạn ở những thực thể được liên kết với dịch vụ nhà sản xuất cụ thể.

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp

Tạo VM Producer

Trong Cloud Shell, hãy tạo máy chủ web apache producer-vm:

gcloud compute instances create producer-vm \
    --project=$project \
    --machine-type=e2-micro \
    --image-family debian-12 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=producer-psc-vm-subnet \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to Producer-VM !!' | tee /var/www/html/index.html
      EOF"

Trong Cloud Shell, hãy tạo nhóm thực thể không được quản lý bao gồm thực thể producer-vm và quy trình kiểm tra tình trạng:

gcloud compute instance-groups unmanaged create producer-instance-group --zone=us-central1-a

gcloud compute instance-groups unmanaged add-instances producer-instance-group  --zone=us-central1-a --instances=producer-vm

gcloud compute health-checks create http hc-http-80 --port=80

10. Tạo dịch vụ nhà sản xuất

Tạo các thành phần của trình cân bằng tải

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute backend-services create producer-backend-svc --load-balancing-scheme=internal --protocol=tcp --region=us-central1 --health-checks=hc-http-80

gcloud compute backend-services add-backend producer-backend-svc --region=us-central1 --instance-group=producer-instance-group --instance-group-zone=us-central1-a

Trong cú pháp sau, hãy tạo một quy tắc chuyển tiếp (trình cân bằng tải mạng nội bộ) có Địa chỉ IP được xác định trước là 172.16.2.3 được liên kết với dịch vụ phụ trợ, producer-backend-svc

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute forwarding-rules create producer-fr --region=us-central1 --load-balancing-scheme=internal --network=producer-vpc --subnet=producer-psc-fr-subnet --address=172.16.20.3 --ip-protocol=TCP --ports=all --backend-service=producer-backend-svc --backend-service-region=us-central1

Tạo tệp đính kèm dịch vụ

Trong Cloud Shell, hãy tạo Service Attachment:

gcloud compute service-attachments create ipv4-producer-svc-attachment --region=$region --producer-forwarding-rule=producer-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet

Tiếp theo, hãy lấy và ghi lại Service Attachment có trong URI selfLink bắt đầu bằng projects để định cấu hình điểm cuối PSC trong môi trường người dùng.

selfLink: projects/<your-project-id>/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region

Ví dụ về kết quả đầu ra dự kiến

user@cloudshell:~ (projectid)$ gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-26T07:08:01.625-07:00'
description: ''
enableProxyProtocol: false
fingerprint: USOMy1eQKyM=
id: '1401660514263708334'
kind: compute#serviceAttachment
name: ipv4-producer-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '85245007652455400'
  low: '1401660514263708334'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/forwardingRules/producer-fr

Trong Cloud Console, hãy chuyển đến:

Dịch vụ mạng → Private Service Connect → Dịch vụ đã phát hành

9166d64204ec31c3.png

1b5feeca51b6533e.png

11. Tạo mạng VPC của người tiêu dùng

Mạng VPC

Trong Cloud Shell, hãy tạo VPC người dùng có bật ULA IPv6:

gcloud compute networks create consumer-vpc \
    --subnet-mode=custom \
    --enable-ula-internal-ipv6

Google phân bổ một mạng con /48 duy nhất trên toàn cầu cho VPC của người tiêu dùng. Để xem việc phân bổ, hãy thực hiện các bước sau:

Trong Cloud Console, hãy chuyển đến:

Mạng VPC

c847bd7c20e3677d.png

Tạo mạng con

Trong Cloud Shell, hãy tạo mạng con IPv4 GCE:

gcloud compute networks subnets create consumer-v4-subnet --network consumer-vpc --range=192.168.10.0/28 --region $region --enable-private-ip-google-access

Trong Cloud Shell, hãy tạo mạng con điểm cuối PSC IPv4:

gcloud compute networks subnets create psc-ipv4-endpoint-subnet --network consumer-vpc --range=192.168.11.0/28 --region $region --enable-private-ip-google-access

Trong Cloud Shell, hãy tạo mạng con GCE có hai ngăn xếp:

gcloud compute networks subnets create consumer-dual-stack-subnet --network consumer-vpc --range=192.168.20.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

Trong Cloud Shell, hãy tạo mạng con điểm cuối PSC có ngăn xếp kép:

gcloud compute networks subnets create psc-dual-stack-endpoint-subnet --network consumer-vpc --range=192.168.21.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

Tạo chính sách tường lửa mạng và quy tắc tường lửa

Trong Cloud Shell, hãy thực hiện các bước sau:

gcloud compute network-firewall-policies create consumer-vpc-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy consumer-vpc-policy --network consumer-vpc --name consumer-vpc --global-firewall-policy

gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy consumer-vpc-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22  --global-firewall-policy

Mạng người dùng chỉ cần có quyền truy cập SSH từ IAP.

12. Tạo máy ảo, điểm cuối PSC và kiểm tra khả năng kết nối IPv4

Tạo Test VM

Trong Cloud Shell, hãy tạo phiên bản GCE IPv4 trong mạng con IPv4:

gcloud compute instances create consumer-vm-ipv4 --zone=us-central1-a --subnet=consumer-v4-subnet --no-address

Tạo IP tĩnh của điểm cuối PSC

Trong Cloud Shell, hãy tạo một địa chỉ IP tĩnh cho điểm cuối PSC.

gcloud compute addresses create psc-ipv4-endpoint-ip --region=$region --subnet=psc-ipv4-endpoint-subnet --addresses 192.168.11.13

Tạo điểm cuối PSC IPv4

Trong Cloud Shell, hãy tạo điểm cuối PSC bằng cách cập nhật URI SERVICE ATTACHMENT bằng URI mà bạn đã ghi lại khi tạo Service Attachment.

gcloud compute forwarding-rules create psc-ipv4-endpoint --region=$region --network=consumer-vpc --address=psc-ipv4-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

Xác thực điểm cuối PSC

Hãy xác nhận rằng Nhà sản xuất đã chấp nhận điểm cuối PSC. Trong Cloud Console, hãy chuyển đến:

Dịch vụ mạng → Private Service Connect → Điểm cuối được kết nối

ac858b2db226e58a.png

Kiểm thử khả năng kết nối

Trong Cloud Shell, hãy ssh vào phiên bản GCE, consumer-vm-ipv4.

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4" --tunnel-through-iap --project $project

Bây giờ, bạn đã đăng nhập vào phiên bản GCE, hãy thực hiện một lệnh curl đến điểm cuối psc, psc-ipv4-endpoint 192.168.11.13

Trong phiên bản GCE consumer-vm-ipv4, hãy thực hiện một lệnh curl:

curl 192.168.11.13

Kết quả đầu ra dự kiến:

user@consumer-vm-ipv4:~$ curl 192.168.11.13
Welcome to Producer-VM !!

Trong thực thể GCE consumer-vm-ipv4, hãy đăng xuất khỏi thực thể bằng cách thoát, thao tác này sẽ đưa bạn quay lại Cloud Shell.

exit

Kết quả đầu ra dự kiến:

user@consumer-vm-ipv4:~$ exit
logout
Connection to compute.6833450446005281720 closed.

13. Tạo máy ảo, điểm cuối PSC và kiểm tra khả năng kết nối ngăn xếp kép

Tạo Máy ảo thử nghiệm có hai ngăn xếp

Trong Cloud Shell, hãy tạo thực thể GCE có hai ngăn xếp trong mạng con có hai ngăn xếp:

gcloud compute instances create consumer-vm-ipv4-ipv6 --zone=us-central1-a --subnet=consumer-dual-stack-subnet --no-address --stack-type=IPV4_IPV6

Tạo địa chỉ IPv6 tĩnh cho điểm cuối PSC

Trong Cloud Shell, hãy tạo một địa chỉ IPv6 tĩnh cho điểm cuối PSC:

gcloud compute addresses create psc-ipv6-endpoint-ip --region=$region --subnet=psc-dual-stack-endpoint-subnet --ip-version=IPV6

Lấy địa chỉ IPv6 tĩnh của điểm cuối PSC

Trong Cloud Shell, hãy lấy địa chỉ IPv6 PSC mà bạn sẽ dùng để truy cập vào dịch vụ của Nhà sản xuất:

gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:

Ví dụ về đầu ra:

user@cloudshell$ gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:
address: 'fd20:2eb:7252:2::'

Tạo điểm cuối PSC IPv6

Trong Cloud Shell, hãy tạo điểm cuối PSC bằng cách cập nhật URI SERVICE ATTACHMENT bằng URI mà bạn đã ghi lại khi tạo Service Attachment.

gcloud compute forwarding-rules create psc-ipv6-endpoint --region=$region --network=consumer-vpc --address=psc-ipv6-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

Xác thực điểm cuối PSC

Hãy xác nhận rằng Nhà sản xuất đã chấp nhận điểm cuối PSC. Trong Cloud Console, hãy chuyển đến:

Dịch vụ mạng → Private Service Connect → Điểm cuối được kết nối

957b74e89f3ad837.png

Kiểm thử khả năng kết nối

Trong Cloud Shell, hãy SSH vào thực thể GCE có ngăn xếp kép, consumer-vm-ipv4-ipv6 và thực hiện một lệnh curl đến điểm cuối PSC IPv6, psc-ipv6-endpoint, để xác thực quyền truy cập vào dịch vụ Producer.

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4-ipv6" --tunnel-through-iap --project $project

Giờ đây, khi bạn đã đăng nhập vào thực thể GCE ngăn xếp kép, hãy thực hiện một lệnh curl đến điểm cuối psc, psc-dual-stack-endpoint bằng địa chỉ IPv6 mà bạn đã xác định ở bước trước.

Trong thực thể GCE consumer-vm-ipv4-ipv6, hãy thực hiện một lệnh curl đến điểm cuối PSC IPv6 được xác định trong bước Lấy IPv6 tĩnh của điểm cuối PSC.

curl -6 http://[insert-your-ipv6-psc-endpoint]

Kết quả đầu ra dự kiến:

user@consumer-vm-ipv4-ipv6$ curl -6 http://[fd20:2eb:7252:2::]
Welcome to Producer-VM !!

Trong thực thể GCE consumer-vm-ipv4-ipv6, hãy đăng xuất khỏi thực thể bằng cách thoát, thao tác này sẽ đưa bạn quay lại Cloud Shell.

exit

Kết quả đầu ra dự kiến:

user@consumer-vm-ipv4-ipv6:~$ exit
logout
Connection to compute.6162185519072639197 closed.

14. Các bước dọn dẹp

Xoá các thành phần trong phòng thí nghiệm khỏi một thiết bị đầu cuối Cloud Shell

gcloud compute service-attachments delete ipv4-producer-svc-attachment --region=us-central1 -q

gcloud compute forwarding-rules delete psc-ipv6-endpoint psc-ipv4-endpoint --region=us-central1 -q

gcloud compute instances delete consumer-vm-ipv4 consumer-vm-ipv4-ipv6 --zone=us-central1-a -q

gcloud compute network-firewall-policies rules delete 1000 --firewall-policy=consumer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=consumer-vpc-policy  --name=consumer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete consumer-vpc-policy --global -q

gcloud compute addresses delete psc-ipv4-endpoint-ip psc-ipv6-endpoint-ip --region=us-central1 -q

gcloud compute networks subnets delete consumer-v4-subnet psc-ipv4-endpoint-subnet consumer-dual-stack-subnet psc-dual-stack-endpoint-subnet --region=us-central1 -q

gcloud compute networks delete consumer-vpc -q

gcloud compute forwarding-rules delete producer-fr --region=us-central1 -q

gcloud compute backend-services delete producer-backend-svc --region=us-central1 -q

gcloud compute health-checks delete hc-http-80 -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 2000 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 1000 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=producer-vpc-policy  --name=producer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete producer-vpc-policy --global -q

gcloud compute instance-groups unmanaged delete producer-instance-group --zone=us-central1-a -q

gcloud compute instances delete producer-vm --zone=us-central1-a -q

gcloud compute routers nats delete producer-nat-gw --router=producer-cloud-router --router-region=us-central1 -q

gcloud compute routers delete producer-cloud-router --region=us-central1 -q

gcloud compute networks subnets delete producer-psc-fr-subnet  producer-psc-vm-subnet producer-psc-nat-subnet --region=us-central1 -q

gcloud compute networks delete producer-vpc -q

15. 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 Private Service Connect 64.

Bạn đã tạo cơ sở hạ tầng nhà sản xuất, tìm hiểu cách tạo một điểm cuối người dùng IPv4 và IPv6 trong mạng VPC của người dùng cho phép kết nối với dịch vụ Nhà sản xuất.

Cosmopup cho rằng các lớp học lập trình rất tuyệt!!

c911c127bffdee57.jpeg

Tiếp theo là gì?

Hãy xem một số lớp học lập trình này...

Tài liệu đọc thêm và video

Tài liệu tham khảo