就地升級是使用apt完成的。需要熟悉apt才能繼續此升級機制。
需要在群集中每個Proxmox VE節點的命令行上執行以下操作(通過控制台或ssh;最好通過控制台,以避免ssh連接中斷)。切記:在繼續操作之前,請確保已創建所有VM和CT的有效備份。
最新的Proxmox VE 5.4軟件包中包含一個名為pve5to6的小型清單程序。該程序將在升級過程之前,之中和之後提供有關潛在問題的提示和警告。可以通過執行以下命令來調用它:
pve5to6
該腳本僅檢查和報告內容。默認情況下,不對系統進行任何更改,因此不會自動修復所有問題。請記住,Proxmox VE可以進行大量自定義,因此該腳本可能無法識別特定設置的所有可能問題!
建議在每次嘗試解決問題後重新運行腳本。這樣可以確保所採取的措施實際上可以修正相應的警告。
使用Corosync 3,在線格式已更改。現在它與Corosync 2.x不兼容,因為它用kronosnet切換了基礎多播UDP堆棧。由Proxmox VE 5.2版或更高版本生成的配置文件已經與新的Corosync 3.x兼容(至少足以處理升級而沒有任何問題)。
重要說明:升級之前,無論選擇哪種方式升級到Corosync 3,都必須先停止所有HA管理服務。停止所有HA服務可確保在升級過程中不會出現任何群集節點。這也意味著在Corosync升級的短時間內將沒有任何可用的HA功能。
首先,請確保清單腳本報告的所有與Corosync不相關的警告均已修復或確定為良性/錯誤否定。接下來,在每個節點上停止本地資源管理器“ pve-ha-lrm”。僅在它們停止之後,還要在每個節點上停止集群資源管理器“ pve-ha-crm”。通過在每個節點上運行以下命令來使用GUI(節點->服務)或CLI:
systemctl stop pve-ha-lrm
僅對所有節點完成上述操作之後,才在每個節點上運行以下命令:
systemctl stop pve-ha-crm
然後添加Proxmox Corosync 3 Stretch存儲庫:
echo "deb http://download.proxmox.com/debian/corosync-3/ stretch main" > /etc/apt/sources.list.d/corosync3.list
並運行
apt update
然後再次確保只更新或重新安裝corosync,kronosnet及其庫:
apt list --upgradeable Listing... Done corosync/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1] libcmap4/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1] libcorosync-common4/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1] libcpg4/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1] libqb0/stable 1.0.5-1~bpo9+2 amd64 [upgradable from: 1.0.3-1~bpo9] libquorum5/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1] libvotequorum8/stable 3.0.2-pve2~bpo9 amd64 [upgradable from: 2.4.4-pve1]
有兩種方法可以繼續進行Corosync升級:
注意:在升級期間,通常不允許對任何VM / CT或群集進行更改!
在所有節點上預下載到corosync-3的升級,例如,使用:
apt dist-upgrade --download-only
然後在所有節點上運行實際的升級:
apt dist-upgrade
在此過程中的任何時候,都可以使用以下命令驗證節點上群集仲裁的本地視圖:
pvecm status
在所有節點上完成對 Corosync 3.x的更新後,請在所有節點上重新啟動本地資源管理器和群集資源管理器:
systemctl start pve-ha-lrm systemctl start pve-ha-crm
如果在升級過程中任何VM和CT需要保持運行,請從當前升級的節點上遷移它們。將VM或CT從Proxmox VE的較舊版本遷移到較新版本將始終有效。從較新的Proxmox VE版本到較舊版本的遷移可能會起作用,但通常不支持。在計劃群集升級時,請記住這一點。
首先,確保系統使用最新的Proxmox VE 5.4軟件包運行:
apt update apt dist-upgrade
將所有Debian存儲庫條目更新為Buster。
sed -i 's/stretch/buster/g' /etc/apt/sources.list
禁用所有Proxmox VE 5.x存儲庫。這包括pve-enterprise存儲庫,pve-no-subscription存儲庫和pvetest存儲庫。
為此,在/etc/apt/sources.list.d/pve-enterprise.list和/etc/apt/sources.list文件中添加#符號以註釋掉這些存儲庫。請參閱Package_Repositories
echo "deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise" > /etc/apt/sources.list.d/pve-enterprise.list
有關無訂閱存儲庫,請參閱軟件包存儲庫。可能是這樣的:
sed -i -e 's/stretch/buster/g' /etc/apt/sources.list.d/pve-install-repo.list
(僅限Ceph)用proxmox.com ceph存儲庫替換ceph.com存儲庫
echo "deb http://download.proxmox.com/debian/ceph-luminous buster main" > /etc/apt/sources.list.d/ceph.list
如果有反向端口行,請將其刪除-當前,尚未使用安裝的反向端口存儲庫中的軟件包測試升級。
更新存儲庫數據:
apt update
根據系統性能,此操作將花費一些時間-最多60分鐘或更長時間。在具有SSD存儲的高性能服務器上,可以在5分鐘內完成dist升級。
從此步驟開始,獲取初始的升級軟件包:
apt dist-upgrade
在上述步驟中,可能會要求您批准一些替換配置文件的新軟件包。它們與Proxmox VE升級無關,因此您可以選擇要執行的操作。
重新啟動系統以使用新的PVE內核
rm /etc/apt/sources.list.d/corosync3.list
現在,您應該在文章Ceph Luminous to Nautilus之後將Ceph集群升級到Nautilus版本。
檢查已配置的軟件包存儲庫條目(請參閱Package_Repositories)並運行
apt update
其次是
apt dist-upgrade
在升級到PVE 6.x 之前獲取最新的PVE 5.x軟件包
請先參閱升級到corosync 3部分
作為基於Debian的發行版,Proxmox VE受大多數影響Debian的問題和更改的影響。因此,請務必閱讀針對升級的特定問題
特別是提高了OpenSSL的默認版本和安全級別(通常由pve5to6工具檢查)和使用環境變量進行su的語義更改
根帳戶必須設置密碼(您要記住)。否則,將在升級過程中卸載sudo軟件包,因此,如果未設置密碼,則您將無法以root用戶身份再次登錄。如果您使用的是Proxmox VE或Debian官方安裝程序,並且在安裝後沒有刪除,則可以。
至少當前版本的Gluster(6.5-1,可從gluster.org獲得)與我們的軟件包有衝突。升級必須通過選件完成
-o Dpkg::Options::="--force-overwrite"
如果已安裝此版本。將來的版本也可能如此。
確保Buster的存儲庫配置正確。
如果發生網絡故障,並且已經部分升級,請嘗試使用
apt -f install
請參閱從Grub失敗中恢復
原因:在升級過程中 /root/.ssh/config 檔案未更新
# pico ~/.ssh/config 將內容置換為 Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com