Unlock Cloud Experience on On-Premise: เสก Data Center เดิมให้กลายเป็น Internal Developer Platform แบบ Cloud-Ready

ไทย

kubernetes

 

ในยุคที่ “Cloud First” กลายเป็นมาตรฐานไปแล้ว หลายคนคุ้นชินกับความสะดวกสบายที่กดเพียงไม่กี่คลิกก็ได้ Database หรือ Kubernetes Cluster มาใช้งาน แต่ในความเป็นจริง หลายองค์กรยังจำเป็นต้องรักษา On-Premise Data Center ไว้ ด้วยเหตุผลด้าน Security, Compliance หรือ Cost Management 

โจทย์ที่ท้าทายทีม Platform Infrastructure ของเราคือ:

"ทำอย่างไรให้ Hardware เดิมที่มีอยู่ (VMware vSphere & Enterprise Storage) มอบประสบการณ์ (Developer Experience) ที่รวดเร็ว อัตโนมัติ และยืดหยุ่น ได้เหมือนกับการใช้งาน AWS หรือ Google Cloud?"

บทความนี้จะพาไปเปิดเบื้องหลัง Tech Stack และ Design Choices ที่เราเลือกใช้เพื่อเปลี่ยน “Hardware” ให้กลายเป็น “Internal Developer Platform (IDP)” เพื่อให้เห็นภาพการทำงานที่สอดคล้องกัน เราได้แบ่งสถาปัตยกรรมของระบบออกเป็นส่วนสำคัญต่างๆ ดังนี้ครับ

kubernetes

 

1. The Foundation: Infrastructure as Code (IaC)

จุดเริ่มต้นของการทำ Platform คือต้องเลิกทำ Manual Operation ให้ได้มากที่สุด เราเปลี่ยนทุกอย่างให้เป็น Code เพื่อความแม่นยำและรวดเร็ว

Compute Provisioning (Terraform): เราเลิกใช้วิธี Clone VM ด้วยมือ แล้วหันมาใช้ Terraform เป็นตัวหลักในการทำ IaC กับ vSphere ช่วยให้เราสามารถ Versioning Infrastructure และ Provision VM ใหม่ได้ภายในไม่กี่นาที ลด Human Error ได้แทบ 100%

DNS as a Service (PowerDNS): ปัญหาคลาสสิกของ On-prem คือ “รอ IP/DNS” นาน เราแก้ปัญหานี้ด้วย PowerDNS เพราะรองรับการทำงานแบบ API-First ทันทีที่ Terraform สร้าง VM เสร็จ ก็สามารถยิง API ไปอัปเดต DNS Record ได้ทันที ไม่ต้องรอ Admin มา Map IP อีกต่อไป

 

2. Kubernetes Automation: The “10-Minute” Cluster

หัวใจสำคัญของ Modern Application คือ Kubernetes แต่การจัดการ Cluster บน On-Premise นั้นไม่ใช่เรื่องง่าย เราจึงเลือกท่าที่ Cloud Native ที่สุด

Cluster Management (Cluster API): แทนที่จะใช้ Ansible Script แบบเดิมๆ เราเลือกใช้ Cluster API (CAPI) ซึ่งเป็นการจัดการ Kubernetes ในรูปแบบ Declarative (ระบุสิ่งที่ต้องการ แล้วระบบจะทำให้เป็นจริง)

The Workflow: เราสร้าง Cluster จาก Helm Template ที่เตรียมไว้ แล้ว Apply ลง Management Cluster

The Result: เราสามารถเสก Kubernetes Cluster พร้อม Hardening Script (Security config) เสร็จสิ้นภายในเวลา ไม่ถึง 10 นาที รวมถึงจัดการ Day-2 Operation อย่างการ Upgrade Version หรือ Scale Node ได้ง่ายเหมือนอยู่บน Cloud

Storage Integration (CSI Driver): เพื่อให้ Kubernetes คุยกับ Enterprise Storage ได้อย่างมีประสิทธิภาพ เราเลือกใช้ CSI Driver จาก Vendor โดยตรง ทำให้การจองพื้นที่ (PVC) ทำได้อัตโนมัติและดึงศักยภาพของ Enterprise Storage มาใช้ได้เต็มที่

 

3. Application Services: Cloud-Native Experience

เมื่อรากฐานแข็งแรง เราสร้าง “Service Catalog” ให้ทีม Application หยิบไปใช้ได้เลยโดยไม่ต้องกังวลเรื่อง Infra เบื้องหลัง

Networking (Kube-VIP & Nginx Ingress):

L4 Load Balance: เราใช้ Kube-VIP เพื่อจำลองบริการ LoadBalancer Service type ให้กับ Kubernetes (ทำหน้าที่คล้าย ELB บน Cloud) เพื่อแจก IP ให้ Service ที่ต้องการ Access จากภายนอก

L7 Load Balance: ใช้ Nginx Ingress จัดการ HTTP Routing และ SSL Termination ซึ่งเป็นมาตรฐานที่ Developer คุ้นเคย

S3-Compatible Storage (MinIO): Application ยุคใหม่ต้องการ Object Storage เราจึง Deploy MinIO บน Kubernetes เพื่อให้บริการ S3 API ทีม Dev สามารถจัดการ Bucket ได้เอง ไม่ต้องพึ่งพา SAN/NAS แบบเก่า

 

4. The Bridge: Modernizing Legacy Workflow

ส่วนที่น่าสนใจที่สุดคือการเชื่อมต่อโลกเก่า (Legacy) เข้ากับโลกใหม่ (Cloud-Native)

Smart SFTP Service (SFTPGo + MinIO): ระบบ Legacy หลายตัวยังคงส่งไฟล์ผ่าน SFTP แต่เราไม่อยากเก็บไฟล์ลง Disk แบบเดิมๆ เราจึงเลือกใช้ SFTPGo รันบน Kubernetes

The Magic: เรา Config ให้ SFTPGo ใช้ MinIO (Object Storage) เป็น Backend ในการเก็บข้อมูล

The Benefit: ทันทีที่ระบบ Legacy อัปโหลดไฟล์เข้ามาทาง SFTP ไฟล์นั้นจะไปโผล่บน S3 Bucket ทันที ทำให้ Application สมัยใหม่สามารถใช้ API ดึงไฟล์ไป Process ต่อได้แบบไร้รอยต่อ (Seamless Integration)

 

5. Operations & Observability

เพื่อให้ Platform ดูแลตัวเองได้และทีม App มั่นใจในการใช้งาน เราจัดเตรียม Stack สำหรับการ Monitor ไว้พร้อมสรรพ

Logging & Tracing (ECK): ใช้ Elastic Cloud on Kubernetes (ECK) เพื่อ Deploy ELK Stack ให้ทีม App สามารถ Search Log และทำ Investigation ได้ด้วยตัวเอง (Self-Service)

Monitoring (Prometheus & Grafana): ทำ Dashboard กลางให้เห็นทั้ง Application Metrics และ Infrastructure Health ช่วยให้ทำ Capacity Planning ได้อย่างแม่นยำ

Job Scheduler (Airflow): สำหรับงาน Batch และ Data Pipeline เรามี Airflow บน Kubernetes ให้ใช้งาน เพื่อจัดการ Schedule และ Flow การทำงานที่ซับซ้อนได้อย่างเป็นระบบ

Conclusion


การทำ On-Premise ให้เหมือน Cloud ไม่ใช่แค่การติดตั้ง Tools ตามกระแส แต่คือการออกแบบ Workflow ที่ลดการรอคอย (Blocking) และเปลี่ยนทุกอย่างให้เป็น Self-Service ผ่าน API

แต่สิ่งที่สำคัญกว่าความเร็ว คือ Architecture ที่เราออกแบบไว้นี้มีความเป็น “Cloud Agnostic” อย่างแท้จริง เพราะ Tools ทั้งหมดที่เราเลือกใช้ (Terraform, Cluster API, MinIO, etc.) เป็น Open Standard ที่ไม่ผูกติดกับ Hardware หรือ Cloud Provider เจ้าใดเจ้าหนึ่ง

นั่นหมายความว่า วันข้างหน้าหากธุรกิจต้องการขยับขยายไปสู่ Public Cloud หรือทำ Hybrid Cloud เราก็พร้อมจะ Scale ออกไปได้ทันทีโดยทีม Application แทบไม่ต้องเปลี่ยนวิถีการทำงาน

Stack ทั้งหมดนี้จึงช่วยให้ทีม Platform ทำงานได้ Smart ขึ้น และช่วยให้ทีม Application ส่งมอบ Business Value ได้ไวขึ้น โดยไม่ต้องสนว่า Server จริงๆ จะตั้งอยู่ที่ Data Center ของเรา หรืออยู่บน Cloud ครับ

Looking for a DevOps solution that automates your workflow and reduces business costs? SCB TechX helps you modernize your delivery pipeline and bring high-quality products to market faster, building a foundation for long-term growth.

For service inquiries, please contact us at Please fill out this form

Learn more: xPlatform | SCB Tech X

Related Content

  • ทั้งหมด
  • Blogs
  • Insights
  • News
  • Uncategorized
    •   Back
    • Careers
    • Data Science
    • Lifestyle
    • Product
    • Strategy
    • Technology
    • User Experience
    • xPlatform
    • DevOps
    •   Back
    • PointX Products
    • Events
    • Others
    • Leadership
    • Partnership
    • Services & Products
    • Joint ventures
    •   Back
    • Blockchain
    • Finance
    • Tech innovation

Your consent required

If you want to message us, please give your consent to SCB TechX to collect, use, and/or disclose your personal data.

| การเพิกถอนความยินยอม

หากคุณต้องการเพิกถอนการให้ความยินยอมในการเก็บรวบรวม ใช้ และ/หรือเปิดเผยข้อมูลส่วนบุคคล กรุณาส่งคำร้องหาเรา

Vector

Message sent

We have receive your message and We will get back to you shortly.