本章說明 Solaris Container Manager 3.6 (Container Manager) 軟體中的執行階段問題和錯誤。
這些執行階段問題可能會發生於 Solaris Container Manager 3.6 軟體中。
如果您使用 Solaris Container Manager 3.6 安裝的指令行介面 (CLI) 版本,則只有英文版本。此版本沒有翻譯。使用英文版本並不會影響安裝程序或功能性。
解決方法:要在您的語言環境執行安裝,請使用 GUI 安裝 (es-guiinst) 和設定 ( es-guisetup)。
若您選擇不是英語的語言環境,「使用情況圖表」影像的標題和標頭仍會以英文顯示。這些值未被本土化。
在執行 Solaris 8 作業系統的系統上,其 Container Manager 的延伸統計功能已停用。因此,Solaris 8 系統上的容器之 CSV 檔案的延伸統計資料 (Exacct) 欄將為空值。
若代理程式主機的 /etc/project 資料庫中的某專案其 ID 與 Sun Management Center 資料庫中的專案 ID 相同,但專案名稱不同,則該專案無法被 Container Manager 探索。Container Manager 要求在同一伺服器環境的所有主機中的專案 ID 需為唯一的。
您不應使用 projadd 指令建立專案。請僅使用 Container Manager 來管理專案。
解決方法:從代理程式主機的 /etc/project 資料庫刪除由 projadd 指令建立的非預設專案,並使用 Container Manager 中的 [新容器] 精靈建立容器。
建立、修改或刪除區域、儲存池或專案期間發生錯誤時,顯示的錯誤訊息不完整且無法提供足夠的詳細資料。下列為您可能遇到的錯誤訊息:
無法建立資源儲存池
無法建立區域
無法更新專案、區域或儲存池
無法啟動有效使用者的容器
無法建立容器與主機的關聯
解決方法:如果您遇到上述任何錯誤,請參閱下列所提之重點。但是,首先要確認使用者為有效的 SunMC 使用者,且有必要的管理權限 ( esadm、esdomadm 群組的一部份)。
執行下列指令以確認使用者已與必要的設定檔建立關聯:
$ profiles <使用者名稱>
下列為必要的設定檔:
Solaris 10 - 區域管理、儲存池管理、專案管理
Solaris 9 - 儲存池管理、專案管理
Solaris 8 - 專案管理
如果您發現必要的設定檔遺失,請執行下列指令 (以超級使用者的身分) 並修改與使用者相關聯的設定檔:
# usermod -P "<以逗號分隔的必要設定檔清單>" <使用者名稱>
如果有任何設定檔不存在於系統中,請以下列格式將遺失的項目加入 /etc/security 目錄的 prof_attr 檔案中。
Pool Management:::Resource pool management profile:help=RtPoolMgmt.html
Project Management:::Manage Solaris projects:auths=solaris.project.read,solaris.project.write; help=RtProjManagement.html
執行下列指令以找出使用者是否為 SCM 模組之本機存取使用者清單的一部份。
<基底目錄>/SUNWsymon/sbin/es-config -M scm-container -s
如果使用者不是存取清單中的一部份,請執行下列指令:
<基底目錄>/SUNWsymon/sbin/es-config -M scm-container -l <使用者名稱>
這些執行階段錯誤可能會發生在 Solaris Container Manager 3.6 軟體中。
代理程式當機並將 scm-container* 檔案留在 /var/opt/SUNWsymon/cfg/ 目錄中。當代理程式重新啟動時,可能不會以最佳化的方式執行。若出現下列錯誤訊息表示可能發生此情況:
Insufficient security privilege to complete the operation.
您可以輸入下列指令以判定代理程式中的程序狀態:
% ps -eaf | grep esd
解決方法:要改善效能,請輸入下列指令:
成為超級使用者。
% su -
停止代理程式。
# /opt/SUNWsymon/sbin es-stop -a
刪除狀態檔案。
# rm /var/opt/SUNWsymon/cfg/scm-container*
重新啟動代理程式。
#/opt/SUNWsymon/sbin/es-start -a
伺服器重新開機後,Java Web Console 沒有自動啟動。
要啟動 Java Web Console,請輸入下列指令:
成為超級使用者。
% su -
輸入 root 密碼。
重新啟動 Java Web Console。
# /usr/sbin/smcwebserver restart
確認 Java Web Console 將來會重新啟動。
# /usr/sbin/smcwebserver enable
解決方法:無。
若在 [新增區域] 精靈中從 [語言環境] 下拉式功能表選取無效的語言環境,區域建立會失敗。[語言環境] 下拉式功能表可能包含無效的語言環境值。
要判定有效的語言環境,請參閱「International Language Environments Guide」的「Supported Locales」。
解決方法:在 [新增區域] 精靈中從 [語言環境] 下拉式功能表選擇有效的語言環境。如果您不確定語言環境值,請選擇 C 代表選取英文語言環境。
若出現警示情況,可能會出現警示符號的工具提示而不是警示標章。
若瀏覽到另一窗格,然後回到警示物件的圖示,圖示上的標章會正確顯示。
解決方法:無。
若按一下瀏覽器的返回按鈕,Container Manager 可能會發生異常情況。本發行版本不支援瀏覽器的返回按鈕。
要自此異常情況回復,請到下列網址://伺服器名稱:6789/容器,並瀏覽到適當頁面。
解決方法:無。
Solaris 9 作業系統中的某些程序,例如使用者 nobody 執行的 JavaTM 應用程式未移動到容器中,因為 newtask 指令中有錯誤。
解決方法:使用 newtask 指令在適當容器中啟動由使用者 nobody 執行的應用程式。
# /usr/bin/newtask -p 專案名稱 指令 |
專案名稱是啟動該應用程式的專案,而指令是啟動該應用程式的指令。
如需更多資訊,請參閱 newtask(1) 線上手冊。
若使用下列符合表示式之一建立容器定義並隨之將其啟動,代理程式主機會當機:
n
ns
nsc
nscd
解決方法:使用 newtask 指令於適當的專案中啟動 nscd 程序:
# /usr/bin/newtask -p 專案名稱 指令 |
專案名稱是啟動該應用程式的專案,而指令是啟動該應用程式的指令。
如需更多資訊,請參閱 newtask(1) 線上手冊。
如果您計劃於伺服器層上重新安裝 Solaris Container Manager 3.6 軟體,請於解除安裝時先儲存資料。相同的,如果您於伺服器層再次執行設定時,若想要重新建立資料庫,請於出現提示時回答「否」。否則,若是資料未儲存而您又於伺服器層重新安裝或再次設定,則先前被探索的代理程式主機可能會從資料庫遺失。
解決方法:如果在重新安裝或重新執行設定後遺失主機,請執行下列程序以重新啟動主機上的 Sun Management Center 代理程式:
登入代理程式系統。
成為超級使用者。
% su -
鍵入以下指令以停止 Sun Management Center 代理程式:
# /opt/SUNWsymon/sbin/es-stop -a |
鍵入以下指令以啟動 Sun Management Center 代理程式︰
# /opt/SUNWsymon/sbin/es-start -a |