Sunday, February 14, 2010

Linux Cluster for NFS 安裝及設定 - 隨筆記錄中

趁休假這段空檔,來做一下用 iSCSI 做 Linux Cluster 的 LAB
我會有兩台機器做為 Cluster Node, 再另一台機器提供 iSCSI 的 Shared Disk
環境如下

[環境]
下面是我在休假前準備的環境
1. Storage Ubuntu 9.10 192.168.1.20 作為Shared Disk使用
2. Node1 CentOS5.4 192.168.1.21 Cluster的節點一
3. Node2 CentOS5.4 192.168.1.22 Cluster的節點二
4. Service IP 192.168.1.25 Cluster的 Service IP

其中 Storage 未來可以改用 FreeNAS 來取代,由於機器不夠先暫時用我的電腦撐一下


[基礎知識]

首先,如果要能讓 Disk 具有 iSCSI 的功能 要安裝 iscsi-initiator-utils 套件
至於,如何掛載 Share Disk 則需要 iscsitarget 套件。


[Storage]
我們採用 iscsitarget 來做 Share Disk
由於 CentOS4 不提供 iscsitarget 套件,再者下載原始程式也是無法 Compile 成功,
所以如果要使用 CentOS ,建議用 CentOS5 所提供現成的套件。
a. 安裝
iscsitarget
b. 設定
vi /etc/ietd.conf

我新增下面三行
Target iqn.2010-02.com.testabc:storage.disk2.sys1.xyz
Lun 0 Path=/home/test.img,Type=fileio
Alias Test

其中 path 可以為 實體的 raw disk , 如 /dev/sdb1, 或是 image file
ex. 用 dd 產生 1G 的檔案
dd if=/dev/zero of=/home/test.img count=1000000 size=1024


vi /etc/default/iscsitarget
將 ISCSITARGET_ENABLE 設定 true
ex. ISCSITARGET_ENABLE=true
c. 啟動
設定好後
/etc/init.d/iscsitarget start

[Node1, Node2]
安裝 iscsi-initiator-utils 套件
yum install iscsi-initiator-utils

測試掛載 iscsi 磁碟
iscsiadm --mode discovery --type sendtargets --portal 192.168.1.20


測試登出 iscsi 磁碟
iscsiadm -m node -L all



列出所有 target
iscsiadm -m node

若無法登出,多半是 Share Disk 停止分享,
可以到下面的目錄將無法登出的目錄砍掉即可
/var/lib/iscsi/nodes

將設定寫入
vi /etc/iscsi/initiatorname.iscsi
DiscoveryAddress=172.16.8.109

chkconfig iscsi on
service chkconfig start

下次重新開機就會自動找到
注意:每個 iscsi export 出來的 mount 只能由一個 Node 掛載,不能同時兩個 Nodes 掛載。




參考網站
Open-iSCSI Project
http://www.open-iscsi.org

iSCSI Enterprise Target
http://iscsitarget.sourceforge.net

No comments:

Post a Comment