搜尋此網誌

2012年8月27日 星期一

[迷你好兔] 啟用 VMware vSphere 5 syslog 並整合至 Splunk

Podtech_VMware_Disaster_Recovery_Datac在前一篇 VMware vSphere 5 ESXi 安全建議事項的文章 中,我提到應該啟用 ESXi 主機的 syslog 機制,並將這些重要的資訊統一集中至公司原本的日誌管理機制中。儘管 VMware vCenter Server 包含了一個 syslog daemon 可供安裝與使用,但是我並不建議使用此一套件。我之前與各位分享過一個功能強大的日誌管理系統 – Splunk,因此我今天要跟各位分享如何讓 ESXi 的主機透過 syslog 機制將資訊遞送到 Splunk,並利用 Splunk 即時警示登入錯誤的資訊。

好了,同樣讓我們一步步完成今天的任務吧:

  1. 我們必須擁有一個正常運作的 Splunk,而且接受來自 syslog (UDP:514) 的資料輸入。
    0005
  2. 設定 Splunk 主機的防火牆,允許 syslog (UDP:514) 封包進入。
  3. 使用 VMware vSphere Client 連結主機或是 VMware vCenter Server。
  4. 如果你是連結至 VMware vCenter Server,請選擇 "Inventory" –> "Hosts and Clusters"。
  5. 點選你想要開啟 syslog 機制的主機。
  6. 點選 Configuration 的頁籤 (Tab)。
  7. 點選 "Security Profile",並按下連結 "Properties…" 以設定主機的防火牆。
    0003
  8. 開啟 syslog 封包的傳送規則,設定完成後按下 "OK"。
    0004
  9. 點選 "Advanced Settings"。
    0001
  10. 打開 Syslog –> Global 的設定。在 Syslog.global.logHost 此一欄位輸入 syslog 主機的 IP 位址,此時我們應該指定為 Splunk 主機的 IP 位址。輸入完畢後按下 "OK"。
    0002
  11. 故意使用錯誤的帳號/密碼嘗試登入此一 ESXi 主機。
  12. 至 Splunk 主機下 "Hostd: Rejected password" 此一查詢語法。我們可以看到登入錯誤訊息出現在查詢結果當中。
    0006

透過 Splunk 的儀表板與即時通知功能,我們可以把嘗試登入 ESXi 主機的錯誤訊息做更有效率與更即時的應用。當然,ESXi 所遞送過來的資訊很多,並不局限於此一應用。不過以登入錯誤資訊而言,光取得 ESXi 主機上的 syslog 資訊依舊不夠完整。如果我們採用 VMware vCenter Server 來管理虛擬化環境,大多時候我們是登入至 VMware vCenter Server ,而非直接登入主機。而不幸的是,VMware vCenter Server 本身並沒有將相關訊息透過 syslog 遞送至遠方的功能。關於此點,我們可以在 VMware vCenter Server 主機上安裝 Splunk 的 forwarder,並即時監測 VMware vCenter Server 相關日誌的目錄,如果一來 Splunk 就可以獲得 VMware vCenter Server 的日誌記錄了。VMware vCenter Server 在 Windows 2008 下將日誌存放於 C:\Program Files\VMware\VMware VirtualCenter\Logs 這個目錄之內,至於在其他作業下的目錄可以參考 VMware 的官方文件

就跟大多數的 ESXi 主機設定值一樣,syslog 的設定也必須一台台 ESXi 主機分別進行。這對管理大量 ESXi 主機的管理者而言,是一件費時而且容易出錯的工作。在下一篇文章中,我將跟各位分享如何利用 VMware vCenter Server 的 Host Profile 功能,來簡化 ESXi 主機的設定作業。

About