Agentspace ไปยังฐานข้อมูลที่โฮสต์ด้วยตนเองของ Zonal NEG

1. บทนำ

ในโค้ดแล็บนี้ คุณจะทำให้ตัวจัดสรรภาระงานพร็อกซี TCP ภายในและกลุ่มปลายทางเครือข่ายระดับโซน (NEG) ใช้งานได้ ซึ่งเผยแพร่เป็นบริการผู้ผลิต PSC NEG จะประกอบด้วยอินสแตนซ์ Compute อย่างน้อย 1 รายการใน GCP ที่โฮสต์ฐานข้อมูลด้วยตนเอง เช่น JIRA, Confluence, Sharepoint

Private Service Connect เป็นความสามารถของเครือข่าย Google Cloud ที่ช่วยให้ผู้ใช้เข้าถึงบริการที่มีการจัดการแบบส่วนตัวจากภายในเครือข่าย VPC ได้ ในทำนองเดียวกัน ก็ยังช่วยให้ผู้ให้บริการที่มีการจัดการโฮสต์บริการเหล่านี้ใน VPC หรือเครือข่ายข้ามระบบคลาวด์ของตนเองได้ ซึ่งจะช่วยให้ผู้ให้บริการเชื่อมต่อกับผู้บริโภคแบบส่วนตัวได้ ตัวอย่างเช่น เมื่อใช้ Private Service Connect เพื่อเข้าถึง NEG ระดับโซน คุณจะเป็นผู้ผลิตบริการ และ Google (Agentspace) จะเป็นผู้ใช้บริการ

สิ่งที่คุณจะได้เรียนรู้

  • ข้อกำหนดเกี่ยวกับเครือข่ายสำหรับ Agentspace
  • แนวทางปฏิบัติแนะนำในการสร้างเครือข่าย Agentspace
  • สร้างบริการของผู้ผลิต Private Service Connect

สิ่งที่ต้องมี

  • โปรเจ็กต์ Google Cloud ที่มีสิทธิ์เจ้าของ

2. สิ่งที่คุณจะสร้าง

คุณจะสร้างเครือข่ายผู้ผลิต agentspace-psc-demo เพื่อติดตั้งใช้งานตัวจัดสรรภาระงานพร็อกซี TCP ภายในและ NEG ระดับโซนที่เผยแพร่เป็นบริการผ่าน Private Service Connect (PSC)

3. ข้อกำหนดเกี่ยวกับเครือข่าย

ด้านล่างนี้คือรายละเอียดข้อกำหนดของเครือข่ายสำหรับเครือข่าย Producer ซึ่ง Consumer ใน Codelab นี้คือ Agentspace

คอมโพเนนต์

คำอธิบาย

VPC (agentspace-psc-demo)

VPC โหมดที่กำหนดเอง

ซับเน็ต NAT ของ PSC

ระบบจะแปลแพ็กเก็ตจากเครือข่าย VPC ของผู้บริโภคโดยใช้ Source NAT (SNAT) เพื่อแปลงที่อยู่ IP ต้นทางเดิมเป็นที่อยู่ IP ต้นทางจากซับเน็ต NAT ในเครือข่าย VPC ของผู้ผลิต PSC NAT รองรับซับเน็ต /29 ต่อ Service Attachment

ซับเน็ตของกฎการส่งต่อ PSC

ใช้เพื่อจัดสรรที่อยู่ IP สำหรับตัวจัดสรรภาระงานพร็อกซี TCP ภายในระดับภูมิภาค ระบบจะถือว่าซับเน็ตของกฎการส่งต่อเป็นซับเน็ตปกติ

ซับเน็ต NEG

ใช้เพื่อจัดสรรที่อยู่ IP สำหรับกลุ่มปลายทางเครือข่ายจากซับเน็ตปกติ

ซับเน็ตเฉพาะพร็อกซี

พร็อกซี แต่ละรายการของตัวจัดสรรภาระงานจะได้รับที่อยู่ IP ภายใน แพ็กเก็ตที่ส่งจากพร็อกซีไปยัง VM แบ็กเอนด์หรือกลุ่มปลายทางเครือข่ายจะมีที่อยู่ IP ต้นทางจากซับเน็ตแบบพร็อกซีเท่านั้น แนะนำ ให้ใช้ซับเน็ต /23 แต่ระบบรองรับซับเน็ต /26 ซึ่งเป็นซับเน็ตขั้นต่ำ ต้องระบุซับเน็ตพร็อกซีระดับภูมิภาค 1 รายการต่อภูมิภาค

บริการแบ็กเอนด์

บริการแบ็กเอนด์ทำหน้าที่เป็นตัวเชื่อมระหว่างตัวจัดสรรภาระงานกับทรัพยากรแบ็กเอนด์ ในบทแนะนำนี้ บริการแบ็กเอนด์จะเชื่อมโยงกับ NEG ระดับโซน

4. แนวทางปฏิบัติแนะนำ

  • NEG ระดับโซนรองรับอินสแตนซ์ GCE ระดับโซนอย่างน้อย 1 รายการโดยอิงตาม GCE_VM_IP_PORT
  • เปิดใช้การเข้าถึงทั่วโลกในกฎการส่งต่อของผู้ผลิตก่อนสร้าง Service Attachment
  • เปิดใช้สิทธิ์เข้าถึงทั่วโลกเมื่อสร้างปลายทาง Agentspace
  • ตัวจัดสรรภาระงานพร็อกซี TCP ภายในยังรองรับกลุ่มอินสแตนซ์ที่มีการจัดการและไม่มีการจัดการด้วย
  • สามารถเปิดเผยตัวจัดสรรภาระงานพร็อกซี TCP หรือตัวจัดสรรภาระงานแบบส่งผ่านของ Google Cloud ที่มีอยู่เป็นบริการของผู้ผลิตได้

5. โทโพโลยี Codelab

9a8a948b0a4ad91e.png

6. การตั้งค่าและข้อกำหนด

การตั้งค่าสภาพแวดล้อมแบบเรียนรู้ด้วยตนเอง

  1. ลงชื่อเข้าใช้ Google Cloud Console แล้วสร้างโปรเจ็กต์ใหม่หรือใช้โปรเจ็กต์ที่มีอยู่ซ้ำ หากยังไม่มีบัญชี Gmail หรือ Google Workspace คุณต้องสร้างบัญชี

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • ชื่อโปรเจ็กต์คือชื่อที่แสดงสำหรับผู้เข้าร่วมโปรเจ็กต์นี้ ซึ่งเป็นสตริงอักขระที่ Google APIs ไม่ได้ใช้ โดยคุณจะอัปเดตได้ทุกเมื่อ
  • รหัสโปรเจ็กต์จะไม่ซ้ำกันในโปรเจ็กต์ Google Cloud ทั้งหมดและเปลี่ยนแปลงไม่ได้ (เปลี่ยนไม่ได้หลังจากตั้งค่าแล้ว) Cloud Console จะสร้างสตริงที่ไม่ซ้ำกันโดยอัตโนมัติ ซึ่งโดยปกติแล้วคุณไม่จำเป็นต้องสนใจว่าสตริงนั้นคืออะไร ใน Codelab ส่วนใหญ่ คุณจะต้องอ้างอิงรหัสโปรเจ็กต์ (โดยปกติจะระบุเป็น PROJECT_ID) หากไม่ชอบรหัสที่สร้างขึ้น คุณอาจสร้างรหัสแบบสุ่มอีกรหัสหนึ่งได้ หรือคุณอาจลองใช้ชื่อของคุณเองและดูว่ามีชื่อนั้นหรือไม่ คุณจะเปลี่ยนแปลงรหัสนี้หลังจากขั้นตอนนี้ไม่ได้ และรหัสจะคงอยู่ตลอดระยะเวลาของโปรเจ็กต์
  • โปรดทราบว่ายังมีค่าที่ 3 ซึ่งคือหมายเลขโปรเจ็กต์ที่ API บางตัวใช้ ดูข้อมูลเพิ่มเติมเกี่ยวกับค่าทั้ง 3 นี้ได้ในเอกสารประกอบ
  1. จากนั้นคุณจะต้องเปิดใช้การเรียกเก็บเงินใน Cloud Console เพื่อใช้ทรัพยากร/API ของ Cloud การทำตาม Codelab นี้จะไม่เสียค่าใช้จ่ายมากนัก หรืออาจไม่เสียเลย หากต้องการปิดทรัพยากรเพื่อหลีกเลี่ยงการเรียกเก็บเงินนอกเหนือจากบทแนะนำนี้ คุณสามารถลบทรัพยากรที่สร้างขึ้นหรือลบโปรเจ็กต์ได้ ผู้ใช้ Google Cloud รายใหม่มีสิทธิ์เข้าร่วมโปรแกรมช่วงทดลองใช้ฟรีมูลค่า$300 USD

เริ่มต้น Cloud Shell

แม้ว่าคุณจะใช้งาน Google Cloud จากระยะไกลจากแล็ปท็อปได้ แต่ใน Codelab นี้คุณจะใช้ Google Cloud Shell ซึ่งเป็นสภาพแวดล้อมบรรทัดคำสั่งที่ทำงานในระบบคลาวด์

จาก Google Cloud Console ให้คลิกไอคอน Cloud Shell ในแถบเครื่องมือด้านขวาบน

55efc1aaa7a4d3ad.png

การจัดสรรและเชื่อมต่อกับสภาพแวดล้อมจะใช้เวลาเพียงไม่กี่นาที เมื่อเสร็จแล้ว คุณควรเห็นข้อความคล้ายกับตัวอย่างนี้

7ffe5cbb04455448.png

เครื่องเสมือนนี้มาพร้อมเครื่องมือพัฒนาทั้งหมดที่คุณต้องการ โดยมีไดเรกทอรีหลักแบบถาวรขนาด 5 GB และทำงานบน Google Cloud ซึ่งช่วยเพิ่มประสิทธิภาพเครือข่ายและการตรวจสอบสิทธิ์ได้อย่างมาก คุณสามารถทำงานทั้งหมดในโค้ดแล็บนี้ได้ภายในเบราว์เซอร์ คุณไม่จำเป็นต้องติดตั้งอะไร

7. ก่อนเริ่มต้น

เปิดใช้ API

ใน Cloud Shell ให้ตรวจสอบว่าได้ตั้งค่ารหัสโปรเจ็กต์แล้ว

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone1a=[YOUR-ZONE1a]
zone1b=[YOUR-ZONE1b]
echo $project
echo $region
echo $zone1a
echo $zone1b

เปิดใช้บริการที่จำเป็นทั้งหมด

gcloud services enable compute.googleapis.com

8. สร้างเครือข่าย VPC ของผู้ผลิต

เครือข่าย VPC

ใน Cloud Shell ให้ทำดังนี้

gcloud compute networks create agentspace-psc-demo --subnet-mode custom

สร้างซับเน็ต

ซับเน็ต PSC จะเชื่อมโยงกับไฟล์แนบบริการ PSC เพื่อวัตถุประสงค์ในการแปลที่อยู่เครือข่าย

สร้างซับเน็ต NAT ของ PSC ภายใน Cloud Shell โดยทำดังนี้

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

สร้างเครือข่ายย่อยของกฎการส่งต่อ Producer ใน Cloud Shell โดยทำดังนี้

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

สร้างเครือข่ายย่อยของกลุ่มปลายทางของเครือข่ายภายใน Cloud Shell โดยทำดังนี้

gcloud compute networks subnets create neg-subnet --network agentspace-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access

สร้างซับเน็ตเฉพาะพร็อกซีระดับภูมิภาคของ Producer ภายใน Cloud Shell

gcloud compute networks subnets create $region-proxy-only-subnet \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=$region \
  --network=agentspace-psc-demo \
  --range=10.10.10.0/24

สำรองที่อยู่ IP ของตัวจัดสรรภาระงาน

ใน Cloud Shell ให้จองที่อยู่ IP ภายในสำหรับตัวจัดสรรภาระงานโดยทำดังนี้

gcloud compute addresses create zonal-neg-lb-ip \
  --region=$region \
  --subnet=producer-psc-fr-subnet

ดูที่อยู่ IP ที่สงวนไว้ภายใน Cloud Shell

gcloud compute addresses describe zonal-neg-lb-ip \
  --region=$region | grep -i address:

ตัวอย่างเอาต์พุต

gcloud compute addresses describe zonal-neg-lb-ip --region=$region | grep -i address:
address: 172.16.20.2

ตั้งค่า Zonal NEG

ในส่วนต่อไปนี้ คุณจะสร้างกลุ่มปลายทางเครือข่ายระดับโซนที่มีที่อยู่ IP อย่างน้อย 1 รายการ หรือที่อยู่ IP และชุดค่าผสมพอร์ตปลายทาง

  • ที่อยู่ IPv4 ภายในหลักของอินเทอร์เฟซเครือข่าย VM
  • ที่อยู่ IPv4 ภายในหลักของอินเทอร์เฟซเครือข่าย VM พร้อมหมายเลขพอร์ตปลายทาง
  • ที่อยู่ IPv4 ภายในจากช่วงที่อยู่ IP แทนที่กำหนดให้กับอินเทอร์เฟซเครือข่าย VM
  • ที่อยู่ IPv4 ภายในจากช่วงที่อยู่ IP แบบแทนที่ที่กำหนดให้กับอินเทอร์เฟซเครือข่าย VM และหมายเลขพอร์ตปลายทาง

อินเทอร์เฟซเครือข่ายที่มีปลายทาง GCE_VM_IP_PORT ต้องอยู่ในซับเน็ตของ NEG เมื่อคุณละเว้นหมายเลขพอร์ตจากปลายทาง GCE_VM_IP_PORT Google Cloud จะใช้หมายเลขพอร์ตเริ่มต้นของ NEG สำหรับปลายทาง

ในสถาปัตยกรรมอ้างอิง อินสแตนซ์ GCE ที่เชื่อมโยงกับ NEG ระดับโซนประกอบด้วยรายการต่อไปนี้

  • database-us-central1-a | us-central1-a | IP: 100.100.10.2 | พอร์ต: 443
  • database-us-central1-a | us-central1-b | IP: 100.100.10.3 | พอร์ต: 443
  • ชื่อซับเน็ต: database-subnet-1

สร้าง NEG ระดับโซนสำหรับ zone1a

ในส่วนต่อไปนี้ คุณจะสร้างกลุ่มปลายทางของเครือข่ายต่อโซน เช่น us-central1-a และระบุชื่อซับเน็ตที่ใช้สร้างอินสแตนซ์ GCE ในสถาปัตยกรรมอ้างอิง ชื่อซับเน็ตคือ database-subnet-1

สร้าง NEG ระดับโซนภายใน Cloud Shell โดยทำดังนี้

gcloud compute network-endpoint-groups create us-central-zonal-neg-1a \
    --zone=$zone1a \
    --network=agentspace-psc-demo \
    --subnet=database-subnet-1 \
    --default-port=443

ภายใน Cloud Shell ให้อัปเดต NEG ระดับโซนด้วย IP:Port ของอินสแตนซ์ GCE ที่ติดตั้งใช้งานใน zone1a ในสถาปัตยกรรมอ้างอิง อินสแตนซ์ GCE คือ 100.100.10.2 พอร์ต 443 ที่ติดตั้งใช้งานในโซน us-central1-a

gcloud compute network-endpoint-groups update us-central-zonal-neg-1a --zone=$zone1a --add-endpoint instance=database-us-central1-a,port=443

สร้าง Zonal NEG สำหรับ zone1b

ในส่วนต่อไปนี้ คุณจะสร้างกลุ่มปลายทางของเครือข่ายต่อโซน เช่น us-central1-b และระบุชื่อเครือข่ายย่อยที่ใช้สร้างอินสแตนซ์ GCE ในสถาปัตยกรรมอ้างอิง ชื่อซับเน็ตคือ database-subnet-1

สร้าง NEG ระดับโซนภายใน Cloud Shell โดยทำดังนี้

gcloud compute network-endpoint-groups create us-central-zonal-neg-1b \
    --zone=$zone1b \
    --network=agentspace-psc-demo \
    --subnet=database-subnet-1 \
    --default-port=443

ภายใน Cloud Shell ให้อัปเดต NEG ระดับโซนด้วย IP:Port ของอินสแตนซ์ GCE ที่ติดตั้งใช้งานใน zone1b ในสถาปัตยกรรมอ้างอิง อินสแตนซ์ GCE คือ 100.100.10.3 พอร์ต 443 ที่ติดตั้งใช้งานในโซน us-central1-b

gcloud compute network-endpoint-groups update us-central-zonal-neg-1b --zone=$zone1b --add-endpoint instance=database-us-central1-b,port=443

สร้างการตรวจสอบประสิทธิภาพการทำงานระดับภูมิภาค

สร้างการตรวจสอบประสิทธิภาพการทำงานที่ตรวจสอบพอร์ตฐานข้อมูลในองค์กร 443 ภายใน Cloud Shell โดยทำดังนี้

gcloud compute health-checks create tcp zonal-443-healthcheck \
    --region=$region \
    --port=443

สร้างนโยบายไฟร์วอลล์เครือข่ายและกฎไฟร์วอลล์

ใน Cloud Shell ให้ทำดังนี้

gcloud compute network-firewall-policies create agentspace-psc-demo-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy agentspace-psc-demo-policy --network agentspace-psc-demo --name agentspace-psc-demo --global-firewall-policy

กฎไฟร์วอลล์ต่อไปนี้อนุญาตการรับส่งข้อมูลจากช่วงซับเน็ต NAT ของ PSC ไปยังอินสแตนซ์ทั้งหมดในเครือข่าย

ใน Cloud Shell ให้ทำดังนี้

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

กฎไฟร์วอลล์ต่อไปนี้อนุญาตการรับส่งข้อมูลจากช่วงการตรวจสอบ ของ Health ไปยังอินสแตนซ์ทั้งหมดในเครือข่าย โปรดทราบว่าพอร์ตตรวจสอบประสิทธิภาพการทำงานและพอร์ตแอปพลิเคชันต้องตรงกัน

ใน Cloud Shell ให้ทำดังนี้

gcloud compute network-firewall-policies rules create 2002 --action ALLOW --firewall-policy agentspace-psc-demo-policy --description "allow internal probe health check range to GCE" --direction INGRESS --src-ip-ranges 35.191.0.0/16,130.211.0.0/22 --global-firewall-policy --layer4-configs=tcp:443

กฎไฟร์วอลล์ต่อไปนี้อนุญาตการรับส่งข้อมูลจากช่วงซับเน็ตเฉพาะพร็อกซี ไปยังอินสแตนซ์ทั้งหมดในเครือข่าย โปรดทราบว่าซับเน็ตพร็อกซีและพอร์ตแอปพลิเคชันต้องตรงกัน

ใน Cloud Shell ให้ทำดังนี้

gcloud compute network-firewall-policies rules create 2003 --action ALLOW --firewall-policy agentspace-psc-demo-policy --description "allow internal tcp proxy health check range to GCE" --direction INGRESS --src-ip-ranges 10.10.10.0/24 --global-firewall-policy --layer4-configs=tcp:443

9. สร้างบริการของผู้ผลิต

สร้างคอมโพเนนต์ของตัวจัดสรรภาระงาน

สร้างบริการแบ็กเอนด์ภายใน Cloud Shell โดยทำดังนี้

gcloud compute backend-services create producer-backend-svc --region=$region --load-balancing-scheme=INTERNAL_MANAGED --protocol=TCP --region=$region --health-checks=zonal-443-healthcheck --health-checks-region=$region

ใน Cloud Shell ให้เชื่อมโยง NEG ระดับโซน us-central-zonal-neg-1a กับบริการแบ็กเอนด์โดยใช้คำสั่งต่อไปนี้

gcloud compute backend-services add-backend producer-backend-svc \
   --network-endpoint-group=us-central-zonal-neg-1a  \
   --network-endpoint-group-zone=$zone1a \
   --balancing-mode=CONNECTION \
   --max-connections-per-endpoint=100 \
   --region=$region

ใน Cloud Shell ให้เชื่อมโยง NEG ระดับโซน us-central-zonal-neg-1b กับบริการแบ็กเอนด์โดยใช้คำสั่งต่อไปนี้

gcloud compute backend-services add-backend producer-backend-svc \
   --network-endpoint-group=us-central-zonal-neg-1b  \
   --network-endpoint-group-zone=$zone1b \
   --balancing-mode=CONNECTION \
   --max-connections-per-endpoint=100 \
   --region=$region

ใน Cloud Shell ให้สร้างพร็อกซี TCP เป้าหมายเพื่อกำหนดเส้นทางคำขอไปยังบริการแบ็กเอนด์

gcloud compute target-tcp-proxies create producer-lb-tcp-proxy \
      --backend-service=producer-backend-svc  \
      --region=$region

ในไวยากรณ์ต่อไปนี้ ให้สร้างกฎการส่งต่อ (ตัวจัดสรรภาระงานพร็อกซี TCP ภายใน) โดยเปิดใช้การเข้าถึงทั่วโลก

ใน Cloud Shell ให้ทำดังนี้

gcloud compute forwarding-rules create producer-zonal-neg-fr \
     --load-balancing-scheme=INTERNAL_MANAGED \
     --network-tier=PREMIUM \
     --network=agentspace-psc-demo \
     --subnet=producer-psc-fr-subnet \
     --address=zonal-neg-lb-ip \
     --target-tcp-proxy=producer-lb-tcp-proxy \
     --target-tcp-proxy-region=$region \
     --region=$region \
     --allow-global-access \
     --ports=443

ตรวจสอบสถานะแบ็กเอนด์

ตรวจสอบสถานะ (สถานะสีเขียว) ของบริการแบ็กเอนด์และอินสแตนซ์ Compute ที่เชื่อมโยงโดยใช้ Cloud Console ในส่วนต่อไปนี้ ไปที่ส่วนต่อไปนี้

บริการเครือข่าย → การจัดสรรภาระงาน → Producer-backend-svc

dbbc97dcef9db785.png

สร้างการเชื่อมต่อบริการ

หากต้องการเผยแพร่บริการ คุณต้องสร้างไฟล์แนบบริการ Private Service Connect คุณสามารถเผยแพร่บริการโดยใช้การอนุมัติอัตโนมัติหรือการอนุมัติอย่างชัดแจ้งก็ได้

  • หากต้องการเผยแพร่บริการและอนุญาตให้ผู้บริโภคเชื่อมต่อกับบริการโดยอัตโนมัติ ให้ทำตามวิธีการที่หัวข้อเผยแพร่บริการพร้อมด้วยการอนุมัติโดยอัตโนมัติ
  • หากต้องการเผยแพร่บริการโดยมีการอนุมัติจากผู้บริโภคอย่างชัดเจน ในการตั้งค่าการเชื่อมต่อ Service Attachment ให้เลือก "ยอมรับการเชื่อมต่อสำหรับโปรเจ็กต์ที่เลือก" และเว้นช่อง "โปรเจ็กต์ที่ยอมรับ" ว่างไว้
  • หลังจากสร้างการเชื่อมต่อบริการแล้ว จุดปลายทางของผู้ใช้ที่ขอสิทธิ์เข้าถึงบริการของผู้ให้บริการจะเข้าสู่สถานะรอดำเนินการในตอนแรก หากต้องการให้สิทธิ์การเชื่อมต่อ โปรดิวเซอร์ต้องยอมรับโปรเจ็กต์ที่ปลายทางผู้บริโภคส่งคำขอมา

สร้างการเชื่อมต่อบริการ cc-database1-svc-attachment พร้อมการอนุมัติอัตโนมัติภายใน Cloud Shell โดยใช้คำสั่งต่อไปนี้

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

จากนั้น ให้รับและจดบันทึก Service Attachment ที่แสดงใน URI ของ selfLink ซึ่งเริ่มต้นด้วยโปรเจ็กต์เพื่อกำหนดค่าปลายทาง PSC ใน Agentspace

selfLink: projects/<your-project-id>/regions/<your-region>/serviceAttachments/zonal-database1-svc-attachment

ใน Cloud Shell ให้ทำดังนี้

gcloud compute service-attachments describe zonal-database1-svc-attachment --region=$region

ตัวอย่างผลลัพธ์ที่คาดไว้

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2025-07-12T16:00:22.429-07:00'
description: ''
enableProxyProtocol: false
fingerprint: zOpeRQnPWSc=
id: '1784245893044590569'
kind: compute#serviceAttachment
name: zonal-database1-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project-svc4/regions/us-central1/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '119824781489996776'
  low: '1784245893044590569'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/$project-svc4/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/$project-svc4/regions/us-central1/serviceAttachments/zonal-database1-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/$project-svc4/regions/us-central1/forwardingRules/producer-zonal-neg-fr

ใน Cloud Console ให้ไปที่

บริการเครือข่าย → Private Service Connect → บริการที่เผยแพร่

898fe7673474be14.png

4d0b77966af14c7a.png

10. สร้างการเชื่อมต่อปลายทาง PSC ใน Agentspace

เชื่อมโยง URI ของไฟล์แนบบริการของผู้ผลิตกับ Agentspace โดยตรวจสอบว่าได้เลือกการเข้าถึงทั่วโลกแล้ว ด้านล่างนี้คือตัวอย่างการเปิดใช้การเข้าถึงทั่วโลกด้วยการแนบบริการสถาปัตยกรรมอ้างอิง

cb16ba8d7cfb86dd.png

หากต้องการตั้งค่าเครือข่ายส่วนตัวให้เสร็จสมบูรณ์ โปรดดูคำแนะนำเพิ่มเติมจากแหล่งข้อมูลของบุคคลที่สามของ Agentspace

ตรวจสอบความถูกต้องของปลายทาง PSC ใน Cloud Console

หากต้องการยืนยันว่าการเชื่อมต่อ PSC ระหว่าง Agentspace (ผู้บริโภค) กับผู้ให้บริการสำเร็จ ให้ยืนยันโปรเจ็กต์ผู้เช่า Agentspace ที่ลิงก์กับบริการของผู้ให้บริการ คุณจะดูข้อมูลนี้ได้ในส่วน "โปรเจ็กต์ที่เชื่อมต่อ" ระบบจะกำหนดรหัสโปรเจ็กต์ของกลุ่มผู้ใช้แบบสุ่ม แต่จะลงท้ายด้วย "tp" เสมอ

คุณสามารถตรวจสอบการเชื่อมต่อ PSC ได้จาก Cloud Console ใน Cloud Console ให้ไปที่

บริการเครือข่าย → Private Service Connect → บริการที่เผยแพร่ จากนั้นเลือกบริการ zonal-database1-svc-attachment

2f6b7830ce3db3b7.png

11. ล้างข้อมูล

ลบคอมโพเนนต์ของ Lab จากเทอร์มินัล Cloud Shell เดียว

gcloud compute service-attachments delete zonal-database1-svc-attachment --region=$region -q

gcloud compute forwarding-rules delete producer-zonal-neg-fr --region=$region -q

gcloud compute target-tcp-proxies delete producer-lb-tcp-proxy --region=$region -q

gcloud compute backend-services delete producer-backend-svc --region=$region -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy agentspace-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 2002 --firewall-policy agentspace-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 2003 --firewall-policy agentspace-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=agentspace-psc-demo-policy  --name=agentspace-psc-demo --global-firewall-policy -q

gcloud compute network-firewall-policies delete agentspace-psc-demo-policy --global -q

gcloud compute network-endpoint-groups delete us-central-zonal-neg-1a --zone=$zone1a -q

gcloud compute network-endpoint-groups delete us-central-zonal-neg-1b --zone=$zone1b -q

gcloud compute addresses delete zonal-neg-lb-ip --region=$region -q

gcloud compute networks subnets delete $region-proxy-only-subnet --region=$region -q

gcloud compute networks subnets delete producer-psc-nat-subnet --region=$region -q

gcloud compute networks subnets delete producer-psc-fr-subnet --region=$region -q

gcloud compute networks subnets delete neg-subnet --region=$region -q

gcloud compute health-checks delete zonal-443-healthcheck --region=us-central1 -q

gcloud compute networks delete agentspace-psc-demo -q

12. ขอแสดงความยินดี

ยินดีด้วย คุณกำหนดค่าและเผยแพร่บริการของผู้ผลิตด้วย Private Service Connect เรียบร้อยแล้ว

คุณได้สร้างโครงสร้างพื้นฐานของผู้ผลิต เรียนรู้วิธีสร้าง NEG ระดับโซน บริการของผู้ผลิต และเชื่อมโยงไฟล์แนบบริการกับ Agentspace

Cosmopup คิดว่า Codelab นั้นยอดเยี่ยม!!

c911c127bffdee57.jpeg

สิ่งต่อไปที่ควรทำ

ลองดู Codelab เหล่านี้

อ่านเพิ่มเติมและวิดีโอ

เอกสารอ้างอิง