使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上

使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上
由於 Windows 系統的貪婪,VPS 環境以輕量級 Linux 發行版為主:Mint、Colibri OS、Debian 或 Ubuntu,沒有對我們的目的來說不必要的重型桌面環境。 正如他們所說,只有主機,只有硬核! 事實上,這一點也不誇張:同一個 Debian 啟動時有 256 MB 內存和一個時脈頻率為 1 Ghz 的核心,也就是說,幾乎在任何「樹樁」上。 為了舒適地工作,您至少需要 512 MB 的記憶體和速度稍快的處理器。 但是,如果我們告訴您您可以在執行 Windows 的 VPS 上執行大致相同的操作,該怎麼辦? 為什麼不需要部署一台重型 Windows Server,它需要三到四公頃的 RAM 和至少幾個主頻為 1,4 GHz 的核心? 只需使用 Windows Server Core - 擺脫 GUI 和一些服務。 我們將在本文中討論如何執行此操作。

這個 Windows Server Core 是誰?

即使在Mikes 的官方網站上也沒有關於Windows(伺服器)Core 是什麼的明確訊息,或者更確切地說,那裡的一切都非常混亂,以至於您不會立即理解,但第一次提到可以追溯到Windows Server 2008 時代本質上,Windows Core 是一個正在運行的 Windows 核心伺服器(突然之間!),其自身 GUI 的大小和大約一半的側面服務「更薄」。

Windows Core 的主要特點是其對硬體的要求不高,並且透過 PowerShell 進行完全控制台控制。

如果您造訪 Microsoft 網站並查看技術需求,那麼要啟動 Windows Server 2016/2019,您將需要至少 2 GB RAM 和至少一個時脈為 1,4 GHz 的核心。 但我們都明白,透過這樣的配置,我們只能期望系統能夠啟動,但絕對不能讓我們的作業系統舒適地運作。 正是由於這個原因,如果 Windows Server 沒有在某些 Xeon 上提供昂貴的實體機,而不是廉價的虛擬機,則通常會從處理器分配更多記憶體和至少 2 核心/4 執行緒。

同時,伺服器系統的核心本身只需要 512 MB 內存,而 GUI 所消耗的那些處理器資源只是為了在屏幕上繪製並保持其眾多服務的運行而可以用於更有用的事情。

以下是 Microsoft 官方網站上支援的開箱即用的 Windows Core 服務與完整 Windows Server 的比較:

應用
服務器核心
服務器與桌面體驗

命令提示符
可用的
可用的

Windows PowerShell/微軟.NET
可用的
可用的

性能工具
不可用
可用的

Windbg(圖形使用者介面)
支持的
可用的

雷斯蒙程序
不可用
可用的

輸入regedit
可用的
可用的

Fsutil程式
可用的
可用的

磁碟快照.exe
不可用
可用的

磁碟部分
可用的
可用的

磁盤管理程序
不可用
可用的

開發管理工具
不可用
可用的

服務器管理器
不可用
可用的

MMC程式
不可用
可用的

事件vwr
不可用
可用的

Wevtutil(事件查詢)
可用的
可用的

SERVICES.MSC
不可用
可用的

控制面板
不可用
可用的

Windows 更新(圖形使用者介面)
不可用
可用的

Windows資源管理器
不可用
可用的

任務欄
不可用
可用的

工作列通知
不可用
可用的

任務管理器
可用的
可用的

Internet Explorer 或 Edge
不可用
可用的

內建幫助系統
不可用
可用的

Windows 10 外殼
不可用
可用的

Windows媒體播放器
不可用
可用的

PowerShell的
可用的
可用的

PowerShell 伊勢
不可用
可用的

PowerShell 輸入法
可用的
可用的

Mstsc程序
不可用
可用的

遠程桌面服務
可用的
可用的

Hyper-V管理器
不可用
可用的

正如您所看到的,Windows Core 被削減了很多內容。 與系統 GUI 相關的服務和進程,以及我們的控制台虛擬機器上絕對不需要的任何“垃圾”,例如 Windows Media Player,都被刪除了。

幾乎像Linux,但不是它

我很想將 Windows Server Core 與 Linux 發行版進行比較,但事實上這並不完全正確。 是的,這些系統在由於放棄了 GUI 和許多側面服務而減少資源消耗方面彼此相似,但在操作和一些組裝方法方面,這仍然是 Windows,而不是 Unix 系統。

最簡單的例子就是,透過手動建立Linux 內核,然後安裝軟體包和服務,即使是輕量級的Linux 發行版也可以變成像瑞士軍刀一樣粗暴的東西(這裡我真想開個關於Python 的手風琴笑話)並插入“如果程式語言是武器”系列中的圖片,但我們不會)。 在 Windows Core 中,這種自由度要少得多,因為畢竟我們面對的是 Microsoft 產品。

Windows Server Core 是現成的,其預設設定可以從上表估算出來。 如果您需要不受支援的清單中的某些內容,則必須透過控制台在線上新增缺少的元素。 確實,您不應該忘記按需功能以及將元件下載為 CAB 檔案的能力,然後可以在安裝之前將其新增至程式集中。 但是,如果您在此過程中發現缺少任何剪切服務,則此腳本將無法運作。

但Core版與完整版的差別在於能夠在不停止工作的情況下更新系統並新增服務。 Windows Core 支援熱滾動軟體包,無需重新啟動。 因此,根據實際觀察:執行 Windows Core 的電腦需要重新啟動的頻率比執行 Windows Server 的電腦少約 6 倍,即每六個月一次,而不是每月一次。

對於管理員來說,一個令人愉快的好處是,如果系統按預期使用(透過控制台,無需RDP),並且沒有變成第二個Windows Server,那麼與完整版本相比,它會變得非常安全。 畢竟,大多數 Windows Server 漏洞都是由 RDP 以及使用者透過該 RDP 執行不應該執行的操作造成的。 這就像亨利福特的故事以及他對汽車顏色的態度:「任何顧客都可以將汽車漆成他想要的任何顏色,只要它是 黑色」 與系統也是一樣:使用者可以透過任何方式與系統進行通信,主要是他透過 控制台.

安裝與管理 Windows Server 2019 Core

我們之前提到過,Windows Core 本質上是沒有 GUI 包裝器的 Windows Server。 也就是說,你可以使用幾乎任何版本的Windows Server作為核心版本,也就是放棄GUI。 對於 Windows Server 2019 系列產品,這是 3 個伺服器版本中的 4 個:核心模式適用於 Windows Server 2019 Standard Edition、Windows Server 2019 Datacenter 和 Hyper-V Server 2019,即僅排除 Windows Server 2019 Essentials從這個清單中。

在這種情況下,您實際上不需要尋找 Windows Server Core 安裝套件。 在標準的 Microsoft 安裝程式中,預設提供核心版本,而 GUI 版本必須手動選擇:

使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上
事實上,除了製造商預設提供的 PowerShell 之外,管理系統的選項還有更多。 您可以透過至少五種不同的方式管理 Windows Server Core 上的虛擬機器:

  • 遠端PowerShell;
  • 遠程服務器管理工具 (RSAT);
  • Windows 管理中心;
  • 配置;
  • 服務器管理器。

前三個地點最受關注:標準 PowerShell、RSAT 和 Windows Admin Center。 然而,重要的是要了解,雖然我們獲得了其中一種工具的好處,但我們也受到了它所帶來的限制。

我們不會描述控制台的功能;PowerShell 就是 PowerShell,它的優點和缺點都很明顯。 對於 RSAT 和 WAC,一切都有點複雜。 

WAC 可讓您存取重要的系統控制,例如編輯登錄檔以及管理磁碟和裝置。 第一種情況下的 RSAT 只能在查看模式下工作,不允許您進行任何更改,並且管理磁碟和實體設備遠端伺服器管理工具需要 GUI,但我們的情況並非如此。 一般來說,RSAT 無法處理文件,因此無法在編輯註冊表時更新、安裝/刪除程式。

▍系統管理

 

WAC
反衛星系統

元件管理
Да
Да

註冊編輯器
Да
沒有

網路管理
Да
Да

事件查看器
Да
Да

共享文件夾
Да
Да

磁盤管理
Да
僅適用於具有 GUI 的伺服器

任務調度器
Да
Да

設備管理
Да
僅適用於具有 GUI 的伺服器

文件管理
Да
沒有

用戶管理
Да
Да

集團管理
Да
Да

證書管理
Да
Да

更新
Да
沒有

卸載程序
Да
沒有

系統監控器
Да
Да

另一方面,RSAT 讓我們能夠完全控制電腦上的角色,而 Windows Admin Center 在這方面實際上無能為力。 為了清楚起見,以下將 RSAT 和 WAC 在這方面的能力進行了比較:

▍角色管理

 

WAC
反衛星系統

高級線程保護
預覽
沒有

Windows Defender的
預覽
Да

集裝箱
預覽
Да

AD行政中心
預覽
Да

AD 網域和信任
沒有
Да

廣告網站和服務
沒有
Да

的DHCP
預覽
Да

DNS
預覽
Да

分散式檔案系統管理器
沒有
Да

政府採購經理
沒有
Да

IIS管理器
沒有
Да

也就是說,很明顯,如果我們放棄 GUI 和 PowerShell 轉而使用其他控件,我們將無法擺脫使用某種單一工具的束縛:為了在所有方面進行全面管理,我們至少需要RSAT 和 WAC 的組合。

但是,您需要記住,您必須支付 150-180 MB 的 RAM 才能使用 WAC。 連接後,Windows Admin Center 在伺服器端建立 3-4 個會話,即使工具與虛擬機器斷開連接,這些會話也不會被終止。 WAC 也不適用於舊版的 PowerShell,因此您至少需要 PowerShell 5.0。 所有這些都違背了我們的緊縮範式,但你必須為舒適付出代價。 在我們的例子中 - RAM。

管理伺服器核心的另一個選擇是使用第三方工具安裝 GUI,以免在成熟的程式集中拖曳介面帶來的大量垃圾。

在這種情況下,我們有兩個選擇:將原始 Explorer 部署到系統上或使用 Explorer++。 作為後者的替代方案,任何檔案管理器都適用:Total Commander、FAR Manager、Double Commander 等。 如果節省 RAM 對您來說至關重要,則後者是更好的選擇。 您可以透過建立網頁資料夾並透過控制台或排程器啟動它來新增 Explorer++ 或任何其他檔案管理器。

安裝功能齊全的資源管理器將為我們提供更多使用配備 UI 的軟體的機會。 為此我們 必須聯繫 伺服器核心應用程式相容性按需功能 (FOD) 會將 MMC、Eventvwr、PerfMon、Resmon、Explorer.exe 甚至 Powershell ISE 傳回系統。 然而,我們將不得不為此付出代價,就像WAC的情況一樣:我們將不可逆轉地損失大約150-200兆位元組的RAM,這些RAM將被explorer.exe和其他服務無情地吞噬。 即使電腦上沒有活動使用者。

使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上
使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上
這是在有和沒有本機 Explorer 套件的電腦上系統的記憶體消耗情況。

這裡出現了一個邏輯問題:如果向左或向右的任何一步都會導致 RAM 消耗增加,為什麼所有這些都與 PowerShell、FOD、檔案管理器共舞? 當您只需下載 Windows Server 2016/2019 並像白人一樣生活時,為什麼要使用一堆工具並左右移動以確保在 Windows Server Core 上舒適地工作?

使用伺服器核心有幾個原因。 第一:目前的記憶體消耗幾乎是它的一半。 如果你還記得的話,這個條件就是我們文章一開始的基礎。 為了進行比較,這裡是 Windows Server 2019 的記憶體消耗,與上面的螢幕截圖進行比較:

使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上
因此,Core 上的記憶體消耗為 1146 MB,而不是 655 MB。 

假設您不需要 WAC 並且將使用 Explorer++ 而不是原始的 Explorer,那麼您 你仍然會贏得近半公頃的土地 在每個執行 Windows Server 的虛擬機器上。 如果只有一台虛擬機,那麼增加的意義不大,但是如果有五台呢? 這就是 GUI 的重要性,尤其是在您不需要它的情況下。 

其次,任何圍繞 Windows Server Core 的舞蹈都不會引導您解決操作 Windows Server 的主要問題 - RDP 及其安全性(更準確地說,它完全不存在)。 Windows Core即使塗上了FOD、RSAT和WAC,仍然是一個沒有RDP的伺服器,也就是說,它不會受到95%現有攻擊的影響。

其餘的

一般來說,Windows Core 僅比任何現有的 Linux 發行版稍厚一些,但它的功能要強大得多。 如果您需要釋放資源並準備好使用控制台、WAC 和 RSAT,並使用檔案管理器而不是成熟的 GUI,那麼 Core 值得關注。 此外,有了它,您將能夠避免為功能齊全的 Windows 支付額外費用,並將節省下來的錢用於升級您的計算機 VPS,例如添加 RAM。 為了方便起見,我們已將 Windows Server Core 新增至我們的 市井.

使用 Windows Server Core 將 Windows Server 壓縮到低功耗 VPS 上

來源: www.habr.com

添加評論