雖然當前國內去IOE波濤洶涌,但不可否認OracleWeblogic當前市場還有有一定使用量。所以,weblogic依然是中間件運維的重要工作之一。然而Oracleweblogic已經連續三個季度(2019年10月~2020年7月)曝出CVSS風險為9.8的高危安全漏洞,漏洞修復是一輪接著一輪,輪的哥都要吐了,但沒辦法,活兒還是不能拉下。本文主要是針對weblogic漏洞修復,羅列一些在weblogic安全漏洞補丁更打過程中筆者遇到的一些問題以及解決方案或思路,希望對同樣做補丁升級的兄弟們有所啟示。
該問題出現在weblogic11g正常更打完PSU補丁集后,最后使用./bsu.sh–view -status=applied -prod_dir=
此時莫慌張,并不是你補丁安裝失敗了??梢躁P注到紅線部分,此處的weblogicPatch指定了一“DownloadDir:“ ,懷疑和這個設置有關。我們嘗試繼續使用bsu.sh查看補丁信息,這次咱們開啟debug日志來驗證想法:
./bsu.sh -view -verbose -status=applied -prod_dir=/data1/weblogic/wlserver_10.3 -log=bsu.log -log_priority=debug,日志會生成在腳本當前路徑。
查看日志有如下報錯:
問題原因:是我們習慣將補丁放到./utils/bsu/cache_dir解壓更打,而此處weblogic指定了DownloadDir這個目錄,所以才產生這個問題,讀取不到補丁信息。
解決方法:1)將本次更打的patch-catalog_xxxxx.xml文件拷貝到上述目錄下,重命名為patch-catalog.xml。
2)重新指定本次patch_download_dir目錄-patch_download_dir=/data1/weblogic/utils/bsu/cache_dir
重新查看補丁信息,如下:
該問題新手在更打或卸載weblogic11g補丁過程中經常會遇到,報錯如下“java.lang.OutOfMemoryError:Java heap space“
問題原因:卸載或更打補丁前,未設置合理的JVM大小,導致執行過程中JVM不足,內存溢出。
解決方法:修改bsu.sh,將如下設置修改為-Xms2048m –Xmx2048m,或者內存充足的情況下,設置為更大的值即可。
該問題常出現在weblogic12c版本補丁更打過程當中,報錯信息很友好,直接給出了解決方案:
問題原因:TheOPatch version is not applicable for current OUI version.
解決方法:到OracleSupport下載patch6880880,更新OPatch,命令如下:
java-jar
更新后,使用opatchversion,查看當前opatch信息如下:
某系統某次weblogicPSU補丁升級完成后,該系統出現“ORA-01461:僅能綁定要插入 LONG列的 LONG值”報錯,報錯之前系統只做過weblogicPSU更打,于是第一時間回滾后,問題消失,確認問題由補丁升級引起。經排查,初步判定ORA-01461報錯原因應該系數據庫與客戶端JDBC驅動不匹配所致。當晚升級人員在補丁升級后,應用啟動日志記錄的數據源與庫建立連接使用的驅動版本為11.2.0.3.0,日志記錄如下:
而在未升級補丁時,日志記錄的驅動版本為12.1.0.2.0版本,如下:
繼續核實發現,該系統weblogic產品針對jdbc驅動包ojdbc6.jar做了修改(修改后驅動為12.1.0.2.0版本),而當晚升級操作人員直接使用其他系統升級完成的weblogic拷貝安裝至該系統主機,相當于將修改后的ojdbc6.jar驅動包還原了,因此驅動版本變成了11.2.0.3.0,導致問題的出現。
問題原因:在沒了解清楚當前系統weblogic是否做過一些特定修改下,直接拷貝安裝。
解決方法:在大批量服務器進行weblogic補丁更新時,可能大家都采用過拷貝安裝的方式:先打一臺模板,后續直接打包weblogic產品目錄拷貝解壓安裝到其他服務器上,以完成補丁跟新。正常情況下,如果weblogic產品內部相關包未被修改或替換,確保操作系統版本、安裝目錄、jdk路徑及版本一致的情況下,這不失為一種有效的捷徑,但是如果存在weblogic產品內部相關包未被修改或替換,那可能就會踩坑了。
該問題常出現在weblogic產品安裝用戶與weblogicServer啟動用戶不一樣的情況下,在weblogic補丁更打成功后,weblogicServer啟動出現如下報錯,找不到”main”方法:
問題原因:weblogic補丁更打后,weblogic產品某些子錄下文件重新創建,導致WEBLOGIC_HOME下某些子目錄缺少可寫或可執行權限所知。
解決方法:確保weblogicserver啟動用戶對Weblogic_HOME下的所有子目錄具有可寫和可執行的權限。建議如果weblogic安裝用戶與weblogicdomain域部署用戶不一致的情況下,更打完PSU補丁集后,請chmod–R 755 $Weblogic_HOME。
首先說明下,該問題的出現于weblogic升級并無直接關系,是筆者在今年7月份的一次weblogic補丁升級后,遇到的一次問題。情況是老套路,升級后,應用啟不起來了,應用側一口咬定補丁升級所致,報錯如下圖:
說實話哥也是心虛的,我所知的確實只有我做了weblogic補丁更新,問題也是第一次遇到,趁晚上升級還有時間,趕緊到MOS上找找答案。事實證明,確實很多坑,別人都已經幫我們踩過了,找到類似的報錯信息,
以上,原因1直接PASS了,原因2,可能存在config.xml或setEnv文件可能被改動或失效。順著這個思路,找來了應用賬號,直接去$DOMAIN_HOME/config下看了下config.xml文件,當晚應用側對config.xml文件明顯有改動,存在多個版本。如下截圖:
后面就簡單了,直接讓應用先回滾config.xml文件,重啟weblogicserver正常啟動,問題證實與補丁升級無關。
問題原因:應用側修改config.xml文件存在格式或內容錯誤,導致文件失效所致。
解決方案:碰到沒見過的問題不要慌,先到官網找找資料,絕大部門的坑,別人已經替咱們踩過了。
最后一個案例,本人暫時沒有遇到,系Oracle原廠發出的一個預警,希望近期在更新PSU20200714朋友如果遇到了此問題,可以參考。
最近有客戶遇到WLS打完最新PSU20200714補丁后,服務啟動報錯的問題。OracleACSOFM團隊初步分析是由于升級完成后,SAX對是否支持解析XML文件中的外部DTD默認值做了改變(之前版本默認值為true,新版本默認值變為false)。
如果升級完成后啟動服務遇到如下類似報錯,則是由于該問題導致。
WARNING: Could not read file registry settings $DOMAIN_HOME/config/fmwconfig/servers/ Could not process file $DOMAIN_HOME/config/fmwconfig/servers/ columnNumber: 1266; The content of the item type "root" is incomplete, must match "(logging_configuration)". |
目前的解決方案是在WebLogicserver的啟動參數中增加 -Dweblogic.xml.jaxp.allow.externalDTD=true 規避這個問題(已經過測試確認)。
以上,是筆者或者同事在weblogic補丁更新過程中遇到的一些問題,以及記錄下來的問題解決方案或思路,類似的問題還有很多,篇幅有限,未一一列舉了。運維過程中,我們遇到的問題可能是千變萬化,如何有效的去規避或者解決問題,我認為需要咱們做到以下幾點:
涉及操作,請制定合理的操作方案,并虛心提交公司老人或專家審核;
正確的分析和理解錯誤日志,問題就解決一半了;
有效的利用互聯網資源,很多坑別人都已經替你踩過了;
絕大部分問題相應產品官網均有詳細的記錄與解決方案,請善于查找官方資料;
學會總結記錄,相同的問題你不一定能記住準確的解決方案,好記性不如爛筆頭;
不要藏問題,請學會拋出問題,解決不了的提交專家或者至官網提交SR。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/130176.html
摘要:簡介本文首發公眾號一名打字員據悉,年的月份,螞蟻金服已經宣布,螞蟻金服及阿里巴巴自研的關系型數據庫已經支撐起和淘寶的日常業務需求,成功替換了之前所采用的單機數據庫如或者開源的。 簡介 Tip:本文首發公眾號【一名打字員】 據悉,17年的4月份,螞蟻金服已經宣布,螞蟻金服及阿里巴巴自研的關系型數據庫OceanBase已經支撐起Tmall和淘寶的日常業務需求,成功替換了之前所采用的單機數據...
閱讀 1353·2023-01-11 13:20
閱讀 1699·2023-01-11 13:20
閱讀 1211·2023-01-11 13:20
閱讀 1902·2023-01-11 13:20
閱讀 4161·2023-01-11 13:20
閱讀 2751·2023-01-11 13:20
閱讀 1397·2023-01-11 13:20
閱讀 3664·2023-01-11 13:20