按下更新之前:哪一種更新會停掉什麼

幾個月沒更新的人真正害怕的不是更新本身,而是不知道什麼會停止。更新並非只有一種,各自的影響也完全不同。

AtlasPVE ·

本條目涵蓋以下問題

  • 更新 proxmox 安全嗎
  • proxmox apt upgrade 會停掉什麼
  • proxmox 核心更新需要重新啟動嗎
  • proxmox 更新後壞掉
  • proxmox 什麼時候該更新

在已經八個月沒更新這句話背後,並不是懶惰,而是不確定:沒有人知道按下按鈕後什麼會停止。而等待並不會改善情況,只會讓它惡化。等得越久,一次累積的變更就越多,這正是原本想避開的不確定性,如今變得更大了。

一個問題就能化解這份恐懼:這次更新會動到什麼。

依影響分成五類

什麼都不會停止。函式庫、工具、命令列程式。新版本會在下一次某個東西啟動時自然生效。囤積這類更新沒有任何好處。

某個服務會重新啟動。面板或某個背景服務會中斷幾秒鐘。虛擬機器會繼續執行。這類更新可以在白天進行。

網路、儲存空間或叢集。執行中的機器會在這裡感受到影響:重新啟動後網路可能無法恢復,儲存空間會影響磁碟流量,叢集元件會影響節點之間的共識。這類更新要單獨進行。

需要重新啟動。核心與系統的基礎元件。這裡最重要的細節是:已安裝但尚未重新啟動進入的核心更新,並沒有真正套用。機器仍在執行舊的核心。人們就是在這裡以為已經修補,實際上卻沒有。

版本系列的變更。升級到新的主要版本。這不是更新,而是遷移,需要有自己的計畫。

套件管理員回答的不是真正要問的問題

套件管理員回答的是這些能否一起安裝,而它通常會說可以。這是相依性的答案,而不是維運上的答案。如果在同一輪中同時進行核心更新和網路變更,一旦出了問題,就無從得知是哪一個造成的,而查明原因所需的網路,可能也已經不在了。

實務上的順序

先處理什麼都不會停止的更新。接著是會重新啟動服務的更新。網路、儲存空間與叢集單獨進行。需要重新啟動的更新放在最後,並且刻意安排。

一條規則就能總結這一切:需要重新啟動與會變更網路,絕不放在同一個步驟。這兩者湊在一起時,故障本身與診斷故障的工具會在同一刻消失。

按下之前的兩個問題

現在能不能重新啟動。網路如果沒有恢復,還能不能連到這台機器。如果第二個問題的答案是不能,那麼會動到網路的更新就不是例行維護,而是需要規劃的工作。

Atlas 的做法

Atlas 不會把待更新的套件顯示成一份扁平的清單。它依照影響將每個套件分類,並分成數個輪次:什麼都不會停止的、會重新啟動服務的、會動到網路與儲存空間及叢集的、需要重新啟動的,以及會變更版本系列的。每一輪按一次;不會自動進到下一輪。

不應該並列在一起的組合會自動拆成兩半:即使套件管理員表示這些可以一起安裝,Atlas 仍會把它們放進兩個不同的輪次,因為這裡要問的是維運問題,而不是相依性問題。在較輕微的情況下,它不會拆開,而是發出警告;純資訊性的項目則完全不會打斷流程。

如果核心已安裝但尚未重新啟動進入,Atlas Watch 會把它回報為待處理的工作,讓以為已經修補的狀態不會悄悄延續下去。

資料來源

Proxmox 官方文件。內容為英文,且在此主題上以官方文件為準。

相關條目

這項工作在 Atlas 中是什麼樣子?

前往產品頁面