標籤: pve
esxi轉centos 5 到pve失敗,出現 mount could not find system /dev/root
咖啡偶最近進行一系列從esxi轉到pve的工作, 其中出現轉CentOS 5這種老舊vm失敗的狀況, 錯誤如下:
Unable to access resume device (LABEL=SWAP-hda3)
mount: could not find filesystem ‘/dev/root’
測試過很多方式, 例如改ide, sata, scsi 等方式都不行, 最後終於找到重建開機程序 initrd 的方式解決,
解決方式如下:
- 下載相對應大版本OS , Centos 5.x 都可以
- 掛載 Centos 5開機片開機, 輸入 linux rescue(救援模式)
- 輸入 chroot /mnt/sysimage 讓系統暫時恢復成原系統的狀態
- 刪除/boot/initrd-xxx.img 開機檔案 xxx代表原系統開機時的版本號碼
- 查詢一下 /lib/module 是否有xxx版本號碼
- 重建開機檔案 mkinitrd /boot/initrd-xxx.img xxx
- 重開機, 卸載Centos 5開機片, ,改由原系統開機測試是否能成功
Proxmox ve出現 cluster not ready – no quorum?錯誤
咖啡偶使用pve的時候, 突然出現兩台pve無法登入,但vm正常的情狀, 情急之下重開機, 但是重開機之後出現:
cluster not ready – no quorum?
上網查了一下,好像只能連到主要pve, 然後手動這樣處理, 接下來就看偶有沒有時間回過頭來仔細想想問題在哪了,以及如何正確處理這問題.
pvecm expected 1 service pve-cluster restart
pve的備份檔案vma
pve 內建的備份檔案是vma格式, 加上lzo壓縮或是gzip壓縮 .
因此要了解裡面有甚麼檔案, 需先解壓縮後, 再使用vma這指令解開裡面的檔案.
解開vma
vma extract xxx.vma "目錄名稱"
解開檔案之後,就可以進行編輯,編輯之後, 再做成vma檔案, 其中比較特別的是若檔案名稱是 disk-drive-sata0 , 做成vma的時候要指定檔名為 drive-sata0 , 否則做出來的檔案, 名稱會不一樣, 指令如下:
vma create xxx.vma -c 目錄名稱/qemu-server.conf drive-sata0=目錄名稱/disk-drive-sata0.raw
若要還原,可以執行qmrestore (107是主機代號,可改):
qmrestore xxx.vma 107
解開vma檔案覺得太大時,可以縮小:
qemu-img convert -O qcow2 xxx.raw new_xxx.raw 或 qemu-img convert -O qcow2 -c xxx.raw new_xxx.raw
安裝Proxmox VE 5.3 注意事項
這陣子積極將vmware esx 轉成 pve 5.3 , 以後遇到安裝注意事項就寫在這裡.安裝
額外安裝套件
1. 查看iscsi設備
apt-get install lsscsi
可使用 lsscsi 查看目前iscsi 設備
2. 安裝multipath-tools
apt-get install multipath-tools
這方式原本是想要讓系統使用iscsi MPIO 的功能,能夠自動切換線路,但似乎設定上很麻煩, 不過還是先安裝起來.
因為這作法可以解決pve若有兩個不同網段網卡連接到Nas的兩個網卡, 造成pve出現兩個相同device的錯誤,
WARNING: PV Lk4DU4-4HO7-of10-g9cR-tsK4-f9Ka-s2FqfC on /dev/sdd was already found on /dev/sdc.
安裝 multipath-tools 之前 , 執行 pvscan 會出現
PV /dev/sdd VG LVM-FreeNasVM lvm2
但是安裝之後, 會出現
PV /dev/mapper/36589cfc000000e54a909f483d8485fb6 VG LVM-FreeNasVM
掛載NFS可考慮使用soft的方式掛載,以免因斷線或是線路不穩造成災難:
編輯 /etc/pve/storage.cfg , 在NFS區塊找出 options vers=3 最後面加上 soft 參數, 變成 options vers=3,soft # 2022/07/27 後來升級改用 nfs vers=4.2 似乎就不用加上soft選項了
列出/刪除cluster的node
1. 列出 pvecm nodes 2. 刪除 pvecm delnode "Node Name" , 最後記得刪除相關檔案(也可以備份) rm /etc/pve/nodes/"Node Name"
proxmox ve如何刪修iscsi target連線(使用指令)
查看目前scsi連線,有兩個方法 1. apt install lsscsi lsscsi 2. 查看目前scsi連線 iscsiadm -m node 解除iscsi連線 1. 查詢iscsi連線 iscsiadm -m node 2. 登出 iscsiadm -m node -T --logout 3. 刪除連線 iscsiadm -m node -o delete -T target name = ign.... 刪除proxmox 上LVM的group name 1. 將LVM group name 狀態改成離線 vgchange -a n <group name> 2. 移除 vgremove <group name>
proxmox ve如何擴充 lvm
原本使用 lvm 掛載FreeNas 的 iscsi (1T容量) , 但是不夠用了,因此紀錄一下擴充方式:
1. 到FreeNas擴充該iscsi的容量到3T
2. 此時原本 pve 上面的 lvm 還是 1T, 可輸入pvdisplay確認,並且記下iscsi對應到哪個路徑 ,例如: /etc/sdb
3. ssh終端機登入 pve 主機, 輸入 pvresize /dev/sdb , 再輸入 pvdisplay 查看
移轉esxi vm至pve
1. esxi匯出 ova 檔案或是ovf檔案, 並且注意該vm的硬體配置
2. 將ova檔案移至pve能存取的storage 上
3. ssh 登入pve, 使用tar vfx 方式解開ova檔案
4. ssh 登入pve, 將解開的檔案裡面的vmdk轉成qcow2
qemu-img convert -f vmdk xxx.vmdk -O qcow2 xxx.qcow2
#2023/9/15
#若vmdk有 xxx.vmdk xxx-flat.vmdk 而且xxx-flat.vmdk檔案最大,轉換時只需輸入xxx.vmdk,qemu-img會自動認出xxx-flat然後轉換
5. 到pve新增vm, 並且確認esxi vm的硬碟, 使用sata或是ide(這部份弄錯會導致無驅動程式,而無法開機)
等到vm新增完畢, 再將步驟4的qcow2檔案覆蓋過去pve上新的vm檔案
刪除Proxmox VE cluster
以前尚未接觸到 PVE的時候, 以為這個世界上就只有 esxi 才是王道, 但是esxi 免費版用久了, 總覺得備份,還原, 與移機非常麻煩, 甚至要停機.
現在接觸到PVE之後, 驚為天人, 備份還原非常方便. 外加FreeNas新版出世之後, 立馬捨棄XigmaNAS + esxi 組合, 改用 PVE + FreeNAS 這種新組合.
最後PVE還可以安裝多台, 只要FreeNAS夠強, 我們就可以組成 cluster , 遷移VM就會非常方便(幾分鐘之內就可完成).
另外若pve不當主要cluster, 卻不小心新增了怎辦?
以下是刪除的方式(for PVE 5.3 ):
systemctl stop pve-cluster systemctl stop corosync pmxcfs -l rm /etc/pve/corosync.conf rm -r -f /etc/corosync/* killall pmxcfs systemctl start pve-cluster