CLOUD PAAS / DEPLOYMENT

การใช้งาน Deployment Hooks

คู่มือนี้เรียบเรียงและปรับรูปแบบสำหรับ Ruk-Com Cloud PaaS ภาพหน้าจออาจแตกต่างเล็กน้อยตามเวอร์ชันของระบบ

คลิกหรือแตะภาพหน้าจอเพื่อดูรายละเอียดขนาดจริง

วัตถุประสงค์

บทความนี้อธิบายการใช้งาน การใช้งาน Deployment Hooks บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง

ก่อนเริ่มดำเนินการ

  • เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
  • ตรวจสอบชื่อ Environment, Region และทรัพยากรเป้าหมายก่อนบันทึกการเปลี่ยนแปลง
  • สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production

ตะขอ(หรือเว็บฮุค) เป็นขั้นตอนการแทรกโค้ดในการดำเนินการมาตรฐานเพื่อใช้การปรับแต่งบางอย่าง ในขอบเขตของ Ruk-Com Cloud Platform ฟังก์ชันนี้อนุญาตให้คุณดำเนินการรันสคริปต์ที่กำหนดเองก่อน และ/หรือ หลังการดำเนินการ deploy แอปพลิเคชัน นอกจากนั้นสำหรับ Marven build node และ Golang แอปพลิเคชันเซิร์ฟเวอร์สามารถตั้งค่า build hooks เพิ่มเติมได้ทั้งก่อนและหลังโปรเจ็กต์

ดังนั้นด้านล่างนี้ เราจะทดสอบวิธีการใช้งาน hooks ที่ Ruk-Com Cloud และภาพรวมกรณีการใช้งานทั่วไปพร้อมทั้งคำแนะนำทีละขั้นตอน โดยฟังก์ชันนี้มีประโยชน์สำหรับ:

การจัดการ Hooks

เป็นส่วนหนึ่งของกระบวนการปรับใช้ Hooks อยู่ที่ส่วนขยายของแบบฟอร์มแดชบอร์ดที่เหมาะสม ดังนั้นการจัดการ hooks ให้เข้าถึงการโต้ตอบการ deploy แอปพลิเคชันโดยใช้ตัวเลือกต่อไปนี้:

  • ผู้จัดการฝ่ายปรับใช้
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS
  • ปุ่มปรับใช้สำหรับแอปพลิเคชันเซิร์ฟเวอร์
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

1. ภายในเฟรมที่เปิดอยู่ เลือกประเภทของ source ที่ต้องการ deploy และกดขยายส่วนตะขอ

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

ในตัวอย่างนี้ให้คลิกปุ่มก่อนหรือโพสต์ที่จัดเตรียมไว้สำหรับโค้ดของคุณ ซึ่งจะดำเนินการตามลำดับก่อน/ทันทีหลังจากการ deploy (ตามตัวเลือกที่เลือก)

2. ป้อนโค้ดที่ต้องการภายในหน้าต่าง Edit Hook ที่เปิดอยู่โดยคุณสามารถใช้ภาษาในการเขียนโปรแกรมใดก็ได้ที่ต้องการ - เพียงตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งโค้ดที่เหมาะสมสำหรับคอนเทนเนอร์เป้าหมายแล้ว (ติดตั้งเบื้องต้นด้วยตัวเองหรือรวมอยู่ในการสร้างสแต็กเริ่มต้น)

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS
  • เคล็ดลับ:ภายในหน้าต่างด้านบน คุณสามารถเข้าถึงเครื่องมือต่อไปนี้เพื่อช่วยคุณในระหว่างการแก้โค้ด
  • ตัดเส้น- เบรกข้อความเพื่อดำเนินการต่อในบรรทัดด้านล่างหากถึงขอบเฟรม
  • ค้นหา-ช่วยในการค้นหาข้อมูลที่คุณต้องการได้อย่างง่ายดาย อีกทั้งมาพร้อมกับ Match case และตัวเลือกการค้นหา Regex เพิ่มเติม
  • ช่วยด้วย- เปลี่ยนเส้นทางไปยังเอกสารปัจจุบันเพื่อรับรายละเอียดเกี่ยวกับการใช้ hooks ที่เหมาะสม

    ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

คลิกสมัครเมื่อพร้อม ตอนนี้คุณสามารถ deploy แอปพลิเคชันของคุณแล้ว

3. หลังจาก deploy สำเร็จคุณสามารถคลิกปุ่มแสดงบันทึกภายในการแจ้งเตือนแดชบอร์ดที่ปรากฏขึ้นเพื่อดูการตอบสนองโดยละเอียดเกี่ยวกับการดำเนินการ:

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

หมายเหตุ:ในกรณีที่เกิดข้อผิดพลาดขึ้นระหว่างการดำเนินการ hook คุณจะได้รับการแจ้งเตือนที่เหมาะสมในขณะที่การ deploy จะถูกยกเลิก:

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

คลิกที่ปุ่มแสดงบันทึกเพื่อรับรายละเอียดเพิ่มเติมเกี่ยวกับข้อผิดพลาดที่เกิดขึ้นโดยดู log ของการดำเนินการ deploy (ซึ่งสอดคล้องกับไฟล์ hooks.log โดยสามารถเข้าถึงได้ผ่านส่วนบันทึกสำหรับเซิร์ฟเวอร์ที่เหมาะสม)

กรณีการใช้งาน Hooks

Hooks มอบโอกาสที่หลากหลายสำหรับนักพัฒนา ทำให้กระบวนการที่ใช้เป็นประจำส่วนใหญ่เป็นไปโดยอัตโนมัติเพื่อให้ได้แอปพลิเคชันที่พร้อมใช้งานหลังจากการ deploy

ตัวอย่างด้านล่างนี้เราได้รวบรวม tasks ทั่วไปที่สามารถติดตั้งโปรแกรมให้สำเร็จโดยอัตโนมัติด้วยการ hooks:

  • ติดตั้ง hooks ก่อน(เช่น ดำเนินการก่อนการ deploy แอปพลิเคชันจริง)
  • เพื่อตรวจสอบว่าตรงตามข้อกำหนดทั้งหมดหรือไม่
  • เพื่อติดตั้งซอฟต์แวร์ที่จำเป็นล่วงหน้า
  • เพื่อเคลียร์หรือเตรียมโฟลเดอร์เฉพาะสำหรับไฟล์
  • เพื่อบันทึกข้อมูล

  • โพสต์ปรับใช้(หลังจากการ deploy สำเร็จ)
  • เพื่อรีสตาร์ทแอปพลิเคชันเซิร์ฟเวอร์หลังจากการ deploy
  • เพื่อติดตั้งโปรเจกต์ที่พึ่งพากัน
  • เพื่อใช้การปรับแต่งอื่นๆที่ต้องการ
  • เพื่อบันทึกข้อมูล

ด้านล่างนี้เราได้จัดเตรียมตัวอย่างง่ายๆสำหรับการสร้าง log file ด้วย hooks

1. เริ่มต้นด้วยการ deploy โปรเจกต์ของคุณด้วยวิธีใดก็ได้ที่คุณต้องการ โดยเราจะใช้ไฟล์เก็บถารวรHelloWorld.zipจาก Deployment Manager

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

2. กดปุ่มขายส่วนของ Hooks คลิกก่อนhook และใส่โค้ดตามที่จัดเตรียมไว้ให้ภายในหน้าต่างการแก้ไข:

echo "$(date) - deployment start" >> ~/mylog
if ! grep -q "$(pwd)/mylog" /etc/jelastic/redeploy.conf; then
    echo "$(pwd)/mylog" >> /etc/jelastic/redeploy.conf
fi
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

โค้ดนี้จะเพิ่มสตริงลงในไฟล์บันทึกของฉัน(จะถูกสร้างขึ้นโดยอัตโนมัติใน home directory หากไม่มีอยู่) ซึ่งจะระบุการเริ่มต้นใช้งานและระบุเวลาที่เหมาะสม นอกจากนี้เราจะตรวจสอบว่าไฟล์ปรับใช้ใหม่.confมีไฟล์ log ที่กำหนดเองหรือไม่ และหากไม่ ให้เพิ่มบรรทัดที่เหมาะสม - ในนลักษณะดังกล่าวไฟล์จะถูกเก็บไว้หลังจากการดำเนินการredeploy คอนเทนเนอร์ใหม่

3. สำหรับโพสต์hook ให้เพิ่มโค้ดต่อไปนี้:

echo "$(date) - deployment end" >> ~/mylog
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

และนี่คือ log สุดท้ายของการ deploy hook

4. ขั้นตอนสุดท้ายของการ deploy แอปพลิเคชันของคุณ ตรวจสอบทั้งไฟล์ mylog และ redeploy.conf เพื่อตรวจสอบการทำงานของ hooks ว่าประสบความสำเร็จ

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

อย่างที่คุณเห็นสคริปต์ทำงานตามที่วางแผนไว้โดยให้เวลาเริ่มต้น/สิ้นสุดการปรับใช้และตรวจสอบให้แน่ใจว่าสคริปต์ได้รับการปกป้องในระหว่างการดำเนิน redeploy

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