Looker PSC Northbound Regional Internal L7 ALB

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

ในโค้ดแล็บนี้ คุณจะได้สร้าง L7 Regional Internal Application Load Balancer และ Private Service Connect Backend เพื่อรับสิทธิ์เข้าถึง Looker จากฝั่งที่ส่งข้อมูล การเข้าถึง Looker จากฝั่งเน็ทเวิร์กภายนอกต้องมี VPC ของผู้บริโภคอยู่ในรายการที่อนุญาตของอินสแตนซ์ 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

3edfcc67e195d082.png

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

  • ข้อกำหนดเกี่ยวกับเครือข่าย
  • อัปเดตรายการที่อนุญาตของ Looker สำหรับการเข้าถึงจากฝั่งที่ส่งออกข้อมูล
  • สร้างแบ็กเอนด์ Private Service Connect ใน VPC ของผู้บริโภค
  • ใบรับรองของ Google กับใบรับรองที่ลงนามด้วยตนเอง

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

def88091b42bfe4d.png

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

คุณจะต้องสร้างเครือข่ายผู้บริโภคในรายการที่อนุญาตชื่อ looker-psc-demo เพื่อติดตั้งใช้งานโหลดบาลานเซอร์แอปพลิเคชัน L7 ภายในระดับภูมิภาคและ NEG แบ็กเอนด์ PSC ที่ต้องอาศัยใบรับรองของ Google หรือใบรับรองที่จัดการด้วยตนเอง ดูรายละเอียดเพิ่มเติมได้ที่หน้าสรุปเกี่ยวกับโหลดบาลานเซอร์และใบรับรอง

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

รายละเอียดข้อกำหนดของเครือข่ายมีดังนี้

คอมโพเนนต์

คำอธิบาย

VPC (looker-psc-demo)

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

ซับเน็ต PSC NEG

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

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

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

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

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

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

2f6bb87ef0e139b2.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 ของ PSC ของ Looker

เครือข่าย VPC

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

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

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

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

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

สร้างซับเน็ตตัวจัดสรรภาระงานแอปพลิเคชันภายในใน Cloud Shell โดยทำดังนี้

gcloud compute networks subnets create consumer-ilb-subnet --network looker-psc-demo --range 172.16.40.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

8. สร้างโดเมนที่กำหนดเอง

คุณต้องทําตามขั้นตอนต่อไปนี้เพื่อสร้างโดเมนที่กําหนดเอง

ในตัวอย่างด้านล่าง looker.cosmopup.com คือโดเมนที่กำหนดเอง

5424ce99136d5b3a.png

ตัวอย่าง OAuth

ด้านล่างนี้คือตัวอย่างข้อมูลเข้าสู่ระบบ OAuth สําหรับต้นทางที่ได้รับอนุญาตและการเรียกกลับสําหรับโดเมนย่อย looker.cosmopup.com

c7e5b8c7d2cc6a01.png

9. ใบรับรอง

คุณสามารถสร้างใบรับรอง Compute Engine หรือใบรับรอง Certificate Manager ก็ได้ ใช้วิธีใดวิธีหนึ่งต่อไปนี้เพื่อสร้างใบรับรองโดยใช้เครื่องมือจัดการใบรับรอง

10. รายการที่อนุญาตของ VPC ของ Looker

ดู VPC ที่อนุญาต

ในส่วนต่อไปนี้ คุณจะใช้ UI ของ Cloud Console เพื่อดูรายการ VPC ที่อนุญาตของ Looker

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

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

ตัวอย่างด้านล่างนี้ไม่มีรายการในรายการ VPC ที่อนุญาต

ad33177a2d721ea7.png

อัปเดต VPC ที่อนุญาต

อัปเดตอินสแตนซ์ Looker ให้รองรับการเข้าถึงจากฝั่งเน็ทเวิร์กโดยเพิ่ม looker-psc-demo เป็น VPC ที่อนุญาต

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

Looker → อินสแตนซ์ Looker → แก้ไข

cbbc069688890b82.png

การเชื่อมต่อ → VPC ที่อนุญาต

ตรวจสอบว่าได้เลือกโปรเจ็กต์ที่ติดตั้งใช้งาน looker-psc-demo ตามด้วย VPC looker-psc-demo แล้วคลิก "ต่อไป"

dc931643e1b220a.png

3e26d16d83cceae9.png

ตรวจสอบ VPC ที่อนุญาต

ดูรายการ VPC ที่อนุญาตที่อัปเดตแล้ว

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

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

e34664c867929c66.png

11. สร้างแบ็กเอนด์ PSC

PSC ของ Looker ในฐานะ Service Producer จะสร้าง URI ของไฟล์แนบบริการที่ Service Consumer ใช้ในการติดตั้งใช้งานปลายทางและแบ็กเอนด์เพื่อรับสิทธิ์เข้าถึง Looker จากฝั่งเหนือ ในขั้นตอนถัดไป คุณจะต้องระบุ URI ไฟล์แนบบริการ PSC ของ Looker ตามด้วยการสร้างแบ็กเอนด์กลุ่มปลายทางเครือข่าย (NEG) ของ Private Service Connect ใน VPC ของผู้บริโภค

ระบุไฟล์แนบบริการ PSC ของ Looker

ใน Cloud Console ให้ไปที่ส่วนต่างๆ และคัดลอก URI ของไฟล์แนบบริการ ดังนี้

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

a253f94e946a1eef.png

สร้างกลุ่มปลายทางของเครือข่าย PSC

ใน Cloud Shell ให้ทําดังนี้โดยอย่าลืมอัปเดต 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

ตัวอย่าง

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

ตรวจสอบการสร้างกลุ่มปลายทางของเครือข่าย PSC

ใน Cloud Shell ให้ทําดังนี้เพื่อให้ระบบยอมรับ pscConnectionStatus

gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:

ตัวอย่าง

user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus: 
  pscConnectionStatus: ACCEPTED

สร้างตัวจัดสรรภาระงานแอปพลิเคชันภายในระดับภูมิภาค

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

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

บริการเครือข่าย → การจัดสรรภาระงาน → สร้างตัวจัดสรรภาระงาน

e3474ca153d7c55a.png

เลือกตัวเลือกต่อไปนี้

c80afa6a28b6d922.png

สร้างการกำหนดค่าแบ็กเอนด์

เลือกตัวเลือกต่อไปนี้และปรับแต่งสภาพแวดล้อมตามการใช้งาน

  • ภูมิภาคที่ใช้ในการติดตั้งใช้งานโครงสร้างพื้นฐานของเครือข่าย
  • เครือข่าย: looker-psc-demo
  • ระบบจะป้อนข้อมูลซับเน็ตเฉพาะพร็อกซีโดยอัตโนมัติตามภูมิภาคและเครือข่ายของคุณ

115627dc54d7a582.png

b3eaa88dd02a95c1.png

cf519145f0259061.png

530527bc9273e002.png

กฎการกำหนดเส้นทาง

ไม่ต้องกำหนดค่า

53a80d74b3c7dd56.png

การกำหนดค่าฟรอนต์เอนด์

29faa25397025fb4.png

538da2b4930d243b.png

bbc13e921681dd65.png

ตรวจสอบว่าได้เปิดใช้ตัวจัดสรรภาระงานและรับที่อยู่ IP แล้ว

ใน Cloud Console → บริการเครือข่าย → โหลดบาลานซ์ → looker-ilb-alb

abc7d02b4c951c73.png

12. การแปลง DNS

การแก้ไข DNS สำหรับโดเมนที่กำหนดเองอาจเป็น DNS ในองค์กรที่เชื่อถือได้หรือ Cloud DNS ในบทแนะนำนี้ เราจะกำหนด Cloud DNS เป็นเซิร์ฟเวอร์ที่เชื่อถือได้สำหรับโดเมนที่กำหนดเองของ Looker การเปิดใช้การแปลง DNS ในองค์กรไปยัง GCP จำเป็นต้องเปิดใช้นโยบายเซิร์ฟเวอร์ขาเข้า เมื่อคุณสร้างนโยบายเซิร์ฟเวอร์ขาเข้า Cloud DNS จะสร้างจุดแรกเข้าของนโยบายเซิร์ฟเวอร์ขาเข้าในเครือข่าย VPC ที่จะใช้นโยบายเซิร์ฟเวอร์ จุดแรกเข้าของนโยบายเซิร์ฟเวอร์ขาเข้าคือที่อยู่ IPv4 ภายในที่มาจากช่วงที่อยู่ IPv4 หลักของทุกซับเน็ตในเครือข่าย VPC ที่เกี่ยวข้อง ยกเว้นซับเน็ตที่ใช้เป็นพร็อกซีเท่านั้น

ในส่วนต่อไปนี้ ระบบจะสร้างโซน DNS ส่วนตัวสำหรับโดเมนที่กำหนดเองของ Looker ซึ่งก็คือ looker.cosmopup.com และระเบียน A ซึ่งประกอบด้วยที่อยู่ IP ของโปรแกรมควบคุมโหลด

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

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

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

ใน Cloud Shell ให้สร้างระเบียน A ที่มีที่อยู่ IP ของตัวจัดสรรภาระงานซึ่งได้รับในขั้นตอนก่อนหน้า

gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="<insert-your-ip>"

ตัวอย่าง

gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="172.16.20.7"

จากนั้นต้องกำหนดค่าเครือข่ายแบบผสม (เช่น การเชื่อมต่อถึงกัน, HA-VPN) ระหว่าง VPC looker-psc-demo กับเครือข่ายภายในองค์กรเพื่อเปิดใช้การเชื่อมต่อ

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

เข้าถึง UI ของ Looker

เมื่อโหลดบาลานเซอร์ทํางานแล้ว คุณจะเข้าถึงโดเมน Looker ที่กําหนดเองผ่านเว็บเบราว์เซอร์ได้ โปรดทราบว่าคุณอาจเห็นคำเตือน ทั้งนี้ขึ้นอยู่กับประเภทใบรับรองที่ใช้ เช่น ใบรับรองที่ไม่น่าเชื่อถือเทียบกับใบรับรองที่เชื่อถือได้

ด้านล่างนี้คือตัวอย่าง (ใบรับรองที่ไม่น่าเชื่อถือ) ของการเข้าถึงโดเมนที่กำหนดเองของ Looker อย่าง looker.cosmopup.com ที่ได้รับสิทธิ์เข้าถึง UI ของ Looker จากฝั่งเหนือ

ae43d0d0d7136044.png

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

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

gcloud compute forwarding-rules delete regional-internal-alb-fr --region=$region -q

gcloud compute target-https-proxies delete regional-internal-alb-target-proxy --region=$region -q

gcloud compute url-maps delete regional-internal-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

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

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

คุณได้สร้างโครงสร้างพื้นฐานสำหรับผู้บริโภคแล้ว รวมถึงได้เรียนรู้วิธีสร้าง PSC NEG, โดเมนที่กำหนดเอง และรู้จักตัวเลือกใบรับรองต่างๆ สิ่งที่น่าสนใจมากมายที่จะช่วยให้คุณเริ่มต้นใช้งาน Looker ได้

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

c911c127bffdee57.jpeg

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

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

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

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