伺服器何時適合處理多種功能,何時應將伺服器專用於單個任務?
我有一台執行 VMware ESXi 的相當強大的伺服器,以允許多個虛擬機處理不同的目的。目前我有7個設置:
- PHP 開發
- PHP 暫存
- RoR 開發
- RoR 分期
- ASP.Net 開發
- ASP.Net 暫存
- 核心(Samba、OpenLDAP、DNS DHCP、git)
我的問題是:
- 哪些功能應該在自己的伺服器上執行,為什麼?例如,我應該拆分核心伺服器並添加另一個僅執行的虛擬機,還是添加另一個
DNS
僅執行的虛擬機?DHCP``DNS``git
- 網路中有哪些常見設置以及執行適當的開發網路時我缺少哪些主要功能……即入侵檢測?我知道這個問題對正在完成的工作是主觀的,但只是任何可能有助於操作、維護或安全的明顯問題。
**注意:**如果有人可以編輯標籤以更適合該問題,將不勝感激。
這些天來,由於虛擬機如此便宜和容易,我傾向於在每個功能的基礎上進行虛擬化。這帶來了最大的靈活性(遷移、升級等),並最大限度地減少了以後返工的需要(“哎呀,這些功能不像我想像的那樣組合”)。
雖然我總體上同意 Womble,但“每個功能”的定義可能很模糊。除非您有一個巨大的環境(根據您的描述,您沒有),否則我絕對會將 DNS 和 DHCP 保留在單個伺服器上。除非您有充分的理由不這樣做(例如性能需求或不兼容的維護視窗等),否則我也會將 Samba 和 LDAP 保留在同一台伺服器上。
對於問題 2:您的描述中沒有冗餘。你們所有的核心服務都應該有一些冗餘或故障轉移。DNS 是一個大問題,LDAP 是一個大問題,如果它是您身份驗證的一部分,Samba 也是一個可能的候選者。DHCP 很好,並且很容易通過拆分範圍實現高可用性。許多(或全部)這些核心服務應該在單獨的硬體上;否則,您將面臨巨大的單點故障。
您也沒有列出備份基礎架構:每個 IT 商店做任何事情都應該有備份。在極少數情況下您不需要任何備份。
至於其他常見的主要功能:這真的取決於您的環境和需求,您還沒有告訴我們。您必須管理桌面嗎?它們是 Windows、Linux 還是 Mac?然後你可能想要一些可以管理這些機器的東西。Samba 可以為 Windows 做很多帶有 AD 和 GPO 的 Windows Server 所做的事情,但不是那麼容易(據我了解)。您建構了很多機器嗎?然後,您可能需要 PXE/Kickstart/其他類型的建構基礎架構。您是否需要記錄使用者在網路上瀏覽的內容?可能需要 Squid 代理或類似的東西。IDS/IPS:也許你需要,也許你不需要。我們怎麼知道?