Looker PSC Southbound HTTPS Internet NEG Gitlab Self-Managed

เกี่ยวกับ Codelab นี้
schedule41 นาที
subjectอัปเดตล่าสุดเมื่อ 2 เมษายน 2568
account_circleเขียนโดย Deepak Michael

ในโค้ดแล็บนี้ คุณจะทำการเชื่อมต่อ HTTPS ไปทางใต้กับสภาพแวดล้อมที่จัดการเองของ GitLab โดยใช้ตัวจัดสรรภาระงานพร็อกซี TCP ภายในและกลุ่มปลายทางเครือข่ายอินเทอร์เน็ต (NEG) ที่เรียกใช้จาก PSC ของ Looker ในฐานะผู้บริโภคบริการ

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

รูปที่ 1

145ea4672c3a3b14.png

การเข้าถึงจากฝั่งเซาท์หรือที่เรียกว่า PSC แบบย้อนกลับช่วยให้ผู้บริโภคสร้างบริการที่เผยแพร่ในฐานะผู้ผลิตได้ เพื่ออนุญาตให้ Looker เข้าถึงอุปกรณ์ปลายทางในองค์กร ใน VPC, บริการที่มีการจัดการ และอินเทอร์เน็ต การเชื่อมต่อขาลงสามารถติดตั้งใช้งานได้ในทุกภูมิภาค ไม่ว่าจะติดตั้ง Looker PSC ไว้ที่ใดก็ตาม ดังที่ไฮไลต์ไว้ในรูปที่ 2

รูปที่ 2

61932a992ba9b6f4.png

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

  • ข้อกำหนดเกี่ยวกับเครือข่าย
  • สร้างบริการของผู้ผลิต Private Service Connect
  • สร้างปลายทาง Private Service Connect ใน Looker
  • สร้างการเชื่อมต่อกับอินสแตนซ์ GitLab ที่จัดการเอง

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

def88091b42bfe4d.png

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

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

  • สร้างปลายทาง PSC ใน Looker ที่เชื่อมโยงกับไฟล์แนบเกี่ยวกับบริการของผู้ผลิต
  • ใช้ Looker Console เพื่อสร้างโปรเจ็กต์ใหม่และทดสอบการเชื่อมต่อ HTTPS กับสภาพแวดล้อม GitLab ที่จัดการเอง

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

ด้านล่างนี้คือรายละเอียดข้อกําหนดของเครือข่ายสําหรับเครือข่ายของผู้ผลิต โดยผู้บริโภคในโค้ดแล็บนี้คืออินสแตนซ์ PSC ของ Looker

คอมโพเนนต์

คำอธิบาย

VPC (looker-psc-demo)

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

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

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

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

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

ซับเน็ต PSC NEG

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

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

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

NEG อินเทอร์เน็ต

ทรัพยากรที่ใช้กำหนดแบ็กเอนด์ภายนอกสำหรับตัวจัดสรรภาระงานซึ่งกำหนดค่าเป็น FQDN ที่แสดงถึง FQDN ในองค์กรที่จัดการเองของ Gitlab FQDN ของอินเทอร์เน็ตจะทำการค้นหา DNS ภายใน VPC เพื่อแปลง

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

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

4. โทโพโลยีของ Codelab

34950ed6ef504309.png

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

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

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

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

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

เริ่ม Cloud Shell

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

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

55efc1aaa7a4d3ad.png

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

7ffe5cbb04455448.png

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

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

เปิดใช้ API

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

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

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

gcloud services enable compute.googleapis.com

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

เครือข่าย VPC

ใน Cloud Shell ให้ทําดังนี้

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

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

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

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

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

สร้างซับเน็ตกฎการส่งต่อของผู้ผลิตใน Cloud Shell โดยทำดังนี้

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

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

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

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

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

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

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

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

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

user@cloudshell$ gcloud compute addresses describe internet-neg-lb-ip   --region=$region | grep -i address:
address: 172.16.20.2

ตั้งค่า NEG อินเทอร์เน็ต

สร้าง NEG อินเทอร์เน็ต และตั้งค่า –network-endpoint-type เป็น internet-fqdn-port (ชื่อโฮสต์และพอร์ตที่เข้าถึงแบ็กเอนด์ภายนอกได้)

ใน Cloud Shell ให้สร้าง NEG อินเทอร์เน็ตที่ใช้เข้าถึงอินสแตนซ์ Gitlab ที่จัดการเอง gitlabonprem.com

gcloud compute network-endpoint-groups create gitlab-self-managed-internet-neg \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ใน Cloud Shell ให้อัปเดต NEG อินเทอร์เน็ต gitlab-self-managed-internet-neg ด้วย FQDN gitlabonprem.com และพอร์ต 443

gcloud compute network-endpoint-groups update gitlab-self-managed-internet-neg \
    --add-endpoint="fqdn=gitlabonprem.com,port=443" \
    --region=$region

สร้างกฎไฟร์วอลล์ของเครือข่าย

หากต้องการอนุญาตให้ IAP เชื่อมต่อกับอินสแตนซ์ VM ให้สร้างกฎไฟร์วอลล์ที่มีลักษณะดังนี้

  • มีผลกับอินสแตนซ์ VM ทั้งหมดที่คุณต้องการเข้าถึงโดยใช้ IAP
  • อนุญาตการรับส่งข้อมูลขาเข้าจากช่วง IP 35.235.240.0/20 ช่วงนี้มีที่อยู่ IP ทั้งหมดที่ IAP ใช้สำหรับการส่งต่อ TCP

สร้างกฎไฟร์วอลล์ IAP ใน Cloud Shell

gcloud compute firewall-rules create ssh-iap-looker-psc-demo \
    --network looker-psc-demo \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

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

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

ใน Cloud Shell ให้ทําดังนี้

gcloud compute backend-services create producer-backend-svc  --protocol=tcp --region=$region --load-balancing-scheme=INTERNAL_MANAGED

gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=gitlab-self-managed-internet-neg --network-endpoint-group-region=$region --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-gitlab-self-managed-fr\
     --load-balancing-scheme=INTERNAL_MANAGED \
     --network-tier=PREMIUM \
     --network=looker-psc-demo \
     --subnet=producer-psc-fr-subnet \
     --address=internet-neg-lb-ip \
     --target-tcp-proxy=producer-lb-tcp-proxy \
     --target-tcp-proxy-region=$region \
     --region=$region \
     --ports=443

สร้างไฟล์แนบของบริการ

ใน Cloud Shell ให้สร้างไฟล์แนบบริการ gitlab-self-managed-svc-attachment-https พร้อมการอนุมัติอัตโนมัติที่อนุญาตให้ Looker Core เชื่อมต่อกับไฟล์แนบบริการ หากต้องการควบคุมการเข้าถึงไฟล์แนบของบริการ ระบบจะรองรับตัวเลือกการอนุมัติอย่างชัดเจน

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

ถัดไป ให้บันทึกไฟล์แนบบริการที่แสดงใน URI ของ selfLink ที่ขึ้นต้นด้วยโปรเจ็กต์เพื่อกำหนดค่าปลายทาง PSC ใน Looker

selfLink: projects/<your-project-id>/regions/<your-region>/serviceAttachments/gitlab-self-managed-svc-attachment-https

ใน Cloud Shell ให้ทําดังนี้

gcloud compute service-attachments describe gitlab-self-managed-svc-attachment-https --region=$region

ตัวอย่าง

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2025-03-04T18:55:42.254-08:00'
description: ''
enableProxyProtocol: false
fingerprint: MlY9GLLGsgE=
id: '9103522880241140673'
kind: compute#serviceAttachment
name: gitlab-self-managed-svc-attachment-https
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$projectid/regions/us-central1/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '115404658846991336'
  low: '9103522880241140673'
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/gitlab-self-managed-svc-attachment-https
targetService: https://www.googleapis.com/compute/v1/projects/$projectid/regions/us-central1/forwardingRules/producer-gitlab-self-managed-fr

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

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

6fa12f77e4640b08.png

43987fabbabb41ad.png

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

ในส่วนต่อไปนี้ คุณจะเชื่อมโยงไฟล์แนบบริการของผู้ผลิตกับ PSC ของ Looker Core ผ่านการใช้ Flag –psc-service-attachment ใน Cloud Shell สําหรับโดเมนเดียว

ใน Cloud Shell ให้สร้างการเชื่อมโยง psc โดยการอัปเดตพารามิเตอร์ต่อไปนี้ให้ตรงกับสภาพแวดล้อมของคุณ

  • INSTANCE_NAME: ชื่ออินสแตนซ์ Looker (Google Cloud Core)
  • DOMAIN_1: gitlabonprem.com
  • SERVICE_ATTACHMENT_1: URI ที่บันทึกไว้เมื่ออธิบายไฟล์แนบบริการ gitlab-self-managed-svc-attachment-https
  • ภูมิภาค: ภูมิภาคที่โฮสต์อินสแตนซ์ Looker (Google Cloud Core)

ใน Cloud Shell ให้ทําดังนี้

gcloud looker instances update INSTANCE_NAME \
--psc-service-attachment  domain=DOMAIN_1,attachment=SERVICE_ATTACHMENT_URI_1 \
--region=REGION

ตัวอย่าง

gcloud looker instances update looker-psc-instance \
--psc-service-attachment  domain=gitlabonprem.com,attachment=projects/$project/regions/$region/serviceAttachments/gitlab-self-managed-svc-attachment-https \
--region=$region

ใน Cloud Shell ให้ตรวจสอบว่า connectionStatus ของ serviceAttachments เป็น "ACCEPTED" แล้วอัปเดตด้วย Looker PSC INSTANCE_NAME

gcloud looker instances describe [INSTANCE_NAME] --region=$region --format=json

ตัวอย่าง

gcloud looker instances describe looker-psc-instance --region=$region --format=json

ตัวอย่าง

{
  "adminSettings": {},
  "createTime": "2024-08-23T00:00:45.339063195Z",
  "customDomain": {
    "domain": "cosmopup.looker.com",
    "state": "AVAILABLE"
  },
  "encryptionConfig": {},
  "lookerVersion": "24.12.28",
  "name": "projects/$project/locations/$region/instances/looker-psc-instance",
  "platformEdition": "LOOKER_CORE_ENTERPRISE_ANNUAL",
  "pscConfig": {
    "allowedVpcs": [
    "projects/$project/global/networks/looker-psc-demo"
    ],
    "lookerServiceAttachmentUri": "projects/t7ec792caf2a609d1-tp/regions/$region/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
    "serviceAttachments": [
      {
        "connectionStatus": "ACCEPTED",
        "localFqdn": "gitlabonprem.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/gitlab-self-managed-svc-attachment-https"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-30T17:47:33.440271635Z"
}

ตรวจสอบปลายทาง PSC ใน Cloud Console

คุณตรวจสอบการเชื่อมต่อ PSC ได้จาก Cloud Console

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

Looker → อินสแตนซ์ Looker → รายละเอียด

2d4684d722d31e4b.png

2d600f33dc61cb6d.png

10. การแปลง DNS

ในส่วนต่อไปนี้ ให้สร้างอินสแตนซ์ GCE และตรวจสอบการแก้ไข DNS ไปยังอินสแตนซ์ Gitlab ที่จัดการเอง gitlabonprem.com โดยทำการ PING ตามที่คาดไว้ การแก้ไขจะดำเนินการไม่สำเร็จเนื่องจากต้องใช้โซน DNS ส่วนตัวสำหรับ gitlabonprem.com

11. สร้างอินสแตนซ์ GCE

สร้างอินสแตนซ์ GCE ที่ใช้ตรวจสอบการแก้ไข DNS ใน Cloud Shell

gcloud compute instances create gce-dns-lookup \
    --project=$projectid \
    --machine-type=e2-micro \
    --image-family debian-11 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=producer-psc-fr-subnet

เข้าสู่ระบบ consumer-vm โดยใช้ IAP ใน Cloud Shell เพื่อตรวจสอบการเชื่อมต่อกับบริการของผู้ผลิตโดยดำเนินการกับ curl ลองอีกครั้งหากหมดเวลา

gcloud compute ssh gce-dns-lookup --project=$projectid --zone=us-central1-a --tunnel-through-iap

จากระบบปฏิบัติการ ให้ทำการ PING ไปยัง gitlabonprem.com ซึ่งคาดว่าจะดำเนินการไม่สำเร็จ

ping gitlabonprem.com

ตัวอย่าง

user@gce-dns-lookup:~$ ping gitlabonprem.com
ping: gitlabonprem.com: Name or service not known

ออกจากระบบปฏิบัติการ ซึ่งจะนําคุณกลับไปยังเทอร์มินัล Cloud Shell

exit

12. สร้างโซน DNS ส่วนตัว

สร้างโซนส่วนตัว Cloud DNS ใน Cloud Shell

gcloud dns --project=$projectid managed-zones create gitlab-self-managed --description="" --dns-name="gitlabonprem.com." --visibility="private" --networks="https://compute.googleapis.com/compute/v1/projects/$projectid/global/networks/looker-psc-demo"

ใน Cloud Shell ให้สร้างระเบียน A ที่ประกอบด้วยที่อยู่ IP ของอินสแตนซ์ Gitlab ที่จัดการเอง ซึ่งก็คือ 192.168.10.4

gcloud dns --project=$projectid record-sets create gitlabonprem.com. --zone="gitlab-self-managed" --type="A" --ttl="300" --rrdatas="192.168.10.4"

เข้าสู่ระบบ consumer-vm โดยใช้ IAP ใน Cloud Shell เพื่อตรวจสอบการเชื่อมต่อกับบริการของผู้ผลิตโดยดำเนินการกับ curl ลองอีกครั้งหากหมดเวลา

gcloud compute ssh gce-dns-lookup --project=$projectid --zone=us-central1-a --tunnel-through-iap

จากระบบปฏิบัติการ ให้ทำการ PING ไปยัง gitlabonprem.com ซึ่งจะแสดงผลเป็น 192.168.10.4

ping gitlabonprem.com

ตัวอย่าง

user@gce-dns-lookup:~$ ping gitlabonprem.com
PING gitlabonprem.com (192.168.10.4) 56(84) bytes of data

ออกจากระบบปฏิบัติการ ซึ่งจะนําคุณกลับไปยังเทอร์มินัล Cloud Shell

exit

13. การเชื่อมต่อแบบผสม

ตอนนี้คุณแก้ไข FQDN gitlabonprem.com โดยใช้ที่อยู่ IP ส่วนตัวที่โฮสต์ในองค์กรได้แล้ว จากนั้นต้องกำหนดค่าเครือข่ายแบบผสม (เช่น การเชื่อมต่อถึงกัน, HA-VPN) ระหว่าง VPC looker-psc-demo กับเครือข่ายภายในองค์กรเพื่อเปิดใช้การเชื่อมต่อ

ขั้นตอนที่จำเป็นในการสร้างการเชื่อมต่อ NEG แบบผสมกับระบบในองค์กรมีดังนี้

14. ทดสอบการเชื่อมต่อ

ในขั้นตอนต่อไปนี้ คุณจะใช้ Looker Console เพื่อสร้างโปรเจ็กต์เพื่อตรวจสอบการเชื่อมต่อ HTTPS กับ gitlabonprem.com โดยใช้ขั้นตอนที่ระบุไว้ในการตั้งค่าและการทดสอบการเชื่อมต่อ Git

ae3b3884e8ef5db8.png

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

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

gcloud compute service-attachments delete gitlab-self-managed-svc-attachment-https --region=$region -q

gcloud compute forwarding-rules delete producer-gitlab-self-managed-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-endpoint-groups delete gitlab-self-managed-internet-neg --region=$region -q

gcloud compute instances delete gce-dns-lookup --zone=us-central1-a -q

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

gcloud dns --project=$projectid record-sets delete gitlabonprem.com. --zone="gitlab-sel
f-managed" --type="A"

gcloud dns --project=$projectid managed-zones delete gitlab-self-managed 

gcloud compute networks delete looker-psc-demo -q

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

ยินดีด้วย คุณได้กำหนดค่าและตรวจสอบการเชื่อมต่อกับอินสแตนซ์ GitLab ที่จัดการเองโดยใช้ Looker Console ที่ทำงานด้วย Private Service Connect เรียบร้อยแล้ว

คุณได้สร้างโครงสร้างพื้นฐานของพาร์ทเนอร์เนื้อหา เรียนรู้วิธีสร้าง NEG อินเทอร์เน็ต, บริการของพาร์ทเนอร์เนื้อหา และปลายทาง PSC ของ Looker ที่อนุญาตให้เชื่อมต่อกับบริการของพาร์ทเนอร์เนื้อหา

Cosmopup คิดว่า Codelab เจ๋งสุดๆ

c911c127bffdee57.jpeg

ขั้นตอนถัดไป

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

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

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