CLOUD PAAS / APPLICATION SETTINGS

การตั้งค่า Cronjob

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

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

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

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

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

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

Cron คือ คำสั่งให้ทำงานตามเวลาที่กำหนดในระบบปฏิบัติการคอมพิวเตอร์ที่เหมือน Unix Cron ช่วยให้ผู้ใช้สามารถกำหนดเวลางาน (commands หรือ shell scripts) เพื่อรันเป็นระยะ ๆ ในบางช่วงเวลาหรือวันที่โดยทั่วไปจะใช้เพื่อบำรุงรักษาหรือการดูแลระบบโดยอัตโนมัติ ถึงแม้ว่าลักษณะการใช้งานทั่วไปหมายความว่าสามารถใช้เพื่อวัตถุประสงค์อื่นได้ เช่น การเชื่อมต่อกับอินเทอร์เน็ตและการดาวน์โหลดอีเมล

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

  • การล้าง logs
  • การสำรองข้อมูล
  • การรันสคริปต์

คุณสามารถดูตัวอย่างได้ด้านล่าง

การสร้าง environment

1. เข้าสู่ระบบ Ruk-Com Cloud Dashboard

2. คลิกปุ่มสภาพแวดล้อมใหม่

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



3. ในหน้า environment topology ให้เลือกแอปพลิเคชันเซิร์ฟเวอร์และฐานข้อมูลที่คุณต้องการใช้ (เช่นแมวตัวผู้และMySQL) พิมพ์ชื่อของ environment และคลิกสร้าง

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS
ในเวลาไม่กี่นาที environment ของคุณพร้อมทั้งโหนด Tomcat และ MySQL จะถูกสร้างขึ้น

การอัปโหลดสคริปต์

1. คลิกปุ่มการกำหนดค่าสำหรับแอปพลิเคชันเซิร์ฟเวอร์ของคุณ

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

2. อัปโหลดสคริปต์ที่คุณต้องการรันไปยังโฟลเดอร์ต่อไปนี้

  • บ้าน- หากคุณใช้ Java server ใน environment ของคุณ (ตามที่เรายกตัวอย่างในคำแนะนำนี้)
  • โฟลเดอร์ที่จัดเก็บแอปพลิเคชันของคุณ - หากคุณใช้ PHP server ใน environment ของคุณ
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

1. คลิกปุ่มการกำหนดค่าสำหรับฐานข้อมูล (MySQL หรือ MariaDB)

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

2. อัปโหลดสคริปต์ที่คุณต้องการดำเนินการไปยังโฟลเดอร์สคริปต์

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

หมายเหตุ:สคริปต์ที่คุณต้องการดำเนินการควรเป็นไฟล์ปฏิบัติการ หากไม่ใช่คุณสามารถใช้ตัวแปรภาษาในตัว เช่น Bash, Perl, Python, SED, AWK หรือ Expect (ขึ้นอยู่กับสคริปต์ที่คุณใช้)

1. ในแท็บการกำหนดค่าที่เปิดอยู่ ให้ไปที่โฟลเดอร์ cron และเปิดไฟล์ {nodeName}

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

2. ในส่วนนี้คุณสามารถเขียนคำสั่งที่จำเป็นทั้งหมดเพื่อกำหนดตารางเวลางานของคุณซึ่งควรประกอบด้วยรูปแบบพื้นฐานของการกำหนด crontab ที่ประกอบด้วย 6 ช่องและคั่นด้วยช่องว่าง

{minute} {hour} {day} {month} {day-of-week} {command-line-to-execute}

ในขณะที่ระบุค่าคุณต้องปฏิบัติตามมาตรฐานนี้:

  • ฟิลด์จะต้องอยู่ในลำดับที่แน่นอน โดยไม่มีฟิลด์ว่างหรือขาดหายไป
  • หากจำเป็นคุณสามารถใช้อักขระแทน - "*" (เครื่องหมายดอกจัน) ในไฟล์ crontab จะแสดงถึงทุกค่าที่เป็นไปได้สำหรับฟิลด์ ตัวอย่างเช่นการระบุ "*" ในช่อง "ชั่วโมง" หมายถึง"รันทุกชั่วโมง"
  • อักขระ "/" ใช้เพื่อกำหนดความถี่เพิ่มเติม ตัวอย่างเช่น "* / 3" ใน "ชั่วโมง" หมายถึง "ทุกสามชั่วโมง"
  • สำหรับแต่ละพารามิเตอร์คุณสามารถระบุค่าได้หลายค่าโดยคั่นด้วยเครื่องหมายจุลภาค ตัวอย่างเช่น หากใน "ชั่วโมง" คุณพิมพ์ "1, 6, 19" งานจะรัน "เวลา 1:00 น. เวลา 6:00 น. และ 19 ชั่วโมง" คุณยังสามารถระบุช่วงเวลาได้ เช่น "8-17" หมายความว่าโปรแกรมจะรัน "ทุกชั่วโมงตั้งแต่ 8 ถึง 17"

คุณควรระบุ path แบบเต็มไปยังสคริปต์ของคุณด้วยคำสั่งครอนขึ้นอยู่กับตำแหน่งของสคริปต์ของคุณ เส้นทางสามารถเป็นอย่างใดอย่างหนึ่งต่อไปนี้:

- โฟลเดอร์ home สำหรับการคำนวณ Java nodes:
/opt/tomcat/temp/{scriptName} - ทอมแคท, TomEE
/opt/jetty/home/{scriptName} - ท่าเทียบเรือ
/opt/glassfish3/temp/{scriptName} - GlassFish


- โฟลเดอร์ที่มีไฟล์แอปพลิเคชันและสคริปต์สำหรับการคำนวณ PHP nodes:
/var/www/webroot/{appFolder}/{scriptName}

- โฟลเดอร์สคริปต์สำหรับ MySQL/MariaDB databases:
/var/lib/jelastic/bin/{scriptName}

3. ตัวอย่างเช่น หากสคริปต์ของคุณอยู่ในโฟลเดอร์ home ของ Tomcat และคุณต้องการให้ดำเนินการทุกนาที บรรทัดคำสั่งของคุณอาจมีลักษณะดังนี้:

*/1 * * * *  /opt/tomcat/temp/test.sh
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

เคล็ดลับ:หากสคริปต์ของคุณไม่มี flag ปฏิบัติการและคุณใช้ตัวแปลภาษาเป็นโปรแกรมในตัว เช่น Bash, Perl, Python, SED, AWK หรือ Expect (ขึ้นอยู่กับสคริปต์ของคุณ) คุณควรเพิ่มเส้นทางต่อไปนี้หลังจากการตั้งค่าเวลาสำหรับการระบุตัวแปลภาษาเป็นโปรแกรมอย่างชัดเจน:

- /bin/bash - สำหรับ Bash
- /usr/bin/python - สำหรับ Python
- /usr/bin/perl - สำหรับ Perl
- /bin/sed - สำหรับ SED
- /bin/awk - สำหรับ AWK
- /usr/bin/expect - สำหรับ Expect
- /usr/bin/php - สำหรับ php-interpreter



ในกรณีนี้คำสั่งของคุณจะเป็นดังนี้:

*/1 * * * *  /bin/bash /opt/tomcat/temp/test.sh
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

4. โปรดตรวจสอบให้แน่ใจว่ามีบรรทัดว่างหลังจากรายการ cronjob ล่าสุด

5. บันทึกการเปลี่ยนแปลงเพื่อใช้การตั้งค่า