Openfiler iscsi-target start get ietd is paused

因為之前有動到 iptables 防火牆規則,有將某幾個介面的 iscsi-target 3260 port 給擋下。所以當 /etc/init.d/iscsi-target 服務啟動腳本執行時,就會造成 openfiler 管理服務的頁面,因為 iscsi-target 的啟動腳本非啟動時並非預期的輸出一行處理結果,造成抓不到正確的狀態資訊。所以 services.html 頁面中 iscsi-target 的 state 顯示永遠都是處於 disable 的狀態。

非必要的話盡量不要設定 iptables 阻攔 iscsi-target 的服務端口。就像這次一樣,雖然主機上有多張網路介面卡,但在 iptables 上設定只允許其中一個介面可提供 iscsi-target 的服務。而 iscsi-target 的啟重腳本,卻誤判 iscsi-target 被防火牆給擋了。

於是就吐出 ietd is paused 的訊息在第二行,而 services.html 使用
php exec 函式執行系統命令,並傳回處理結果。但是 exec 僅會取得最後一行的訊息,但最後一行中並沒有能讓判斷成立的「running」字串(最後一行是 ietd is paused)。如果要讓命令執行並傳回完整的處理訊息,可以改用 shell_exec 函式。

要讓 iscsi-target 只運行在一個介面上,正確的做法由 ietd 命令下手,在啟用 iscsi-target 時,給一個 -a 的參數並指定其運行的ip 位址。

如果要固定設定可以修改 「/etc/sysconfig/iscsi-target」,設定 LISTEN_ADDR="192.168.128.233″。固定 iscsi-target listen_addr 只有一個位址。

接著重新啟動 iscsi-target 服務就算大功告成。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s