PVE學習筆記
虛擬機關閉或解鎖
qm unlock <VM ID>
qm stop <VM ID>
backup(備份)
vzdump 101 102 107 108 115 114 112 104 110 --compress lzo --mailnotification always --mode snapshot --quiet 1 --storage Backup --mailto mail@domain.com
安裝agent
apt install qemu-guest-agent
node損壞重新上線
service rrdcached stop
rm -rf /var/lib/rrdcached/*
service rrdcached start
確認結果
service rrdcached status
TASK ERROR: cluster not ready – no quorum?法定人數不夠時
備註說明:觀念加強,不要忘記pve是採用多數決的去中心化模式,因此當cluster中的端點數量不足時會鎖住pve的設定檔,故如果只有2台nodes時可能會遇到這個問題。
作法
pvecm status ---會看到Quorum: 2 Activity blocked
pvecm expected 1 ---叢集數更動為1,可先備份/etc/pve
service pve-cluster restart ---重新啟動叢集
可以做修改或新增(重加)node
EX:如需要刪除不要的node
pvecm delnode (node name)
2FA取消
將 /etc/pve/user.cfg 中的使用者的訊息取消
開機諜有做raid1 or 5可容錯而其中一台損壞時
sgdisk -R newdisk olddisk (直接複製分割方案)
sgdisk -G newdisk (確保唯一)
dd if=/dev/olddisk1 of=/dev/newdisk1
zpool replace rpool olddisk2 newdisk2 (可能需要使用-f強制)
如果pve出現CVE-2018-3646的漏洞提示時該如何處理
echo off > /sys/devices/system/cpu/smt/control 關閉CPU超線程
pve虛擬機直接掛載實體硬碟
ls -l /dev/disk/by-id/
vi /etc/pve/qemu-server/xxx(VMID).conf
virtio0: /dev/disk/by-id/ata-ST2000DL003-9VT166_5YD1ZYK5,size=2000G
#可以不用標註容量
Pve virtio 下載iso檔
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
識別網卡
安装ethtool
apt install ethtool -y
使用網卡燈號檢查對應網卡
ethtool --identify (網路端口名稱)
備註:有些網卡不支援這種方式
如果沒有只能直接用switch接線測試。
打開端口自動啟動 & 重啟系统
確認所有網卡設備位置
lspci | grep -i 'eth'
通過ethtool識別端口對應設備位置以及系统設備名
ethtool -i [設備名稱] #查看設備對應設備位置
ethtool [設備名稱] #通過查看是否連接確認設備名對應實際端口,如果硬體支持可以使用ethtool --identify [設備名] 命令確認)
端口自動啟動 & 重啟系统
开启硬件直通
BIOS中打开硬件直通相关选项(VT-d & VMX)
编辑Grub
nano /etc/default/grub
注释原条目,并增加开启参数
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
如果你的pcie设备分组有问题也可以换成这一行对分组拆分(直通遇到问题都可以尝试这个)
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream"
更新grub
update-grub
上传启动镜像
将镜像img扩展名修改为iso,直接通过PVE后台上传
创建虚拟机并设置直通
修改配置文件命令
nano /etc/pve/qemu-server/[虚拟机编号].conf
pve虛擬機遷移指定使用網路
qm migrate <虛擬機ID> <目標節點> --online --migration_network x.x.x.0/xx
虛擬機直通PCI界面設定方式
依照amd或intel的cpu不同而編輯grub,
Intel:
新增下方指令到GRUB_CMDLINE_LINUX_DEFAULT=""裡面
intel_iommu=on
AMD:
新增下方指令到GRUB_CMDLINE_LINUX_DEFAULT=""裡面
amd_iommu=on
使用update-grub 更新啟動設定。
新增下方資料到/etc/modules
#vfio
#vfio_iommu_type1
#vfio_pci
#vfio_virgfd
重新開機
將虛擬機從VMWare轉向PVE
方法1:
如果有訂閱VMWare8.0以上跟使用PVE8.2以上版本可以直接使用GUI介面進行轉移。
轉移的時候VM需要關機,看起來是最簡單的方式但我沒有試過,所以做之前記得做完整的資料備份。
方法2:
使用GUI介面上傳OVA到PVE在進行佈建,上船方式如下圖所示。
上傳完成後再點擊旁邊的Import進行佈建,調整成PVE可以搭配的硬體規格。
因為VMWare本身無法直接匯出OVA檔,需要使用官方工具,但如果沒有要那麼麻煩可以直接匯出OVF在用下方指令合成OVA檔
tar -cvf VM.ova VM.ovf VM.vmdk VM.mf
備註:要匯出的VM需要關機或複製一台新的做匯出,匯出的名稱最好是全英文的。
如果不想那麼麻煩其實也可以將OVF資料(含vmdk mf 等)上傳到使用PVE主機後進行布建,但這些過程就都是使用指令。
- 使用scp將資料上傳到PVE主機。
scp <來源路徑> root@<IP>:目標路徑
- 然後再使用qm importovf進行ovf的匯入。
qm importovf {vmid} {VM name}.ovf {target storage}
備註:可以加--format然後將格式轉成
raw
,vmdk
,qcow2或
--cpu x86-64-v2-AES --scsihw virtio-scsi-single等等,也可
以之後再用GUI修改比較簡易。 - 最後最重要如果是Windows系統,要將硬碟控制器從原本的iscsi更改成SATA或ide,先使用Detche刪除該硬碟,然後硬碟會變成Unset,點擊硬碟重新設定控制器SATA或ide就可以。
方法3:
系統轉移通常最重要的是資料,可以使用clonezilla或指令qm disk import進行匯入,
qm disk import {target VMID} {vmdk file} {target storage}
備註:跟qm importovf一樣後面可以加cpu format等等參數進行設定。
匯入後硬碟的設定會是unset,如果是Windows系統就改成sata或ide。
使用qemu-img將vhdx轉成qcow2
qemu-img convert -O qcow2 {原始檔案} {目標檔案}
另一種方式
qemu-img convert -f {來源格式} -O {目的格式} 來源檔案 目標檔案
將Local-Lvm合併到local
1.如果local-lvm已經有虛擬機或檔案都要移走,不然都會不見。
2.在cmd模式使用以下指
lvremove pve/data
lvextend -l +100%FREE -f pve/root
resize2fs /dev/mapper/pve-root
3.完成後local會增加。
4.local-lvm已經沒用需要刪除。
No Comments