Skip to main content

Tạo Proxmox VM Cloud Image Centos 8 với Shell

SSH vào Node nào muốn install

Sau đây là ví dụ để install Centos 8 cloud image: https://cloud.centos.org/centos/8/x86_64/images/

file: CentOS-8-GenericCloud-8.4.2105-20210603.0.x86_64.qcow2

Download file cloud về và connect ssh vào máy node proxmox

Mình xài IDM download cho lẹ. bạn có thể xài shell script bên dưới với wget.

Run Shell:

8009 là số thứ tự VM mới ( coi chừng bị trùng ). Thay đổi để tạo số thứ tự bạn mong muốn. càng cao thì càng nằm dưới list view của proxmox ui.

#!/usr/bin/env bash
wget -O CentOS-8-GenericCloud-8.4.2105-20210603.0.x86_64.qcow2 https://cloud.centos.org/centos/8/x86_64/images/CentOS-8-GenericCloud-8.4.2105-20210603.0.x86_64.qcow2
qm create 8009 --name centos8-cloud --net0 virtio,bridge=vmbr0
qm importdisk 8009 CentOS-8-GenericCloud-8.4.2105-20210603.0.x86_64.qcow2 local-lvm
qm set 8009 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-8009-disk-0
qm set 8009 --ide2 local-lvm:cloudinit
qm set 8009 --boot c --bootdisk scsi0
qm set 8009 --serial0 socket --vga serial0

Nguồn tại đây: https://gist.github.com/OdracirJC/5e6fd420af44d992ba76296050c4ceda

Clone Template với mode Full Clone ( nhớ là không phải linked clone )

Sau khi tạo chạy thử xong bạn cần update repos urls

cd /etc/yum.repos.d/
sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
sudo yum update -y

rồi sau đó:

sudo yum install qemu-guest-agent

shutdown vm

vào options > qemu guest agent enable giống như hình

image.png

Chỉnh sudo không đánh password:

sudo visudo

thêm vào dòng sau dưới root ( đổi username thành tên username của bạn )

USERNAME ALL=(ALL)       NOPASSWD: ALL

image.png

tương tự với CENTOS 7:

qm create 8010 --name centos7-cloud --net0 virtio,bridge=vmbr0
qm importdisk 8010 CentOS-7-x86_64-GenericCloud.qcow2 local-lvm
qm set 8010 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-8010-disk-0
qm set 8010 --ide2 local-lvm:cloudinit
qm set 8010 --boot c --bootdisk scsi0
qm set 8010 --serial0 socket --vga serial0

Lưu ý: user mặc định là centos. sử dụng "hostnamectl set-hostname ABC_VM_NAME" bên trong vm để config hostname

hostnamectl set-hostname ABC_VM_NAME