星期二, 5月 25, 2010

iSNS Server 研讀小記

使用 iSCSI 服務, iSCSI initiator 必須先 Discover Target,
但是SAN有可能包含比較多的裝置, 所以 iSCSI 必須辨認 SAN的resource

目前有三種 Target 的discovery方式

  • Traditional iSCSI
  • Internet Storage Name Service ( iSNS )
  • SLP ( not currently supported )
iSNS 提供 自動Discovery, 管理, 以及設定 iSCSI 裝置
如果有 iSNS Server 在網路內, iSCSI Initiator 可以對 iSNS Server 送出查詢,
iSNS Server 則會回覆該 iSCSI Initiator 可以使用的 iSCSI Targets.

iSCSI 也可以將 iSCSI Initiator and iSCSI Target 組成一個 zone,
可以定義 iSNS discovery domains 以及 discovery domain sets
  • Discovery domains:
    • a group of iSCSI nodes.  iSCSI Initiator 只能尋找與他相同的Discovery domain 的裝置.
  • Discovery domain sets:
    • a group of discovery domains.
iSNS Targets 與 iSCSI Initiator  使用 iSNS protocol 來溝通.
iSCSI Client:
  • Register device attribute information in a common discovery domain.
  • Download information about other registered clients.
  • Receive asynchronous notification of events occur in their discovery domain.
iSCSI Server
  • Respond to iSNS queries and requests send from iSNS clients using the iSNS protocol.
  • Initiate iSNS protocol state change notifications.
  • Store properly authenticated information submitted by a registration request in an iSNS database.

Lab: Installing and Configuring iSNS
安裝 iSNS Server
  • # yast2  isns
  • 點選安裝(如果被提示要安裝套件)
  • 於ISNS 伺服器的位置 輸入 IP 或是 FQDN
  • 服務啟動 選取 開機時
  • 開啟防火牆設定
  • 點選完成
觀察相關資訊
# cat  /etc/isns.conf 
isns_address=192.168.123.201

da-1:~ # netstat -tupln | grep 3205
tcp        0      0 0.0.0.0:3205            0.0.0.0:*               LISTEN      25683/isnsd         
udp        0      0 127.0.0.2:3205          0.0.0.0:*                           25683/isnsd   

# rcisns status
Checking for iSNS Internet Storage Naming Service:                                                  running

da-1:~ # chkconfig isns --list
isns                      0:off  1:off  2:off  3:on   4:off  5:on   6:off

Lab: 建立 iSNS Discovery Domains 以及 Discovery domain set
iSNS Server 至少要有一個  Discovery Domain 以及 Discovery domain set
預設會建立一個 default DD
  • #yast2  isns
  • 點選 探查網域 頁面
    • 點選 建立探查網域
    • 輸入 自訂名稱
    • 點選 確定
  • 點選 探查網域集
    • 點選 建立探查網域集
    • 輸入自訂名稱
    • 點選確定
    • 點選 新增探查網域
    • 選取 要新增的探查網域
    • 點選 完成

Lab: Add iSCSI Nodes to a Discovery Domain
將 iSCSI Node 加入 Discovery Domain
在 iSCSI Target 主機上面
  • # yast2 iscsi-server
  • 勾選 iSNS 存取控制
    • 輸入iSNS 伺服器 IP
    • 點選完成
觀察資訊
可以啟動 iSNS 模組觀察 iSCSI 節點 頁面, 是否有被新增進來.
# yast2 isns

也可以觀察 
da-1:~ # head  -n  2   /etc/ietd.conf 
iSNSServer   192.168.123.201
iSNSAccessControl   Yes


Lab: 讓 iSCSI  Initiator 使用 iSNS Server
在 iSCSi Initiator 主機上面
  • # yast2 iscsi-client
  • 在 iSNS 位址 輸入 iSNS Server IP
  • 在 iSNS 連接阜 輸入 預設 Port 3205
  • 點選完成
觀察資訊
# grep isns /etc/iscsi/iscsid.conf 
isns.address = 192.168.123.201
isns.port = 3205

重新啟動服務 
# rcopen-iscsi  restart

Lab: 將 iSCSI Target 以及 iSCSI Initiator 指定到 Discovery Domain
在  iSNS Server 上面
  • # yast2 isns
  • 點選 iSCSI 節點 頁面
    • 確認 iSCSI Target 以及 iSCSI Initiator 都有出現在清單上面
  • 點選  探查網域 頁面
    • 點選 要指定的 discovery domain
    • 點選 新增現有的 iSCSI  節點
    • 點選要新增的 Target 以及 Initiator 節點
    • 點選 新增節點 (將要附加在此 Discovery domain 所有節點加入)
    • 點選 完成

測試 iSNS 伺服器
在 iSCSI Initiator 主機上面
  • # yast2 iscsi-client
  • 檢查 探查的目標 頁面
    • 點選探查  按鈕
在沒有 iSNS Server 架構的情形下, 必須輸入 iSCSI Target 的主機 IP
在 有iSNS Server 架構的情形下, 只要點選探查, 就會自動列出相關資源

但是登入驗證還是要自己作 ^^

這邊發現的小bug ( 可能是還沒有升級  )
  • #yast2  iscsi-client 加入 iSNS Server 有時候不會寫入 /etc/iscsi/iscsid.conf  , 要手動修改
  • 如果登入不成功或是 iSNS Server 有問題, 建議將服務重開
    • # rcopen-iscsi restart
    • # rciscsitarget restart

enjoy it ~~


沒有留言: