<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 18.3 iSCSI initiator 的設定 談完了 target 的設定,并且觀察到相關 target 的 LUN 數據后,接下來就是要來掛載使用啰。使用的方法很簡單, 只不過我們得要安裝額外的軟件來取得 target 的 LUN 使用權就是了。 * * * ### 18.3.1 所需軟件與軟件結構 在前一小節就談過了,要設定 iSCSI initiator 必須要安裝 iscsi-initiator-utils 才行。安裝的方法請使用 yum 去處理,這里不再多講話。那么這個軟件的結構是如何呢? * /etc/iscsi/iscsid.conf:主要的配置文件,用來連結到 iSCSI target 的設定; * /sbin/iscsid:啟動 iSCSI initiator 的主要服務程序; * /sbin/iscsiadm:用來管理 iSCSI initiator 的主要設定程序; * /etc/init.d/iscsid:讓本機模擬成為 iSCSI initiater 的主要服務; * /etc/init.d/iscsi:在本機成為 iSCSI initiator 之后,啟動此腳本,讓我們可以登入 iSCSI target。所以 iscsid 先啟動后,才能啟動這個服務。為了防呆,所以 /etc/init.d/iscsi 已經寫了一個啟動指令, 啟動 iscsi 前尚未啟動 iscsid ,則會先呼叫 iscsid 才繼續處理 iscsi 喔! 老實說,因為 /etc/init.d/iscsi 腳本已經包含了啟動 /etc/init.d/iscsid 的步驟在里面,所以,理論上, 你只要啟動 iscsi 就好啦!此外,那個 iscsid.conf 里面大概只要設定好登入 target 時的帳密即可, 其他的 target 搜尋、設定、取得的方法都直接使用 iscsiadm 這個指令來完成。由于 iscsiadm 偵測到的結果會直接寫入 /var/lib/iscsi/nodes/ 當中,因此只要啟動 /etc/init.d/iscsi 就能夠在下次開機時,自動的連結到正確的 target 啰。 那么就讓我們來處理處理整個過程吧 ([注6](#ps6))! * * * ### 18.3.2 initiator 的實際設定 首先,我們得要知道 target 提供了啥咚咚啊,因此,理論上,不論是 target 還是 initiator 都應該是要我們管理的機器才對。 而現在我們知道 target 其實有設定賬號與密碼的,所以底下我們就得要修改一下 iscsid.conf 的內容才行。 * 修改 /etc/iscsi/iscsid.conf 內容,并啟動 iscsi 這個檔案的修改很簡單,因為里面的參數大多已經預設做的不錯了,所以只要填寫 target 登入時所需要的帳密即可。 修改的地方有兩個,一個是偵測時 (discovery) 可能會用到的帳密,一個是聯機時 (node) 會用到的帳密: ``` [root@clientlinux ~]# vim /etc/iscsi/iscsid.conf node.session.auth.username = vbirduser &lt;==在 target 時設定的 node.session.auth.password = vbirdpasswd &lt;==約在 53, 54 行 discovery.sendtargets.auth.username = vbirduser &lt;==約在 67, 68 行 discovery.sendtargets.auth.password = vbirdpasswd [root@clientlinux ~]# chkconfig iscsid on [root@clientlinux ~]# chkconfig iscsi on ``` 由于我們尚未與 target 聯機,所以 iscsi 并無法讓我們順利啟動的!因此上面只要 chkconfig 即可,不需要啟動他。 要開始來偵測 target 與寫入系統信息啰。全部使用 iscsiadm 這個指令就可以完成所有動作了。 * 偵測 192.168.100.254 這部 target 的相關數據 雖然我們已經知道 target 的名字,不過,這里假設還不知道啦!因為有可能哪一天你的公司有錢了, 會去買實體的 iSCSI 數組嘛!所以這里還是講完整的偵測過程好了!你可以這樣使用: ``` [root@clientlinux ~]# iscsiadm -m discovery -t sendtargets -p IP:port 選項與參數: -m discovery :使用偵測的方式進行 iscsiadmin 指令功能; -t sendtargets :透過 iscsi 的協議,偵測后面的設備所擁有的 target 數據 -p IP:port :就是那部 iscsi 設備的 IP 與埠口,不寫埠口預設是 3260 啰! 范例:偵測 192.168.100.254 這部 iSCSI 設備的相關數據 [root@clientlinux ~]# iscsiadm -m discovery -t sendtargets -p 192.168.100.254 192.168.100.254:3260,1 iqn.2011-08.vbird.centos:vbirddisk # 192.168.100.254:3260,1 :在此 IP, 端口上面的 target 號碼,本例中為 target1 # iqn.2011-08.vbird.centos:vbirddisk :就是我們的 target 名稱啊! [root@clientlinux ~]# ll -R /var/lib/iscsi/nodes/ /var/lib/iscsi/nodes/iqn.2011-08.vbird.centos:vbirddisk /var/lib/iscsi/nodes/iqn.2011-08.vbird.centos:vbirddisk/192.168.100.254,3260,1 # 上面的特殊字體部分,就是我們利用 iscsiadm 偵測到的 target 結果! ``` 現在我們知道了 target 的名稱,同時將所有偵測到的信息通通寫入到上述 /var/lib/iscsi/nodes/iqn.2011-08.vbird.centos:vbirddisk/192.168.100.254,3260,1 目錄內的 default 檔案中, 若信息有修訂過的話,那你可以到這個檔案內修改,也可以透過 iscsiadm 的 update 功能處理相關參數的。 * 開始進行聯機 iSCSI target 因為我們的 initiator 可能會連接多部的 target 設備,因此,我們得先要瞧瞧目前系統上面偵測到的 target 有幾部, 然后再找到我們要的那部 target 來進行登入的作業。不過,如果你想要將所有偵測到的 target 全部都登入的話, 那么整個步驟可以再簡化: ``` 范例:根據前一個步驟偵測到的資料,啟動全部的 target [root@clientlinux ~]# /etc/init.d/iscsi restart 正在停止 iscsi: [ 確定 ] 正在激活 iscsi: [ 確定 ] # 將系統里面全部的 target 通通以 /var/lib/iscs/nodes/ 內的設定登入 # 上面的特殊字體比較需要注意啦!你只要做到這里即可,底下的瞧瞧就好。 范例:顯示出目前系統上面所有的 target 數據: [root@clientlinux ~]# iscsiadm -m node 192.168.100.254:3260,1 iqn.2011-08.vbird.centos:vbirddisk 選項與參數: -m node:找出目前本機上面所有偵測到的 target 信息,可能并未登入喔 范例:僅登入某部 target ,不要重新啟動 iscsi 服務 [root@clientlinux ~]# iscsiadm -m node -T target名稱 --login 選項與參數: -T target名稱:僅使用后面接的那部 target ,target 名稱可用上個指令查到! --login :就是登入啊! [root@clientlinux ~]# iscsiadm -m node -T iqn.2011-08.vbird.centos:vbirddisk \ &gt; --login # 這次進行會出現錯誤,是因為我們已經登入了,不可重復登入喔! ``` 接下來呢?呵呵!很棒的是,我們要來開始處理這個 iSCSI 的磁盤了喔!怎么處理?瞧一瞧! ``` [root@clientlinux ~]# fdisk -l Disk /dev/sda: 8589 MB, 8589934592 bytes &lt;==這是原有的那顆磁盤,略過不看 ....(中間省略).... Disk /dev/sdc: 2147 MB, 2147483648 bytes 67 heads, 62 sectors/track, 1009 cylinders Units = cylinders of 4154 * 512 = 2126848 bytes Sector size (logical/physical): 512 bytes / 512 bytes Disk /dev/sdb: 2154 MB, 2154991104 bytes 67 heads, 62 sectors/track, 1013 cylinders Units = cylinders of 4154 * 512 = 2126848 bytes Sector size (logical/physical): 512 bytes / 512 bytes Disk /dev/sdd: 524 MB, 524288000 bytes 17 heads, 59 sectors/track, 1020 cylinders Units = cylinders of 1003 * 512 = 513536 bytes Sector size (logical/physical): 512 bytes / 512 bytes ``` 你會發現主機上面多出了三個新的磁盤,容量與剛剛在 192.168.100.254 那部 iSCSI target 上面分享的 LUN 一樣大。 那這三顆磁盤可以怎么用?你想怎么用就怎么用啊!只是,唯一要注意的,就是 iSCSI target 每次都要比 iSCSI initiator 這部主機還要早開機,否則我們的 initiator 恐怕就會出問題。 * 更新/刪除/新增 target 數據的方法 如果你的 iSCSI target 可能因為某些原因被拿走了,或者是已經不存在于你的區網中,或者是要送修了~ 這個時候你的 iSCSI initiator 總是得要關閉吧!但是,又不能全部關掉 (/etc/init.d/iscsi stop), 因為還有其他的 iSCSI target 在使用。這個時候該如何取消不要的 target 呢?很簡單!流程如下: ``` [root@clientlinux ~]# iscsiadm -m node -T targetname --logout [root@clientlinux ~]# iscsiadm -m node -o [delete&#124;new&#124;update] -T targetname 選項與參數: --logout :就是注銷 target,但是并沒有刪除 /var/lib/iscsi/nodes/ 內的數據 -o delete:刪除后面接的那部 target 鏈接信息 (/var/lib/iscsi/nodes/*) -o update:更新相關的信息 -o new :增加一個新的 target 信息。 范例:關閉來自鳥哥的 iSCSI target 的數據,并且移除鏈接 [root@clientlinux ~]# iscsiadm -m node &lt;==還是先秀出相關的 target iqn 名稱 192.168.100.254:3260,1 iqn.2011-08.vbird.centos:vbirddisk [root@clientlinux ~]# iscsiadm -m node -T &lt;u&gt;iqn.2011-08.vbird.centos:vbirddisk&lt;/u&gt; \ &gt; --logout Logging out of session [sid: 1, target: iqn.2011-08.vbird.centos:vbirddisk, portal: 192.168.100.254,3260] Logout of [sid: 1, target: iqn.2011-08.vbird.centos:vbirddisk, portal: 192.168.100.254,3260] successful. # 這個時候的 target 連結還是存在的,雖然注銷你還是看的到! [root@clientlinux ~]# iscsiadm -m node -o delete \ &gt; -T iqn.2011-08.vbird.centos:vbirddisk [root@clientlinux ~]# iscsiadm -m node iscsiadm: no records found! &lt;==嘿嘿!不存在這個 target 了~ [root@clientlinux ~]# /etc/init.d/iscsi restart # 你會發現唔!怎么 target 的信息不見了!這樣瞭了乎! ``` 如果一切都沒有問題,現在,請回到 discovery 的過程,重新再將 iSCSI target 偵測一次,再重新啟動 initiator 來取得那三個磁盤吧!我們要來測試與利用該磁盤啰! * * * ### 18.3.3 一個測試范例 到底 iSCSI 可以怎么用?我們就來玩一玩。假設: 1. 你剛剛如同鳥哥的整個運作流程,已經在 initiator 上面將 target 數據清除了; 2. 現在我們只知道 iSCSI target 的 IP 是 192.168.100.254 ,而需要的帳密是 vbirduser, vbirdpasswd; 3. 帳密信息你已經寫入 /etc/iscsi/iscsid.conf 里面了; 4. 假設我們預計要將 target 的磁盤拿來當作 LVM 內的 PV 使用; 5. 并且將所有的磁盤容量都給一個名為 /dev/iscsi/disk 的 LV 使用; 6. 這個 LV 會被格式化為 ext4 ,且掛載在 /data/iscsi 內。 那么,整體的流程是: ``` # 1\. 啟動 iscsi ,并且開始偵測及登入 192.168.100.254 上面的 target 名稱 [root@clientlinux ~]# /etc/init.d/iscsi restart [root@clientlinux ~]# chkconfig iscsi on [root@clientlinux ~]# iscsiadm -m discovery -t sendtargets -p 192.168.100.254 [root@clientlinux ~]# /etc/init.d/iscsi restart [root@clientlinux ~]# iscsiadm -m node 192.168.100.254:3260,1 iqn.2011-08.vbird.centos:vbirddisk # 2\. 開始處理 LVM 的流程,由 PV, VG, LV 依序處理喔! [root@clientlinux ~]# fdisk -l &lt;==出現的資料中你會發現 /dev/sd[b-d] [root@clientlinux ~]# pvcreate /dev/sd{b,c,d} &lt;==建立 PV 去! Wiping swap signature on /dev/sdb Physical volume "/dev/sdb" successfully created Physical volume "/dev/sdc" successfully created Physical volume "/dev/sdd" successfully created [root@clientlinux ~]# vgcreate iscsi /dev/sd{b,c,d} &lt;==建立 VG 去! Volume group "iscsi" successfully created [root@clientlinux ~]# vgdisplay &lt;==要找到可用的容量啰! --- Volume group --- VG Name iscsi ....(中間省略).... Act PV 3 VG Size 4.48 GiB PE Size 4.00 MiB Total PE 1148 &lt;==就是這玩意兒!共 1148 個! Alloc PE / Size 0 / 0 Free PE / Size 1148 / 4.48 GiB ....(底下省略).... [root@clientlinux ~]# lvcreate -l 1148 -n disk iscsi Logical volume "disk" created [root@clientlinux ~]# lvdisplay --- Logical volume --- LV Name /dev/iscsi/disk VG Name iscsi LV UUID opR64B-Zeoe-C58n-ipN2-em3O-nUYs-wjEZDP LV Write Access read/write LV Status available # open 0 LV Size 4.48 GiB &lt;==注意一下容量對不對啊! Current LE 1148 Segments 3 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 # 3\. 開始格式化,并且進行開機自動掛載的動作! [root@clientlinux ~]# mkfs -t ext4 /dev/iscsi/disk [root@clientlinux ~]# mkdir -p /data/iscsi [root@clientlinux ~]# vim /etc/fstab /dev/iscsi/disk /data/iscsi ext4 defaults,_netdev 1 2 [root@clientlinux ~]# mount -a [root@clientlinux ~]# df -Th 文件系統 類型 Size Used Avail Use% 掛載點 /dev/mapper/iscsi-disk ext4 4.5G 137M 4.1G 4% /data/iscsi ``` 比較特殊的是 /etc/fstab 里面的第四個字段,加上 _netdev (最前面是底線) 指的是,因為這個 partition 位于網絡上, 所以得要網絡開機啟動完成后才會掛載的意思。現在,請讓你的 iSCSI initiator 重新啟動看看, 試看看重新啟動系統后,你的 /data/iscsi 是否還存在呢? ^_^ 然后,讓我們切回 iSCSI target 那部主機,研究看看到底誰有使用我們的 target 呢? ``` [root@www ~]# tgt-admin --show Target 1: iqn.2011-08.vbird.centos:vbirddisk System information: Driver: iscsi State: ready I_T nexus information: I_T nexus: 2 Initiator: iqn.1994-05.com.redhat:71cf137f58f2 &lt;==不是很喜歡的名字! Connection: 0 IP Address: 192.168.100.10 &lt;==就是這里聯機進來啰! LUN information: ....(后面省略).... ``` 明明是 initiator 怎么會是那個 redhat 的名字呢?如果你不介意那就算了,如果挺介意的話,那么修改 initiator 那部主機的 /etc/iscsi/initiatorname.iscsi 這個檔案的內容,將它變成類似如下的模樣即可: **Tips:** 不過,這個動作最好在使用 target 的 LUN 之前就進行,否則,當你使用了 LUN 的磁盤后,再修改這個檔案后, 你的磁盤文件名可能會改變。例如鳥哥的案例中,改過 initiatorname 之后,原本的磁盤文件名竟變成 /dev/sd[efg] 了!害鳥哥的 LV 就不能再度使用了... ![](https://box.kancloud.cn/2016-05-13_5735736501917.gif) ``` # 1\. 先在 iSCSI initiator 上面進行如下動作: [root@clientlinux ~]# vim /etc/iscsi/initiatorname.iscsi InitiatorName=iqn.2011-08.vbird.centos:initiator [root@clientlinux ~]# /etc/init.d/iscsi restart # 2\. 在 iSCSI target 上面就可以發現如下的數據修訂了: [root@www ~]# tgt-admin --show Target 1: iqn.2011-08.vbird.centos:vbirddisk System information: Driver: iscsi State: ready I_T nexus information: I_T nexus: 5 Initiator: iqn.2011-08.vbird.centos:initiator Connection: 0 IP Address: 192.168.100.10 ....(后面省略).... ``` * * *
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看