我需要我們不應該在域控制器上安裝 SQL Server 的原因
我是一家小公司的系統管理員。現在我們考慮為公司推出 Windows Server 2008 R2。我們計劃實施 Active Directory。我們還想將 RDMS 從 SQL Server 2000 升級到 SQL Server 2014。
由於我們組織的規模,我們可以只購買一台伺服器,因此我們計劃在同一台機器上同時實施 AD 和 SQL Server 2014。但是,Microsoft 建議不要在域控制器上安裝 SQL Server 2014。
我已經檢查了原因,但我不明白是什麼問題,所以如果有人在下面回答我的問題,那真的很有幫助。
- 您不能在本地服務帳戶下的域控制器上執行 SQL Server 服務。→如果我們在域使用者帳戶下的域控制器上執行 SQL Server,會發生什麼?
- 在電腦上安裝 SQL Server 後,您不能將電腦從域成員更改為域控制器。在將主機電腦更改為域控制器之前,您必須解除安裝 SQL Server。→我們計劃在安裝 SQL Server 2014 之前將我們的伺服器升級為域控制器,並且不打算取消升級為成員伺服器,因為它是我們唯一的伺服器。我們的計劃錯了嗎?
- 在電腦上安裝 SQL Server 後,您不能將電腦從域控制器更改為域成員。在將主機更改為域成員之前,您必須解除安裝 SQL Server。→我們不打算降級為會員伺服器,因為它是我們唯一的伺服器。我們的計劃錯了嗎?
- 如果群集節點是域控制器,則不支持 SQL Server 故障轉移群集實例。→我們不打算安裝故障轉移集群,所以我們認為這沒有問題。我們錯了嗎?
- SQL Server 安裝程序無法在只讀域控制器上創建安全組或設置 SQL Server 服務帳戶。在這種情況下,安裝程序將失敗。→因為我們只有一台伺服器,所以它永遠不會是只讀域控制器,所以我們認為這沒有問題。我們錯了嗎?
實際上,我想如果我們清除(1),我們可以在我們的域控制器上安裝 SQL Server 2014。
感謝您閱讀所有句子。我希望有人給我們答案。
您列出的點顯示在BOL here中,即使它引用:
SQL Server 安裝程序不會阻止在作為域控制器的電腦上進行安裝
它在此知識庫文章中聲明設置將失敗,儘管僅適用於 2012 版本的列表。
您反對這樣做的一個主要原因是 Microsoft 支持。正如文件中所述,您不應該安裝它,它們不太可能提供支持。特別是如果您遇到任何安全或性能問題。除非您花很多錢,否則他們可能不會為您做太多事情。
我從未見過一家公司出於選擇將這兩個角色放在一起。我不想這麼說,但如果他們需要在 SQL Server 中執行一個應用程序並且它將成為一個關鍵任務應用程序,那麼他們沒有理由不投資執行該應用程序。這些天硬體很便宜,如果您的組織那麼小,執行 AD 並不需要太多。您甚至可以為此購買 2 或 3 年的舊硬體。
話雖如此,Window Small Business 伺服器曾經是您描述的情況的一站式商店。它是一個集成的 AD、Exchange 和 Web 伺服器;如果我記得也安裝了 SQL Server,但我不記得了。我曾經為一個部門設置了其中一台伺服器。
但是對於 Window Server 2012,他們將其更改為Window Server Essential Edition,我不確定您在此版本中獲得什麼角色。我建議您儘管花錢購買標準版。使用 Standard 獲得的一項功能是通過 Hyper-V 執行兩個來賓作業系統虛擬機的許可。如果您適當地調整硬體大小,它將允許您在一個 VM 中執行 SQL Server 實例,然後在第二個 VM 中執行您的應用程序。儘管您的性能全部在一台伺服器上,但它提供了邊界分離,並且是 Microsoft 完全支持的設置。只是我的兩分錢。
您給出的原因是避免 SQL Server 和域控制器組合的主要原因。我再補充兩個:
- 如果您的 SQL Server 由暴露於 Internet 的電腦(例如 Web 伺服器)訪問,則可能存在安全風險
- SQL Server 有可能使 Windows 缺乏資源 - 這將有效地關閉您的域控制器,進而關閉您的網路
也就是說,在小型企業的域控制器上安裝 SQL Server 並不少見——你只有這麼多的資源可以使用,而且有時你不得不利用現有的資源。
底線:盡可能避免組合伺服器角色。如果您必須結合 AD 和 SQL Server,請注意風險,並儘您所能減輕風險。
$$ Disclaimer: I would never consider combining AD and SQL Server in anything other than a very small business. There are too many risks, and server loads are usually much heavier. $$