Ruk-Com Cloud PaaS รวมคอนเทนเนอร์ 2 ประเภทไว้ในแพลตฟอร์มเดียวกัน โดยใช้เทคโนโลยีการรวมแอปพลิเคชัน Containerization เพื่อแก้ปัญหาที่แตกต่างกัน โดย Ruk-Com Cloud Orchestration จะได้รับประโยชน์จากการปฏิบัติการทั้งสอง
- ระบบคอนเทนเนอร์ (System Containers) – เป็นระบบปฏิบัติการที่เก่าแก่ที่สุดที่คล้ายกับ virtual machines แบบ Stateful เป็นศูนย์กลางของระบบปฏิบัติการที่สามารถประมวลผลได้หลายกระบวนการ ระบบคอนเทนเนอร์เหมาะสำหรับแอปพลิเคชันแบบดั้งเดิมเนื่องจากระบบอนุญาตให้สถาปัตยกรรม เครื่องมือ และการกำหนดค่าสำหรับ Virtual Machines (VMs) การปฏิบัติการของระบบคอนเทนเนอร์มีหลายรูปแบบที่แตกต่างกัน เช่น LXC/LXD, OpenVZ/Virtuozzo, BSD jails, Linux vServer และอื่นๆ โดย Ruk-Com Cloud PaaS ใช้วิธี Virtuozzo
- แอปพลิเคชันคอนเทนเนอร์ (Application Containers) – เป็นคอนเทนเนอร์ที่ค่อนข้างใหม่ โดยทั่วไปจะรันภายในกระบวนการเดียวด้วยโครงสร้างแบบ Stateless และให้บริการแบบ Microservice ที่ง่ายต่อการปรับขนาดในรูปแบบ horizontal แอปพลิเคชันคอนเทนเนอร์เหมาะสำหรับโครงสร้างพื้นฐานที่ไม่เปลี่ยนรูปและถาวร ในตลาดมีการใช้งานแอปพลิเคชันคอนเทนเนอร์เป็นอย่างมาก เช่น Docker, Containerd, CRI-O และอื่นๆ Ruk-Com Cloud PaaS ใช้ Docker ซึ่งเป็นเทคโนโลยีที่ใช้กันอย่างกว้างขวางที่สุดสำหรับแอปพลิเคชันคอนเทนเนอร์

เมื่อพูดถึงคอนเทนเนอร์ในปัจจุบัน คนส่วนมากจะนึกถึงเทคโนโลยีของ Docker เนื่องจากมีการโปรโมทและใช้งานอย่างสูงเมื่อปีที่ผ่านมา ผู้จำหน่าย cloud ส่วนมากเสนอให้ใช้ Docker แอปพลิเคชันคอนเทนเนอร์ภายใน Virtual Machines โดยในแต่ละ VMs จะประกอบด้วย Guest OS ในหน่วยความจำของตนเอง, CPU และ disk footprint ที่เพิ่มจำนวนทรัพยากรที่จำเป็นในการรันแอปพลิเคชันจะทำให้โฮสติ้งมีราคาสูงขึ้น ในกรณี Ruk-Com Cloud ใช้เทคโนโลยี Docker ในการรันภายในระบบคอนเทนเนอร์ ภายใน kernel เดียวกัน ดังนั้นจึงแบ่งปันทรัพยากร OS จากระบบปฏิบัติการโฮสต์เพื่อลดการใช้งาน และในขณะที่ lightweight มากกว่า VMs จะต้องใช้คอนเทนเนอร์ที่ซับซ้อนกัน แต่สิ่งเหล่านี้ยังคงสามารถแยกได้ดีและปลอดภัย

ภายในแพลตฟอร์ม Ruk-Com Cloud สามารถใช้งานได้หลายรูปแบบในกรณีต่างๆ ดังนี้:
- Certified Managed Containers
- Virtual Private Servers (Elastic VPS)
- Custom Docker Containers
- Docker Engine CE (Docker Native)
- Kubernetes Cluster
ในส่วนของด้านล่างนี้จะอธิบายการใช้งานในแต่ละกรณีอย่างละเอียด รวมถึงให้คำแนะนำบางประการเกี่ยวกับตัวเลือกที่เหมาะสมกับงานของคุณมากขึ้น
Certified Managed Containers
Ruk-Com Cloud ได้จัดเตรียมคอนเทนเนอร์ที่ได้รับการรองรับไว้หลายรูปแบบ ซึ่งเหมาะกับการใช้งานของลูกค้าเป็นส่วนมาก โดยแพลตฟอร์มนี้จะนำเสนอกลุ่มของซอฟต์แวร์ที่มีการจัดการและกำหนดค่าไว้ล่วงหน้าและอนุญาตให้สร้าง topology ที่มีความยืดหยุ่นกับแอปพลิเคชันที่ต้องการใช้เซิร์ฟเวอร์ (Java, PHP, Node.js, Ruby, Python, หรือ Go), load balancer, databases และอื่นๆ

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

คอนเทนเนอร์เหล่านี้ยังได้รับประโยชน์เพิ่มเติม เช่น การกำหนดค่าอัตโนมัติตามขีดจำกัดของทรัพยากรและการปรับขนาดอัตโนอัติ (cloudlet), การติดตั้งใบรับรอง SSL อัตโนมัติ, การ deploy แอปพลิเคชันอัตโนมัติ, การทำคลัสเตอร์อัตโนมัติ และการจัดการอัปเดตความปลอดภัย
Virtual Private Servers (Elastic VPS)
Ruk-Com Cloud คอนเทนเนอร์นำเสนอ Elastic VPS เซิร์ฟเวอร์ส่วนตัวแบบเสมือนจริง พร้อมระบบปฏิบัติการที่ติดตั้งไว้ล่วงหน้า เช่น CentOS, Ubuntu และ Debian ซึ่งเป็น pure OS-based คอนเทนเนอร์ที่ไม่ต้องติดตั้งซอร์ฟแวร์หรือปรับแต่งเพิ่มเติม ถือว่าเป็นตัวเลือกที่เหมาะสมที่สุดสำหรับการจัดแอปพลิเคชันคอนเทนเนอร์เดิม เนื่องจากมีการเปลี่ยนแปลงน้อยที่สุดหรือไม่เปลี่ยนแปลงเลยในขณะที่ย้ายข้อมูลจาก Virtual Machines

ดังนั้นเนื่องจากเทมเพลทนี้แทบจะว่างเปล่า หลังการติดตั้งผู้ใช้งานควรกำหนดค่าเพื่อเข้าถึง root ที่ถูกจัดเตรียมไว้ให้เข้ากับคอนเทนเนอร์ Elastic VPS เซิร์ฟเวอร์ส่วนตัวแบบเสมือนจริงที่มี lightweight มากกว่าและมีข้อดีของการปรับขนาดอัตโนมัติแบบ vertical และ horizontal scaling
Custom Docker Containers
Custom Docker Container เป็น Image ของ Docker (ขึ้นอยู่กับ OS ที่รองรับ) และ deploy ภายใน Ruk-Com Cloud ซึ่งทำงานได้ดีกับคุณสมบัติที่แตกต่างของแพลตฟอร์มส่วนใหญ่ (แต่ไม่ทั้งหมด) เช่นการปรับขนาดภายในแบบ vertical และ horizontal scaling กล่าวอีกนัยหนึ่งคือระบบไฟล์ของ Docker image ที่กำหนดเอง ถูกจัดไว้ภายในระบบคอนเทนเนอร์ในเวลาที่โปรแกรมทำงาน

เมื่อเปรียบเทียบกับคอนเทนเนอร์ที่มีการจัดการและได้รับการรับรอง ตัวเลือกนี้ช่วยในการเข้าถึงกองซอร์ฟแวร์ที่หลากหลาย ผู้ใช้งานสามารถเลือก Docker images จากบุคคลที่สาม (3rd party) ได้อย่างกว้างขวางที่ Docker Hub หรือ public/private คอนเทนเนอร์อื่นๆที่ทำงานร่วมกันได้ อย่างไรก็ตามการจัดการ image โดยบุคคลที่สาม จะไม่สามารถรับประกันได้ว่าแพลตฟอร์มสามารถทำงานร่วมกันได้

Docker Engine CE (Docker Native)
Ruk-Com Cloud PaaS รองรับ Docker Engine Community Edition ที่ทำงานภายในระบบคอนเทนเนอร์ แต่ในขณะเดียวกันก็สามารถทำงานร่วมกันได้อย่างสมบูรณ์กับระบบ Docker แบบดั้งเดิม

การรวมกลุ่มดังกล่าวทำให้สามารถทำงานร่วมกับเครื่องมือหลักของเทคโนโลยี Docker คอนเทนเนอร์ได้แก่ :
- Docker Engine – ประมวลผล Dockerfile แสดงหรือเรียกใช้ image คอนเทนเนอร์ที่สร้างไว้ล่วงหน้า
- Docker Registry – จัดเก็บและจัดเตรียมการเข้าถึง images แบบ public/private ที่หลากหลายสำหรับการ deploy ภายใน Docker Engine
- Docker Compose – ช่วยในการรวบรวมแอปพลิเคชันที่มีส่วนประกอบหลายอย่าง ซึ่งการกำหนดค่าจะถูกประกาศไว้ภายในไฟล์เดียว
- Docker Swarm – แสดงถึงnodes Docker อย่างอิสระหลาย nodes ที่เชื่อมต่อกันเป็นคลัสเตอร์
Ruk-Com Cloud นำเสนอ Docker Engine CE เวอร์ชั่นสำเร็จรูป และ Docker Swarm Cluster พร้อมทั้งการทำคลัสเตอร์อัตโนมัติ

รายละเอียดเพิ่มเติม:
- ติดตั้ง Docker Engine อัตโนมัติและเชื่อมต่อกับ Swarm Cluster
- การคลัสเตอร์ Docker Swarm อัตโนมัติและการปรับขนาด
- การเชื่อมต่อและการจัดการกับ Docker Engine
- การบริการ deploy คลัสเตอร์ Docker Swarm และ Kubernetes
Kubernetes Cluster
แอปพลิเคชันคอนเทนเนอร์สามารถประมวลผลและจัดการโดย Kubernetes orchestration tool ซึ่งเป็นแพลตฟอร์ม open-source ที่ออกแบบมาสำหรับการ deploy และการจัดการความผิดพลาดของแอปพลิเคชันคอนเทนเนอร์ สามารถจัดการงานที่ซับซ้อนของคอนเทนเนอร์ อย่างเช่นการ deploy, การค้นหาบริการ, การอัปเกรดแบบ rolling, การรักษา และการจัดการความปลอดภัย

การใช้งาน Ruk-Com Cloud PaaS Kubernetes จะทำให้การติดตั้งคลัสเตอร์ การกำหนดค่า การอัปเดต และการจัดหาบริการ ถูกรวมไว้ล่วงหน้าหลายรายการโดยอัตโนมัติ (เช่น Weave CNI, CoreDNS, Traefik เป็นต้น)

กล่าวอีกนัยหนึ่งการใช้งาน Kubernetes โดย Ruk-Com Cloud Orchestration มีความสามารถในการทำงานร่วมกันสูงสำหรับโปรเจกต์ที่ออกแบบมาสำหรับ Kubernetes ตั้งแต่เริ่มต้น ประโยชน์หลักของการใช้ Ruk-Com Cloud Kubernetes คือรูปแบบของการจ่ายเท่าที่ใช้งาน ซึ่งจะช่วยแก้ปัญหาการปรับขนาดที่เหมาะสม และทำให้การโฮสต์คอนเทนเนอร์หลาย ๆ คอนเทนเนอร์มีประสิทธิภาพมากขึ้น
ข้อมูลเพิ่มเติมเกี่ยวกับคลัสเตอร์ Kubernetes สามารถดูได้จากส่วนเอกสารในส่วนต่างๆ:
- ภาพรวมของ Kubernetes
- การเข้าถึง Kubernetes Cluster
- การปรับขนาด Kubernetes บนแอปพลิเคชันและระดับการเข้าถึงคลัสเตอร์
- การรวบรวม Kubernetes Helm
ตอนนี้คุณได้ทราบเกี่ยวกับคอนเทนเนอร์ประเภทต่างๆของ Ruk-Com Cloud รวมถึงข้อมูลจำเพาะ ที่สามารถช่วยในการเลือกตัวเลือกตามความต้องการให้เหมาะสมที่สุดสำหรับโปรเจกต์คุณ