ศูนย์คู่มือ Ruk-Com PaaS

คู่มือการพัฒนา Deploy และดูแล Application บน Platform

RUK-COM PAAS / NODEJS

Hosting Node.js

คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี

ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง

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

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

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

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

ในบทความนี้เราจะพูดถึงเครื่องมือและฟีเจอร์หลักสำหรับ Node.js บน Platform Ruk-Com Cloud ที่มีความรวดเร็ว สามารถปรับขนาดได้และมาพร้อมกับเครื่องมือที่มีประสิทธิภาพในการจัดการโดยอัตโนมัติ

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

การตั้งค่า Environment Node.js

การรัน Application Node.js คุณจะต้องตั้งค่าenvironment ให้เหมาะสมโดยการใช้ตัวช่วยสร้าง Topologyสลับไปที่แท็บNode jsเลือกเวอร์ชัน engine ที่คุณต้องการสำหรับ Application Server และ software stack อื่นๆ จากนั้นปรับ Parameter เช่น จำนวน Node, cloudlets, Public IPv4

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

หมายเหตุ:แต่ละ Instance เป็น Container ที่แยกกันโดยสิ้นเชิงและ Node ที่ปรับขนาด Horizontal Scaling จะถูกกระจายออกไปในแต่ละ Server โดยอัตโนมัติ (physical servers หรือ VMs) เพื่อให้มั่นใจว่ามีความพร้อมใช้งานสูง

เวอร์ชัน Node.js

ปัจจุบันเรารองรับ Node.js เวอร์ชัน

  • 12.x.x
  • 14.x.x
  • 16.x.x
  • 17.x.x
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

คุณสามารถเลือกเวอร์ชันของ Node.js ที่คุณต้องการได้โดยตรงผ่าน topology wizard ในระหว่างการสร้าง enviornment ใหม่และคุณสามารถปรับเปลี่ยนเวอร์ชันที่มีอยู่ผ่านการ DeployContainer ใหม่

การ deploy Application Node.js

Platform นี้จะดำเนินการ deploy อัตโนมัติ สำหรับการจัดการ Application Server Node.js สามารถทำได้ด้วยวิธีดังนี้:

  • ไฟล์ในเครื่อง- อัปโหลดไฟล์จากเครื่องของคุณ (.zip.tar.tar.gz.tar.bz2.tar.xz)
  • URL(http://... ftp://... ไฟล์://...)
  • Git/SVN- ระยะไกลวีซีเอสrepository (เช่นGitHub)
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

หมายเหตุ:คุณสามารถเปลี่ยนเส้นทางPortเปลี่ยนเส้นทางอัตโนมัติได้ด้วยตนเองผ่านตัวแปร REDIRECT_EXCLUDE_PORTS

คู่มือเพิ่มเติมเกี่ยวกับการ deploy Application Node.js ตามหัวข้อด้านล่างนี้

ตัวจัดการ Package Node.js

Process Managerมีความสามารถในการควบคุม application lifecycle, ตรวจสอบการทำงานของ service, และรักษาความสามารถในการทำงาน Platform นี้รองรับ process manager ของ Node.js stack:

  • เวลา 22.00 น- start Application
  • pm2- ฟีเจอร์การจัดการ Application ที่หลากหลายรวมถึงตรวจสอบ processes ของ Node.js ที่เปิดใช้งาน
  • ตลอดไป- รัน Node.js อย่างต่อเนื่องและ Restart ใหม่อัตโนมัติเมื่อเกิดความล้มเหลว
  • ผู้บังคับบัญชา- ตรวจสอบ Application ที่ทำงานอยู่เพื่อดูการเปลี่ยนแปลงและ Restart โดยอัตโนมัติที่จำเป็นเพื่อให้อัปเดตอยู่เสมอ

คุณสามารถเลือกใช้ process manager ที่เหมาะสมในระหว่างการ redeploy Container ใหม่หรือเปลี่ยนตัวแปร(forever, npm, pm2, หรือ supervisor) และ Restart Container เพื่อ Deploy ตัวเลือกใหม่

การจัดการ Domain

คุณสามารถผูก Domain ของคุณเองได้อย่างง่ายโดยมี 2 ตัวเลือกตามการตั้งค่า environment topology ของคุณ

  • เปลี่ยนเส้นทาง CNAMEหากใช้ Shared Load Balancer ซึ่งแนะนำสำหรับ ผู้พัฒนา หรือการทดสอบEnvironment
  • บันทึก DNS Aหากใช้ Public IP; สามารถรองรับปริมาณการใช้งานสูงและเหมาะสำหรับการผลิตEnvironment

นอกจากนี้ คุณสามารถสลับ Traffic ระหว่าง environment ของคุณได้อย่างรวดเร็ว (เพื่อเปลี่ยนเส้นทางลูกค้าไปยัง Application เวอร์ชันใหม่กว่าโดยไม่มี downtime) โดยใช้ฟังก์ชันสลับ DomainหรือวิธีSwapExtIps เอพีไอ/คลีไอ

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

Vertical Scaling อัตโนมัติ

Platform นี้คุณสามารถกำหนดจำนวน Resource ที่ต้องการได้อย่างแน่นอน (RAM และ CPU) แบบไดนามิกที่ Node ของคุณตามการใช้งาน load ปัจจุบัน คุณจึงไม่ต้องจ่ายเงินมากเกินไปในส่วนของ Resource ที่ไม่ได้ใช้งาน

เพียงตั้งค่า cloudlets limit สำหรับ Application Node.js (1 cloudlet เท่ากับ RAM 128 MiB และ CPU 440 MHz)

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

คู่มือเพิ่มเติมเกี่ยวกับVertical Scaling โดยอัตโนมัติ

Horizontal Scaling ด้วยตนเอง

การปรับขนาดเพิ่ม/ลดจำนวน Application Server คุณสามารถตั้งค่าได้ด้วยตนเองผ่าน topology wizard คลิกปุ่ม +/- ที่ส่วนของ Horizontal Scaling และสามารถเลือกโหมดสำหรับ scale Node ตามที่คุณต้องการได้

  • ไร้สัญชาติ- สร้าง Node ใหม่จาก Template base image
  • มีสถานะ-คัดลอกไฟล์ทั้งหมดของ Container หลักไปยัง Node ใหม่
ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

จำนวน Application Server ใน environment Layer เดียวกันสามารถขยายได้สูงสุด 16 Node นอกจากนี้Load Balancerจะถูกเพิ่มโดยอัตโนมัติเมื่อปรับขนาด Server เพื่อกระจายการทำงานให้เหมาะสม คู่มือเพิ่มเติมเกี่ยวกับHorizontal Scaling

Horizontal Scaling อัตโนมัติ

การตั้งค่าปรับขนาดเครื่อง Server อัตโนมัติ คลิกที่ปุ่มการตั้งค่า > Horizontal Scaling อัตโนมัติในส่วนนี้คุณสามารถตั้ง trigger สำหรับเพิ่มหรือลดจำนวน Node โดยวัดจาก application load
คุณสามารถกำหนดค่าประเภทของ Resource ที่จะ monitor (CPU, RAM, Network, Disk) และกำหนดเงี่อนไขการปรับขนาด

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

เรียนรู้เพิ่มเติมเกี่ยวกับHorizontal Scaling โดยอัตโนมัติคลิกที่ลิงก์นี้

นอกจากนี้ Platform Ruk-Com Cloud ยังมีฟีเจอร์และเครื่องมืออื่นๆ เช่น:

  • Built-In SSL หรือกำหนดเอง
  • IPv4 สาธารณะ
  • ซอร์ฟแวร์ Stack ที่หลากหลาย
  • Container firewalls, endpoints, และการแยก environment
  • การจัดการ environment โดยตรงผ่าน SSH
  • การเปิดใช้งาน API และ Cloud Scripting สำหรับการทำงานอัตโนมัติ
  • รูปแบบการกำหนดราคาแบบจ่ายตามการใช้งาน
  • ฟังก์ชั่นการทำงานร่วมกัน
  • การกระจาย Server แบบ Multi-cloud