CLOUD PAAS / DEPLOYMENT

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

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

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

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

บทความนี้อธิบายการใช้งาน ปรับใช้การเปลี่ยนแปลงโค้ดเป็นศูนย์โดยไม่มีการล็อคอินจากผู้จำหน่ายเพื่อการโยกย้ายที่ราบรื่นบนแพลตฟอร์มคลาวด์ บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง

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

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

สิ่งที่แตกต่างจากบริการโฮสติ้งส่วนใหญ่ Ruk-Com Cloud PaaS ไม่มีการบังคับให้นักพัฒนาปฏิบัติตามข้อกำหนดเฉพาะของโครงสร้างพื้นฐานที่ไม่เปลี่ยนรูปแบบ เจ้าของรันไทม์หรือ API เพื่อโฮสต์โปรเจกต์ วิธีการดังกล่าวมีความสำคัญอย่างยิ่งเมื่อต้องย้ายจาก virtual machines ไปยังคอนเทนเนอร์การสลายตัวแบบดั้งเดิม (ที่เรียกว่า legacy) ไปยัง microservices หรือในขณะที่ย้ายจากผู้ให้บริการรายหนึ่งไปยังอีกรายหนึ่ง

การขจัดความจำเป็นของการออกแบบแอปพลิเคชันใหม่ ทำให้ deploy ได้ง่ายโดยใช้ไฟล์เก็บถาวร (zip, tar.gz, war, jar, ear), FTPS/SFTP, GIT/SVN พร้อมการอัปเดตอัตโนมัติจากแผงควบคุม dev หรือผ่านปลั๊กอินที่รวมกันสำหรับ Maven, Eclipse, NetBeans, IntelliJ IDEA ทั้งหมดนี้ทำให้จุดเริ่มต้นง่ายขึ้นและราบรื่นยิ่งขึ้นและช่วยลดเวลาออกสู่ตลาดและกำจัดการ lock-in ของผู้ขาย

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

วิธีการเปลี่ยนโค้ดเป็นศูนย์ เช่นเดียวกับการรองรับแอปพลิเคชันและระบบคอนเทนเนอร์จัดเตรียมความสามารถในการรันทั้ง cloud-native microservices และ legacy monolithic applications ขึ้นอยู่กับ Java, PHP, Ruby, Node.js, Python และ Docker

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

นอกจากนี้การ deploy และการรันแอปพลิเคชันเพิ่มเติมภายในคอนเทนเนอร์จะไม่ถูกจำกัดหลังจากการโยกย้ายจาก VM ทำให้คุณสามารถ:

  • Run services ต่างๆภายในคอนเทนเนอร์เดียว
  • ใช้พอร์ต node ที่จำเป็น
  • แนบ Public IPv4 หรือ IPv6 หลายรายการต่อคอนเทนเนอร์
  • เขียนไปยังระบบไฟล์ในเครื่องหรือ remote ระยะไกล
  • เข้าถึงคอนเทนเนอร์ผ่าน SSH ที่เข้ากันได้กับเครื่องมือการจัดการการกำหนดค่า เช่น Chef หรือ Puppet
  • Deploy แผงควบคุมที่รู้จักกันทั่วไปสำหรับ VPS และการจัดการโฮสติ้งที่ใช้ร่วมกัน (cPanel, Plesk และ ISPManager)
  • การดำเนินการ live migration คล้ายกับ vMotion
  • Deploy Docker Engine ในลักษณะเดียวกันกับที่คุณทำกับ VMs
  • การดำเนินการอื่น ๆ ที่ดำเนินการก่อนหน้านี้ภายใน VPS

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

การปรับใช้โครงการด้วยการเปลี่ยนแปลงรหัสเป็นศูนย์

เพื่อให้ข้อมูลข้างต้นชัดเจนยิ่งขึ้นเราจะอธิบายขั้นตอนง่ายๆที่จำเป็นในการ deploy project ที่ Ruk-Com Cloud

1. สร้าง environment ผ่าน topology wizard ที่ครอบคลุมพร้อมกับกองซอฟต์แวร์ที่กำหนดค่าไว้ล่วงหน้ามากมาย (เช่น application servers, database, load balancers, cache, และ build nodes)

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

2. เมื่อมีการสร้าง environment ที่เหมาะสม คุณสามารถ deploy แอปพลิเคชันของคุณด้วยตัวเลือกการ deploy ที่รองรับอย่างใดอย่างหนึ่ง:

  • จัดเตรียมการเก็บไฟล์แบบถาวร (zip, bzip2, tar, tar.gz, tar.bz2, war, jar หรือ ear) พร้อมทรัพยากรแอปพลิเคชันที่บรรจุไว้ล่วงหน้าโดยอัปโหลดไปยังที่เก็บข้อมูลแพลตฟอร์มหรือให้ลิงก์ไปยังตำแหน่งที่เก็บไว้
  • ส่งไฟล์การติดตั้งผ่านช่องทางFTPS/SFTP
  • ดึง sources จากที่เก็บ GIT/SVN (นอกจากนี้คุณสามารถตั้งค่าการอัปเดตอัตโนมัติได้)
  • ใช้ปลั๊กอินแบบรวม (Maven, Eclipse, NetBeans, IntelliJ IDEA)

หลังจากการเริ่มต้นกระบวนการกำหนดค่าทั้งหมด (เช่น การเชื่อมต่อกับload balancer, การปรับแต่งการใช้หน่วยความจำ, การเปิดใช้ SSL หรือ IP หากจำเป็น เป็นต้น) จะได้รับการจัดการโดยอัตโนมัติ โดยไม่จำเป็นต้องแก้ไข source code ซึ่งมีการปรับแต่งเพียงอย่างเดียวที่คุณอาจจำเป็นต้องใช้คือการปรับเปลี่ยนการตั้งค่าแอปพลิเคชันแบบกำหนดเองบางอย่างเนื่องจากตำแหน่งใหม่ (เช่น ที่อยู่ IP หรือชื่อโดเมน - การกำหนดค่าเซิร์ฟเวอร์ที่เหมาะสมทั้งหมดจะสามารถแก้ไขได้โดยตรงเสมอ ผ่าน Ruk-Com Cloud แดชบอร์ดพร้อมกับการจัดการไฟล์ในตัว)

ด้วยวิธีนี้คุณสามารถโยกย้ายแอปพลิเคชันใดๆ ไปยัง PaaS จาก Cloud, VPS หรือ VM อื่นๆได้อย่างง่ายดายโดยไม่จำเป็นต้องปรับเปลี่ยนโค้ด