Was this page helpful?

iSCSI 導論

    內容表格
    沒有標頭

    iet(iSCSI Enterprise Target)
    Step 0: 前言
    Step 1: 下載 iSCSI target
    Step 2: 安裝 iSCSI target
    Step 3: iSCSI Target設定檔
    Step 4: 檢查 iSCSI target 服務是否啟動
    Step 5: iSCSI Target tools
    Step 6: manpages
    Step 7: iSCSI initiator
    Step 8: 相關網站連結

    Step 0 : 前言

    先來介紹一下什麼是 iSCSI
    iSCSI(Internet SCSI)他是 IP-based 的資料儲存的裝置. iSCSI 是一種 SAN的裝置而 SAN的裝置主要是提供 Server 儲存體的空間.它可以依據 Server 的需求來動態調整空間大小.以提高硬碟的使用空間. iSCSI 在 2003年2月份也成為 IETF 的標準協定.

    iet(iSCSI Enterprise Target)

    Step 1: 下載 iSCSI target
    首先要先下載iSCSI Target 我們可以在  http://iscsitarget.sourceforge.net/ 中可以看到.
    但是他的版本和 kernel 有關,我們需要找到適合我們的版本.
    如 RHEL 4 使用的是 kernel 2.6.9  ,所以適合版本為最新的 iscsi-target-0.4.00.
    Fedora Core 5 使用的是 kernel 2.6.15 ,所以適合版本為最新的 iscsi-target-0.4.13.
    如果你是使用其他版本的 linux 請先查詢你的核心版本.
    [root@unsvr root]# uname -a
     
    Step 2: 安裝 iSCSI target
    首先我們需要 kernel-devel-version 可以在光碟找到.
    [root@unsvr root]# rpm -ivh /media/cdrom/Fedora/RPMS/kernel-devel-version
    如果找不到請到 http://kernel.org 下載相同版本的 kernel
     
    下載到 iscsitarget 之後就要開始編輯它了.
    [root@unsvr root]# tar xvfz iscsitarget-version.tar.gz
    [root@unsvr root]# cd iscsitarget-version

    還記得我們剛安裝的 kernel-devel-version 嗎?這時就要指定路徑.
    [root@unsvr iscsitarget-version]# make KERNELSRC=/usr/src/kernels/2.6.14-1.1526_FC4-i686
    [root@unsvr iscsitarget-version]# make install
    開始使用 iscsi Target了.

    如果你的 fireware 有開啟,記得將 port 3260 開啟(iSCSI 使用 port 3260).
     
    Step 3 : iSCSI Target設定檔
    系統有一個預設的 iSCSI Target 設定檔.位置存放在 /root/iscsitarget-version/etc/inetd.conf
    [root@unsvr iscsitarget-version]# cp etc/ietd.conf /etc
    我們需要將它放在 /etc/ 目錄下.
    先來看看這個設定檔的內容.
    [root@unsvr iscsitarget-version]# vi /etc/ietd.conf
    --------------------------------------------------------------------------------
    Target iqn.2001-04.com.example:storage.disk2.sys1.xyz
            # Users, who can access this target
            # (no users means anyone can access the target)
            IncomingUser joe
            #OutgoingUser
            # Lun definition
            # (right now only block devices are possible)
            Lun 0 Path=/dev/sdb,Type=fileio
            Lun 1 Path=/dev/sdc,Type=fileio
            # Alias name for this target
            # Alias iSCSI
            # various iSCSI parameters
            # (not all are used right now, see also iSCSI spec
    --------------------------------------------------------------------------------
    說明:
    Target iqn.2001-04.com.example:storage.disk2.sys1.xyz
    這個只是 iSCSI Target 的一個識別名稱.
    IncomingUser joe
    因為 iSCSI Initiator 有很多個哪個連結到哪一個 Disk,可以用這個來做為識別.
    Lun 0 Path=/dev/sdb,Type=fileio
    Lun 1 Path=/dev/sdc,Type=fileio
    我將給 joe 這個使用者兩個硬碟,分別對應到 sdb,sdc.而所謂的 LUN(Logic Uit Number)他將會決定 iSCSI Initiator 所看到的硬碟順序.
    除了一般硬碟(hda,sda... 等)可用外還可以用 LVM的方式來做.畢竟 SAN 的定義是 "可以自由調整硬碟空間大小給 Server使用,藉此提高硬碟空間的使用率."
    關於 LVM 起參考下面的網站.
    LVM-簡介
    LVM(Logical Volume Manager)是一種可以動態變更磁區大小的方式,可以讓你能更容易利用管理你的硬碟.
    LVM-工具
    Linux 提供了一些工具來規劃使用 LVM.
    LVM-RAID0
    LVM(Logical Volume Manager) 還有類似 RAID0(striping)的功能
    LVM-snapshots
    使用 LVM(Logical Volume Manager) 的 Snapshots 功能來進行備份
     
    Step 4: 檢查 iSCSI target 服務是否啟動
    因為這個服務是基於 IP ,所以要先設定一下 IP.在我 iSCSI target 的設定IP為 10.6.116.108.
    [root@unsvr root]# netconfig –device eth0
     
    要立刻啟動iSCSI Target,請鍵入下面指令.
    [root@unsvr root]# service iscsi-target start
     
    如果要讓每次開機時都能啟動 iSCSI Target,請鍵入下面指令.
    [root@unsvr root]# chkconfig iscsi-target on
    基本上這就是一個 IP SAN 的東西了.
     
    Step 5: iSCSI Target tools
    ietd(iSCSI Enterprise Target Daemon) 提供了兩個工具來使用.
    1.ietd
     
    2.ietadm
     
    Step 6: manpages
    不知道為什麼當我完成 make install 時,我發現他的 manpages 並沒有正確安裝在 /usr/share/man/ 中,所以我們要手動來將這一些 manpages 放到 /usr/share/man.
    [root@unsvr iscsitarget-version]# gunzip doc/manpages/ietd.conf.5
    [root@unsvr iscsitarget-version]# gunzip doc/manpages/ietd.8
    [root@unsvr iscsitarget-version]# cp doc/manpages/ietd.conf.5.gz  /usr/share/man/man5
    [root@unsvr iscsitarget-version]# cp doc/manpages/ietd.8.gz  /usr/share/man/man8
    [root@unsvr iscsitarget-version]# man ietd.conf
    [root@unsvr iscsitarget-version]# man ietd
     
    Step 7: iSCSI initiator
    至於 initiator 要怎麼和我的 iSCSI target 溝通,請參考下面兩章.
    I.iSCSI(Linux initiator)
    II.iSCSI(Windows initiator)
     
    Step 8: 相關網站連結
    http://www.ardistech.com/iscsi/
    http://www.cs.uml.edu/~mbrown/iSCSI/
    http://www.cuddletech.com/articles/iscsi/index.html
    http://en.wikipedia.org/wiki/ISCSI

    Was this page helpful?
    標籤 (Edit tags)
    • No tags
    您必須 登入 才能發佈評論。
    Powered by MindTouch Core