Was this page helpful?

iSCSI (Internet SCSI)

    內容表格
    沒有標頭




    五月 11, 2007 作者: sunchiahome

    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)
     

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