เชื่อมต่อแอปพลิเคชันกับข้อมูล Cloud SQL และติดตั้งใช้งานใน Cloud Run

1. ภาพรวม

Codelab นี้จะแสดงวิธีการตั้งค่า Cloud SQL และเชื่อมต่อแอปพลิเคชันกับ Cloud SQL ด้วยวิธีที่ง่ายและทำได้ไม่ยาก ซึ่งเป็นการเรียนรู้ระดับ L100 แบบรวดเร็วเพื่ออัปเกรดประสบการณ์ของนักพัฒนาแอปพลิเคชันในการผสานรวมแอปพลิเคชัน AI ขั้นสูงเข้ากับฟีเจอร์ข้อมูลที่ซับซ้อนซึ่ง Cloud SQL มีให้

สิ่งที่คุณจะได้สร้าง

เว็บแอปพลิเคชันแบบง่าย

โดยคุณจะได้ทำสิ่งต่อไปนี้

  1. สร้างอินสแตนซ์ Cloud SQL สำหรับ PostgreSQL ด้วยการติดตั้งแบบคลิกเดียว
  2. สร้างแอปพลิเคชันตัวอย่างเพื่อเชื่อมต่อกับอินสแตนซ์นี้และตั้งค่าข้อมูล

ข้อกำหนด

  • เบราว์เซอร์ เช่น Chrome หรือ Firefox
  • โปรเจ็กต์ Google Cloud ที่เปิดใช้การเรียกเก็บเงินแล้ว

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

สร้างโปรเจ็กต์

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

รูปภาพปุ่มเปิดใช้งาน Cloud Shell

  1. เมื่อเชื่อมต่อกับ Cloud Shell แล้ว ให้ตรวจสอบว่าคุณได้รับการตรวจสอบสิทธิ์แล้วและโปรเจ็กต์ตั้งค่าเป็นรหัสโปรเจ็กต์ของคุณโดยใช้คำสั่งต่อไปนี้
gcloud auth list
  1. เรียกใช้คำสั่งต่อไปนี้ใน Cloud Shell เพื่อยืนยันว่าคำสั่ง gcloud รู้จักโปรเจ็กต์ของคุณ
gcloud config list project
  1. หากไม่ได้ตั้งค่าโปรเจ็กต์ ให้ใช้คำสั่งต่อไปนี้เพื่อตั้งค่า
gcloud config set project <YOUR_PROJECT_ID>
  1. เปิดใช้ API ที่จำเป็น โดยทำตาม ลิงก์ และเปิดใช้ API

หรือคุณจะใช้คำสั่ง gcloud สำหรับการดำเนินการนี้ก็ได้ โปรดดู เอกสารประกอบ สำหรับคำสั่ง gcloud และการใช้งาน

3. การตั้งค่าฐานข้อมูล

ในแล็บนี้ เราจะใช้ Cloud SQL สำหรับ PostgreSQL เป็นฐานข้อมูลสำหรับข้อมูลทดสอบ

มาสร้างอินสแตนซ์ Cloud SQL ที่จะโหลดชุดข้อมูลทดสอบกัน

  1. คลิกปุ่มหรือคัดลอกลิงก์ด้านล่างไปยังเบราว์เซอร์ที่คุณลงชื่อเข้าใช้ผู้ใช้คอนโซล Google Cloud

  1. เมื่อขั้นตอนนี้เสร็จสมบูรณ์แล้ว ระบบจะโคลนที่เก็บไปยังตัวแก้ไข Cloud Shell ในเครื่องของคุณ และคุณจะเรียกใช้คำสั่งด้านล่างจากโฟลเดอร์โปรเจ็กต์ได้ (โปรดตรวจสอบว่าคุณอยู่ในไดเรกทอรีโปรเจ็กต์)
sh run.sh
  1. ตอนนี้ให้ใช้ UI (คลิกลิงก์ในเทอร์มินัลหรือคลิกลิงก์ "แสดงตัวอย่างบนเว็บ" ในเทอร์มินัล)
  2. ป้อนรายละเอียดสำหรับรหัสโปรเจ็กต์และชื่ออินสแตนซ์เพื่อเริ่มต้นใช้งาน
  3. ไปชงกาแฟสักแก้วระหว่างที่บันทึกเลื่อนไปเรื่อยๆ และคุณสามารถอ่านเกี่ยวกับสิ่งที่เกิดขึ้นเบื้องหลังได้ที่นี่

4. สร้างแอปพลิเคชันตัวอย่างเพื่อทดสอบการเชื่อมต่อ

ในเทอร์มินัล Cloud Shell ให้เรียกใช้คำสั่งต่อไปนี้ทีละรายการ

git clone https://github.com/flazer99/verify-easy-cloud-sql-connection

cd verify-easy-cloud-sql-connection

ทำการเปลี่ยนแปลงไฟล์ verify_connection.py สำหรับการตั้งค่า Cloud SQL ที่คุณเพิ่งกำหนดค่าในส่วนที่แล้ว

# Replace this with the Private IP of your Cloud SQL Instance
DB_HOST = <<>> 
DB_PORT = "5432"
DB_NAME = "postgres"
DB_USER = "postgres"
# Replace this with your actual Cloud SQL password    
DB_PASS = <<>>

5. ทำให้ใช้งานได้กับ Cloud Run

ในเทอร์มินัล Cloud Shell ตรวจสอบว่าคุณอยู่ในโฟลเดอร์โปรเจ็กต์

เมื่อแน่ใจว่าอยู่ในโฟลเดอร์โปรเจ็กต์แล้ว ให้เรียกใช้คำสั่งต่อไปนี้

gcloud run deploy verify-cloudsql \
    --source . \
    --region=us-central1 \
    --network=easy-cloudsql-vpc \
    --subnet=easy-cloudsql-subnet \
    --vpc-egress=all-traffic \
    --allow-unauthenticated

เมื่อทำให้ใช้งานได้แล้ว คุณควรได้รับปลายทาง Cloud Run ที่ทำให้ใช้งานได้ซึ่งมีลักษณะดังนี้

https://verify-cloudsql-**********-uc.a.run.app/

6. สาธิต

หากต้องการยืนยันว่าการดำเนินการสำเร็จ คุณสามารถดูผลลัพธ์ในเบราว์เซอร์หรือ Explorer บันทึก

คุณสามารถไปที่ Cloud SQL ในคอนโซล Google Cloud แล้วเปิดอินสแตนซ์ที่สร้างขึ้นใหม่ คลิก Cloud SQL Studio จากแผงการนำทางทางด้านซ้าย แล้วเชื่อมต่อด้วยข้อมูลเข้าสู่ระบบ

ใน Studio ให้รีเฟรชออบเจ็กต์ฐานข้อมูลในแผงด้านซ้าย แล้วคุณควรจะเห็นตารางที่สร้างขึ้นใหม่

658d9261e6098139.png

คุณสามารถค้นหาได้อย่างรวดเร็วเพื่อยืนยันว่าการแทรกเสร็จสมบูรณ์แล้ว

658d9261e6098139.png

7. การทำความสะอาดข้อมูล

เมื่อแล็บทดลองนี้เสร็จสิ้นแล้ว อย่าลืมลบอินสแตนซ์ Cloud SQL

ระบบควรล้างข้อมูลคลัสเตอร์พร้อมกับอินสแตนซ์

8. บทสรุป

เริ่มต้นใช้งาน การตั้งค่าข้อมูลด้วย Cloud SQL ได้อย่างรวดเร็วและง่ายดาย!!!