Dell VNX:升級後無法存取 Unisphere UI Web 介面
Summary: OE 程式碼升級 Unisphere 無法存取後,httpd.conf 檔案會回復為預設值,並在編輯時輸入額外的空格,導致 apache 指令檔發生問題。(使用者可修正)
Symptoms
Flare OE 和 NAS 升級。
OE Flare 和 NAS 程式碼升級後,無法存取 Unisphere Web 介面。Unisphere 無法存取,httpd.conf 檔案又回復為預設值,並在編輯時輸入額外的空格,導致 Apache 指令檔發生問題。
Cause
升級後,客戶必須重新編輯 /nas/http/conf/httpd.conf,因為檔案會還原至預設設定。
在這種情況下,客戶必須在 SSLCipherSuite 行上重新新增安全性密碼。但是,編輯中的任何錯誤(例如在檔中留下額外的空間)都可能導致 Apache 腳本失敗。
Resolution
若要確認 httpd.conf 檔案的問題,請使用下列命令檢查有關 Apache 和 Tomcat「意外退出」的錯誤實例:
/nas/tools/dbchk -wvxpV nas_logviewer /nas/log/sys_log | grep -i apache | tail nas_logviewer /nas/log/sys_log | grep -i tomcat | tail cat /var/log/messages | grep -i tomcat | tail cat /var/log/messages | grep -i apache | tail cat /nas/tomcat/logs/catalina.out | grep -i error | tail
使用下列命令檢查 apache_restart.out 檔案中的語法錯誤:
cat /nas/http/logs/apache_restart.out | grep -i syntax | tail
若要確認 httpd.conf 的問題:
請在 /nas/http/conf/httpd.conf 檔案上執行 vi 或更小的版本,然後搜尋您在 apache_restart.out 的語法錯誤中看到的行號。然後在實驗室陣列上檢查相同的檔和行號,以確定多餘的空格或不正確/缺失的字元在哪裡,並進行編輯以解決。
在確認 httpd.conf 檔案的編輯問題後:
對於 SSLCipherSuite 範例,您將編輯並移除該行上多餘的空格,以將其從分成兩行的一行變更回一行:
< # SSL Cipher Suite: < # List the ciphers that the client is permitted to negotiate. < # See the mod_ssl documentation for a complete list. < #SSLCipherSuite ALL:!ADH:!DH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:-MEDIUM:-LOW < SSLCipherSuite < ALL:!ADH:!DH:!EXPORT:!SSLv2:+HIGH:-MEDIUM:-LOW
刪除多餘的空間后,它將如下所示:
< # SSL Cipher Suite: < # List the ciphers that the client is permitted to negotiate. < # See the mod_ssl documentation for a complete list. < #SSLCipherSuite ALL:!ADH:!DH:!EXPORT:!SSLv2:+HIGH:-MEDIUM:-LOW < SSLCipherSuite ALL:!ADH:!DH:!EXPORT:!SSLv2:+HIGH:-MEDIUM:-LOW
修正 httpd.conf 檔案中的編輯錯誤後,請再次查看記錄,確認錯誤已停止,方法如下所示:
tail -f on /var/log/messages
和
/nas/http/logs/apache_restart.out
錯誤往往是流式傳輸的,並在修復問題編輯后立即停止。
記:上面是一個示例,顯示了添加到單行的空格,將其分解並使其在檔中為兩行單獨的行。但是您必須根據具體情況進行評估,並相應地修復額外的空格、刪除的空格還是拼寫錯誤。
Additional Information
從 /nas/log/syslog:
# nas_logviewer /nas/log/sys_log | grep -i apache | tail -5 Sep 11 11:48:25 2019:CS_PLATFORM:MasterControl:EMERGENCY:6:::::Daemon Apache daemon unexpectedly exited (status = 0); ifexit=1, exitstatus=0, ifsignal=0, termsig=0, ifstop=0, stopsig=0, ifdump=0. Sep 11 11:48:25 2019:CS_PLATFORM:MasterControl:EMERGENCY:6:::::Daemon Apache daemon unexpectedly exited (status = 0); ifexit=1, exitstatus=0, ifsignal=0, termsig=0, ifstop=0, stopsig=0, ifdump=0. Sep 11 11:48:25 2019:CS_PLATFORM:MasterControl:EMERGENCY:6:::::Daemon Apache daemon unexpectedly exited (status = 0); ifexit=1, exitstatus=0, ifsignal=0, termsig=0, ifstop=0, stopsig=0, ifdump=0. Sep 11 11:48:26 2019:CS_PLATFORM:MasterControl:EMERGENCY:6:::::Daemon Apache daemon unexpectedly exited (status = 0); ifexit=1, exitstatus=0, ifsignal=0, termsig=0, ifstop=0, stopsig=0, ifdump=0. Sep 11 11:48:26 2019:CS_PLATFORM:MasterControl:EMERGENCY:15:::::Apache daemon respawning too fast; disabled for 5 minutes.
來自 /nas/tomcat/logs/catalina.out:您可以看到「SEVERE:解碼要求時發生錯誤」訊息。
Aug 28, 2019 8:23:31 PM org.apache.jk.common.ChannelSocket processConnection WARNING: processCallbacks status 2 Aug 28, 2019 8:23:31 PM org.apache.jk.common.HandlerRequest invoke SEVERE: Error decoding request java.io.CharConversionException: Invalid char in port: 58 at org.apache.jk.common.HandlerRequest.parseHost(HandlerRequest.java:658) at org.apache.jk.common.HandlerRequest.decodeRequest(HandlerRequest.java:404) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:261) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) at java.lang.Thread.run(Unknown Source) Aug 28, 2019 8:23:31 PM org.apache.jk.common.ChannelSocket processConnection WARNING: processCallbacks status 2 Wed Sep 4 10:24:48 CDT 2019 Starting tomcat web server.
如果因為任何原因,在確認 httpd.conf 檔案沒有其他問題後,需要重新啟動 Tomcat、Apache 和 httpd,您可以使用以下命令執行:
/nas/http/nas_ezadm/etc/script restart
應該注意的是,如果這是檔vi編輯中的確認問題或錯誤,則單獨重新啟動Apache/Tomcat/httpd沒有效果,直到編輯錯誤得到糾正。如果 httpd.conf 檔案有任何錯誤的語法,您會看到「SEVERE:Catalina.stop: java.net.ConnectException:連線被拒絕 (連線被拒絕)」錯誤,會在服務重新啟動期間出現。
此外,您也可以檢查一般的 getagent 命令:
/nas/sbin/naviseccli -h SPA getagent
接著,也請檢查安全性信箱,確認沒有問題:
# /nas/sbin/naviseccli -h SPA -user sysadmin -password sysadmin -scope 0 getagent Agent Rev: 7.33.9 (2.36) Name: K10 Desc: Node: A-APM00xxxxxxxxx Physical Node: K10 Signature: 3854449 Peer Signature: 3698693 Revision: 05.33.009.5.238 SCSI Id: 0 Model: VNX7600 Model Type: Rackmount Prom Rev: 33.51.00 SP Memory: 65536 Serial No: APM00xxxxxxxxx SP Identifier: A Cabinet: DPE9
如果安全性 naviseccli 命令失敗,請使用下列方法進行 KBA 搜尋,以尋找數個相關的 KB 文章:
VNX: /nas/sbin/naviseccli -h SPA -user <user> -password <password> -scope 0 getagent