PowerFlex 機架:啟用系統記錄轉送功能時,/var/log 空間問題

摘要: 本文說明 /var/log 空間中的問題,因為記錄輪替發生的頻率不夠高。

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

症狀

目前的 logrotate 組態會每週輪換訊息檔案一次,但在 VxFlex Manager 中啟用系統記錄轉送的情況下,其旋轉速度可能不夠快。

事實:

  • VxFlex Manager 中已啟用 syslog 轉送功能。
  • /var/log 分割區很快就會填滿。
  • 這可能因系統而異
  • VxFlex 整合式機架或裝置系統中的裝置會啟用遠端 syslog,並設定為將系統記錄事件傳送至 VxFlex Manager

原因

當 /var/log 檔案系統為 100% 時,所有資源的資源清查都會失敗。
注意如果空間太滿而無法執行這些檢查,或空間填滿速度過快,下列警告或嚴重警示可能無法運作。

  • 如果發生 75% 的情況 >,VxFlex Manager UI 會顯示警告:

如果發生 75% 的情況 >,VxFM UI 會顯示警告: 

如果發生 95% 的 > 狀況,VxFlex Manager UI 會顯示嚴重:
如果發生 95% 的 > 狀況,VxFM UI 會顯示嚴重:

df -h 顯示 /var/log 的使用容量非常高,並且正在快速增長。
PowerFlex /var/log 

解析度


若要修正 VxFlex Manager 裝置上啟用系統記錄轉送的紀錄輪換問題,您可以使用下列步驟設定 logrotate、壓縮現有記錄、變更 rsyslog 設定,以及降低偵錯記錄層級:

步驟 1:  SSH 至 VxFlex Manager 並成為 root 使用者: sudo su -

第 2 步:編輯 (vi 編輯器) 系統記錄 logrotate 規則,方法是確保下列文字存在於 /etc/logrotate.d/syslog
 

/var/log/cron /var/log/maillog /var/log/messages /var/log/secure /var/log/spooler { size 100M nodateext rotate 5 compress missingok copytruncate postrotate /bin/killall -s SIGHUP -r rsyslog endscript }


步驟 3:  輸入下列命令,以確認新組態是否已正確儲存: 

cat /etc/logrotate.d/syslog


步驟 4:  根據 /var/log 空間填滿的速度,選擇下列其中一個選項:
對於不會每天填滿 /var/log,但需要比每周更快的輪換的環境,請使用以下命令將logrotate從每周更改為每天:

cp /etc/cron.weekly/logrotate /etc/cron.daily/


如果環境填滿 /var/log 的速度超過每日旋轉所能容納的情況,請使用下列命令將 logrotation 從每日變更為每小時:

cp /etc/cron.daily/logrotate /etc/cron.hourly/


步驟 5:  執行下列命令,壓縮現有檔案並釋出空間:

for log in `ls /var/log/messages-*`; do sudo gzip $log; done


 
注意:  如果 /var/log/messages 檔案已滿,無法壓縮,請使用下列命令加以清除: 

cat /dev/null > /var/log/messages


步驟 6:  若要確認 logrotate 組態是否正常運作,請執行下列命令: 

logrotate -f /etc/logrotate.d/syslog


 
步驟 7:  若要停止將轉送的系統記錄事件記錄至 VxFlex Manager 裝置上的 /var/log/messages 檔案,請執行下列步驟:

  • 使用此命令在 /etc/rsyslog.d/ 下建立 conf 檔案:  vi 21-stop-remote-host-syslog-logging.conf
  • 將以下行新增到上面新創建的檔案中:  if $fromhost-ip != '127.0.0.1' then ~
  • 輸入以下內容以儲存檔案:  :wq!
  • 重新啟動 rsyslog 服務:  systemctl restart rsyslog.service

注意:21 是用於 rsyslog 的優先順序編號。重新開機後,rsyslog 不會將傳入的遠端系統記錄儲存至 /var/log/messages。VxFlex Manager 的本機系統記錄仍會儲存到 /var/log/messages 中。

注意:即使 VxFlex Manager 上未啟用系統記錄轉送,主機也可能指向 VxFlex Manager,這可能會向 /var/log/messages 檔案發送垃圾郵件。無論 VxFlex Manager 系統記錄是否開啟,如果訊息檔案被洪泛,請設定步驟 7。

步驟8:  執行下列步驟,變更 VxFlex Manager 裝置中 logstash 的偵錯記錄層級:

  • 使用下列命令編輯記錄層級: vi /etc/logstash/logstash.yml
  • 在檔案中搜尋除錯設定
  • 將記錄層級從資訊 (預設) 變更為錯誤

除錯設定

  • 編輯下列檔案:  vi /etc/logstash/log4j2.properties
  • 在預設配置中,有一行以 rootLogger.appenderRef.console 開頭,請使用如下所示的 # 將這一行註釋掉:
  • 執行下列步驟,以重新啟動 logstash 服務:  systemctl restart logstash


步驟 8:  如果 /var/log 檔案系統已滿 100%,請將 VxFlex Manager 裝置重新開機。這可確保所有服務都能正確啟動備份。

便條:  傳送測試警示,以確保警示連接器在解決空間問題並重新啟動裝置後正常運作。
 

其他資訊

  • 正在針對未來的 VxFlex Manager 版本進行修正,以停止將系統記錄訊息記錄至 /var/log/messages。
  • 這與具有 syslog 轉送功能 (最高至 3.4.0.4271 版) 的任何 VxFlex Manager 版本相關。

受影響的產品

Hyper-converged Systems
文章屬性
文章編號: 000079795
文章類型: Solution
上次修改時間: 17 10月 2025
版本:  4
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。