วิธีตั้งค่า Cloud-Init VM บน Proxmox VE เพื่อสร้างและกำหนดค่า VM โดยอัตโนมัติ

Published on November 11, 2025
วิธีตั้งค่า Cloud-Init VM บน Proxmox VE เพื่อสร้างและกำหนดค่า VM โดยอัตโนมัติ

Cloud-Init คืออะไร

Cloud-Init เป็นเครื่องมือมาตรฐานที่ช่วยให้ระบบสามารถตั้งค่าการเริ่มต้นของเครื่องเสมือน (Virtual Machine: VM) โดยอัตโนมัติทันทีที่ VM บูตขึ้นครั้งแรก เช่น

  • สร้าง user และ password

  • เพิ่ม SSH public key

  • ตั้งค่า hostname, IP address, DNS และ gateway

  • รัน script พิเศษตอนเริ่มต้น

บน Proxmox VE เราสามารถใช้ Cloud-Init ร่วมกับ template เพื่อสร้าง VM ใหม่ได้รวดเร็วและเป็นมาตรฐานเดียวกันทุกเครื่อง

 

แบบที่ 1 ขั้นตอนการตั้งค่า Cloud-Init บน Proxmox VE 

การสร้างเทมเพลต Proxmox cloud-init

1. เปิด Shell แล้วใช้คำสั่งนำเข้าไฟล์ Cloud Image เข้ามาด้วยการดาวน์โหลด

$ wget https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img

2. นำเข้าอิมเมจเข้าสู่ Proxmox

$ qm create 100 --name ubuntu-cloud --memory 1024--cores 2 --net0 virtio,bridge=vmbr0,tag=149
$ qm importdisk 100 noble-server-cloudimg-amd64.img local-lvm
$ qm set 100 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-100-disk-0

3. แนบไดรฟ์ cloud-init เพื่อให้ Proxmox

$ mv noble-server-cloudimg-amd64.img ubuntu-cloudinit.qcow2

4. กำหนดค่าพารามิเตอร์ cloud-init

$ qm set 100\
--ide2 local-lvm:cloudinit \
--boot c \
--bootdisk scsi0 \
--serial0 socket \
--vga serial0

 

 

 

5. เมื่อทำเสร็จแล้ว เราจะดำเนินการกำหนดค่าพารามิเตอร์ cloud-init ต่อไปได้ เหมือนขั้นตอนการตั้งค่า cloud-init  หรือสามารถใช้คำสั่งนี้จัดการได้เช่นกัน

$ qm set 100\
--ide2 local-lvm:cloudinit \
--ipconfig0 ip=192.168.1.50/24,gw=192.168.1.1 \
--ciuser=ubuntu \
--sshkey ~/.ssh/id_rsa.pub \
--cipassword 'Letmein1$' \
--searchdomain cloud.local \
--nameserver 192.168.1.1 \
--ciupgrade 1

หรือหากคุณต้องการกำหนดค่าด้วย DHCP ก็จะมีลักษณะดังนี้:

$ qm set 100\
--ide2 local-lvm:cloudinit \
--ipconfig0 ip=dhcp \
--ciuser=ubuntu \
--sshkey ~/.ssh/id_rsa.pub \
--cipassword 'Letmein1$' \
--searchdomain cloud.local \
--nameserver 192.168.1.1 \
--ciupgrade 1

 

7.  ติดตั้ง guest-agent ด้วยคำสั่ง

$ sudo apt install qemu-guest-agent -y

 

8. จัดการติดตั้ง software ที่ต้องการให้ครบ จากนั้นทำแปลง VM เป็นเทมเพลต

$ qm template 100

 

 

 

9. ตอนนี้คุณมีเทมเพลต Proxmox cloud-init ที่สามารถโคลนสำหรับ VM ใหม่ได้

สำหรับการปรับใช้ VM ใหม่จากเทมเพลต กรณีคุณไม่ได้โคลนจาก UI เว็บ คุณสามารถใช้บรรทัดคำสั่งเพื่อดำเนินการนี้ได้เช่นกัน ตัวอย่างเช่น:

$ qm clone 100  200--name ubuntu-node1 --full
$ qm set 200--ipconfig0 ip=192.168.1.51/24,gw=192.168.1.1
$ qm start 200

 

 

 

 

 

แบบที่ 2 ขั้นตอนการตั้งค่า Cloud-Init บน Proxmox VE (UI)

1. สร้าง VM Template สำหรับ Cloud-Init เข้าสู่หน้าเว็บของ Proxmox  กด Create VM

2. ตั้งชื่อ VM เช่น ubuntu-cloudinit-template

3. แท็ป OS ให้เลือก Donot use any media

4. แท็ป  System กำหนด machine = q35 bios= uefi  และกำหนด EFI storage , format = qcow2 และเลือก qemu agent

5. แท็ป   disks  ไม่ต้องใช้ ลบได้เลย

6. กำหนด CPU

7. กำหนด Ram

8. กำหนด Network  ** ไม่เลือก Firewall

10. กด Finish

9.  ทำการลบ DVD ออกจาก VM (หน้า Hardware)

10. ไปที่เมนู Hardware ทำการเพิ่ม cloud-init เข้าไป

12. เปิด Shell แล้วใช้คำสั่งนำเข้าไฟล์ Cloud Image เข้ามาด้วยการดาวน์โหลด

$ wget https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img

 

 

13. ตรวจสอบไฟล์

$ ls

 

14. คำสั่งเปลี่ยนชื่อไฟล์

$ mv noble-server-cloudimg-amd64.img ubuntu-cloudinit.qcow2

 

15. ทำ Image resized

$ qemu-img resize ubuntu-cloudinit.qcow2 32G

 

 

16. importdisk

$ qm importdisk 8000 ubuntu-cloudinit.qcow2 local

 

$ qm set 8000 --serial0 socket --vga serial0

 

เท่านี้ก็เสร็จเรียบร้อย

 

17. กลับไปที่ VM Cloud-init  จะเจอ Unusde disk 0 เลือก Edit เลือก Discard, เลือกSSD Emulation กด Add

 

 

18. ตั้งค่า cloud-init จะพบช่องสำหรับกรอกค่าพื้นฐาน เช่น

  • User Name : ชื่อผู้ใช้หลัก เช่น root หรือ admin
  • Password
  • SSH Public Key
  • IP Configuration : ตั้งค่า Static IP หรือเลือก DHCP
  • DNS Server / Gateway

 

 

18 .  ติดตั้ง guest-agent ด้วยคำสั่ง

$ sudo apt install qemu-guest-agent -y

 

19. จัดการติดตั้ง software ที่ต้องการให้ครบ จากนั้นทำแปลง VM เป็นเทมเพลต

20. เลือก VM cloud-init แล้วเลือก Convert to template

 

 

 

21. ทำการ Clone VM template cloud-init สามารถนำไปสร้าง VM ใหม่ได้ทันที โดย

  • คลิกขวา Clone  เลือก “Full Clone” หรือ “Linked Clone”

  • กำหนดชื่อและ Node ที่ต้องการ

  • ระบบจะสร้าง VM ใหม่พร้อมค่าทั้งหมดจาก Cloud-Init

 

 

 

 

22. เมื่อ Clone  VM  สำเร็จ ให้ไปที่ VM นั้น เลือกเมนู Options > Boor order ทำการเลือก disk

 

 

23. สั่ง Start VM ได้เลย

 

 

–  เรียบร้อย เท่านี้ก้อใช้งานได้

 

ประโยชน์ของการใช้ Cloud-Init

  • ลดเวลาการติดตั้งและตั้งค่า VM ใหม่
  • สร้างหลายเครื่องได้รวดเร็วและมีมาตรฐานเดียวกัน
  • สามารถรวมกับ Automation Tools เช่น Ansible, Terraform ได้
  • ปลอดภัยกว่า เพราะสามารถใช้ SSH Key แทนรหัสผ่าน

 

การตั้งค่า Cloud-Init บน Proxmox VE เป็นขั้นตอนสำคัญสำหรับผู้ดูแลระบบที่ต้องการความรวดเร็วและความยืดหยุ่นในการ Deploy VM แบบอัตโนมัติ เพียงสร้าง Template ที่รองรับ Cloud-Init หนึ่งชุด ก็สามารถสร้าง VM ใหม่ได้ในไม่กี่คลิก ประหยัดทั้งเวลาและแรงงานในการดูแลระบบ

 

บริษัท AVESTA ให้บริการติดตั้ง จำน่าย Proxmox VE และพัฒนาระบบ AVT Infra Control Center for Proxmox VE เราเป็นตัวแทนตรง และ ได้รับการไว้วางใจ ให้ติดตั้งกับบริษัทน้อยใหญ่มากมาย สนใจสอบถาม Line OA : @avesta.co.th หรือ Email : [email protected]

วิธีตั้งค่า Cloud-Init VM บน Proxmox VE เพื่อสร้างและกำหนดค่า VM โดยอัตโนมัติ

Cloud-Init คืออะไร Cloud-Init เป็นเครื่องมือมาตรฐานที่ช่วยให้ระบบสามารถตั้งค่าการเริ่มต้นของเครื่องเสมือน (Virtual Machine: VM) โดยอัตโนมัติทันทีที่ VM บูตขึ้นครั้งแรก...

Read more »

มอนิเตอร์ Proxmox VE ด้วย ProxMenux

วันนี้เราขอเสนอวิธีการมอนิเตอร์ Proxmox VE ของท่านอย่างง่ายด้วย ProxMenux จริงๆ ต้องบอกว่า ProxMenux นั้นมันไม่ได้เป็นโปรแกรมมอนิเตอร์ Proxmox...

Read more »

Memory overcommitment ทำงานอย่างไร

Memory Overcommitment หรืออีกชื่อหนึ่งคือ Memory Oversubscription นั้นเป็นเทคโนโลยีที่อนุญาตให้ผู้ใช้งานหรือผู้จัดการ hypervisor นั้นสามารถที่จะตั้งค่าหน่วยความจำของ VMs ทั้งหมด...

Read more »

CPU overcommit คืออะไรและมันทำงานอย่างไร

สำหรับผู้ที่ใช้งาน VMware ESXi มาก่อนนั้น ท่านอาจจะคุ้นเคยกับคำว่า CPU Overcommit เนื่องจากเป็นฟีเจอร์หนึ่งที่ถือว่าเป็นจุดขาย เพราะมันทำงานโดย การอนุญาตให้เรากำหนดจำนวน...

Read more »

การเลือกชนิด processor สำหรับ VM บน Proxmox VE

สำหรับผู้ที่เริ่มใช้งาน Proxmox VE นั้นอาจจะต้องพบกับสับสนหลายอย่าง และ หนึ่งในสิ่งที่เจอบ่อยๆ ก็คือ การเลือกชนิด processor หรือเรียกง่ายๆ...

Read more »

สิ่งที่มักเข้าใจผิดเมื่อพูดถึง Virtualization Platforms

Hypervisor Type 1 หรือเรียกว่า Bare-metal Hypervisor คือซอฟต์แวร์ที่รันโดยตรงบนฮาร์ดแวร์ของเครื่องเซิร์ฟเวอร์ โดยไม่ต้องผ่านระบบปฏิบัติการก่อน ทำให้มีประสิทธิภาพสูง เสถียร...

Read more »