Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

Deploy ระบบงานบน Google Kubernetes Engine (GKE) ผ่าน Jenkins กัน

$
0
0

เห็นทาง Google Cloud ประกาศออกมาว่า
ในตอนนี้ได้ปล่อย Plugin Jenkins สำหรับ deploy ระบบงานบน GKE  มาแล้ว
ทำให้เราสามารถกำหนดขั้นตอนการ deploy workload หรือระบบงานของเรา
ไปยัง Kubernetes cluster ใน GKE ได้สะดวกขึ้น
หลังอ่านเอกสารแล้ว เรามาลองใช้กันหน่อยดีกว่า

เริ่มด้วยการสร้าง GKE cluster ก่อน ไว้สำหรับ deploy ระบบงาน

ต่อมาทำการติดตั้ง plugin ของ GKE ใน Jenkins

โดยที่เราสามารถติดตั้งใน GKE cluster ก็ได้นะ
ดูเอกสารการใช้งานเพิ่มเติมได้ที่ Tutorial :: Jenkins in GKE

แต่ในตัวอย่างนี้จะทำการติดตั้ง Jenkins บนเครื่อง local หรือ server ชุดอื่น
จากนั้นเข้าไปติดตั้ง plugin ในส่วนของ Jenkins -> Plugin manager ดังนี้

ปล. Plugin ตัวนี้ใช้ได้บน Jenkins 2.164.2 ขึ้นไปเท่านั้น
และมี dependency plugin ต่าง ๆ ดังนี้

  • WMI Windows Agents
  • OAuth Credentials
  • Google OAuth Credentials

ติดตั้งแล้วยังใช้ไม่ได้นะ ต้องทำการ Enable APIs และสร้าง IAM credential ใน Google Cloud ก่อน

มันไม่ได้ง่ายแบบข่าวหรอกนะ แน่นอนว่ามีขั้นตอนการติดตั้งที่ Documentation

การใช้งานบน Jenkins ทำได้ 2 แบบคือ

  1. Freestyle project
  2. Pipeline

มาดูแบบแรกใช้งาน Freestyle project พอละ

สามารถเพิ่มการ deploy ไปยัง GKE cluster ด้วย
การเพิ่มในส่วนของการ build ดังรูป

จากนั้นทำการ config ค่าต่าง ๆ ดังนี้

  • Service Account Credentials
  • Project ID
  • Cluster
  • Namespace
  • Kubernetes Manifests คือ path ที่เก็บไฟล์ YAML ของการ deploy นั่นเอง

ตัวอย่างทำการ deploy services ก่อน
จากนั้นจึงทำการ deploy พวก deployment/pods ต่าง ๆ

เท่านี้ก็เรียบร้อยของการเริ่มต้น
ที่เหลือก็เขียนขั้นตอนการ deploy สิรออะไร
ลองไปตรวจสอบผลการ deploy บน GKE cluster แสดงผลดังนี้

และ services ของ frontend และ backend 

เพียงเท่านี้ก็นำมาใช้งานได้แล้ว
จัดว่าง่ายพอสมควรนะ มาลองใช้กันดู

ตัวอย่างของไฟล์ deploy อยู่ที่ GitHub


Viewing all articles
Browse latest Browse all 1997

Trending Articles