注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

胡益兵的博客

新的岗位,新的方向,新的使命,stem教育进行中。

 
 
 

日志

 
 

【实验通过】搭建基于iSCSI的IP SAN存储系统  

2015-09-19 17:30:49|  分类: linux应用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
一、在linux主机(192.168.12.246)上安装iSCSI target软件
wget http://sourceforge.net/projects/iscsitarget/files/iscsitarget/1.4.20.2/iscsitarget-1.4.20.2.tar.gz
tar xvf iscsitarget-1.4.20.2.tar.gz
cd iscsitarget-1.4.20.2.tar.gz
make
make: *** /lib/modules/2.6.32-573.3.1.el6.x86_64/build: 没有那个文件或目录。 停                                                                                        止。
yum -y install gcc gcc-c++ kernel-devel kernel  kernel-headers
重启机器启用新内核
make
make install

vi /etc/iet/ietd.conf
#Target iqn.2001-04.com.example:storage.disk2.sys1.xyz
iqn.yyyy-mm.<reversed domain name>[:identifier]
其中:
iqn:表示“iSCSI Qualified Name”,简称iqn。
yyyy-mm:表示年份-月份。这里是2001-04。
reversed domain name:表示倒过来的域名,这里是com.example。
identifier:表示识别代码,这里是storage.disk2.sys1.xyz。
Target iqn.2015-09.com.example:sdb

设定 LUN(Logical Unit Number),找到类似如下行:
#Lun 0 Path=/dev/sdb,Type=fileio,ScsiId=xyz,ScsiSN=xyz
将前面的“#”号去掉,“Lun 0 Path=/dev/sdb ”表示块设备号为0,映射的磁盘为/dev/sdb,“Type”值fileio是默认的,可以用于磁盘、file和LVM ,这里设定的是“fileio”,主要用来对一个磁盘进行存储共享 。
至此,简单的iSCSI Target配置完毕,最后启动iscsi-target服务:
service iscsi-target start

查看日志tail -f /var/log/messages
Sep 19 16:27:21 RS1-246 kernel: iSCSI Enterprise Target Software - version 1.4.20.2
Sep 19 16:27:21 RS1-246 kernel: iscsi_trgt: Registered io type fileio
Sep 19 16:27:21 RS1-246 kernel: iscsi_trgt: Registered io type blockio
Sep 19 16:27:21 RS1-246 kernel: iscsi_trgt: Registered io type nullio
Sep 19 16:27:21 RS1-246 kernel: iscsi_trgt: open_path(120) Can't open /dev/sdb -2(本机还没有sdb硬盘)
Sep 19 16:27:21 RS1-246 kernel: iscsi_trgt: fileio_attach(220) -2

查看硬盘情况
[root@RS1-246 ~]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a1147

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64        2611    20458496   8e  Linux LVM

Disk /dev/sdb: 5368 MB, 5368709120 bytes(已经有了sdb硬盘)
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

==================================================
二、在windows7主机安装配置iSCSI Initiator
测试连通性 
ping  192.168.12.246
telnet 192.168.12.246 3260
注意防火墙是否允许3260端口连接。

控制面板-管理工具-ISCSI发起程序
【实验通过】搭建基于iSCSI的IP SAN存储系统 - hyibing - 胡益兵的博客
 【实验通过】搭建基于iSCSI的IP SAN存储系统 - hyibing - 胡益兵的博客
 
控制面板-管理工具-计算机管理-磁盘管理
【实验通过】搭建基于iSCSI的IP SAN存储系统 - hyibing - 胡益兵的博客
 格式化后本地计算机出现磁盘,操作没有什么两样,其实是远程linux提供的ipiscsi硬盘
====================================================================================
三、在另一台linux主机(192.168.12.25)安装配置iSCSI Initiator 
yum install iscsi-initiator-utils

安装完成后,会生成/etc/iscsi主程序配置目录(该目录无需配置)。
启动Initiator服务,操作如下:
service iscsi start
在linux上执行iSCSI  Target发现
可以使用如下指令向 iSCSI Target 主机查询划分了哪些lun:
iscsiadm -m discovery --type sendtargets --portal IP 或者
iscsiadm -m discovery -t sendtargets -p IP
iscsiadm -m discovery -t sendtargets -p 192.168.12.246
正在启动 iscsid:                                          [确定]
192.168.12.246:3260,1 iqn.2015-09.com.example:sdb
需要说明的是:当成功执行一次Target发现后,iSCSI Initiator就会将查询纪录写到/var/lib/iscsi/send_targets对应目录下。因此,对于Target发现只需执行一次即可。
(1)分区、格式化共享磁盘
 fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a1147

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64        2611    20458496   8e  Linux LVM

Disk /dev/mapper/vg_ds-lv_root: 18.9 GB, 18865979392 bytes
255 heads, 63 sectors/track, 2293 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/mapper/vg_ds-lv_swap: 2080 MB, 2080374784 bytes
255 heads, 63 sectors/track, 252 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x403754fa

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         653     5239808    7  HPFS/NTFS(找到硬盘)
Partition 1 has different physical/logical endings:
     phys=(651, 254, 63) logical=(652, 115, 39)
 
 fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): d(删除分区)
Selected partition 1

Command (m for help): n(建立分区)
Command action
   e   extended
   p   primary partition (1-4)
e(建立扩展分区)
Partition number (1-4): 1
First cylinder (1-652, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652):
Using default value 652

Command (m for help): p(显示分区情况)

Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x403754fa

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         652     5237158+   5  Extended

Command (m for help): n(建立分区)
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l(建立逻辑分区)
First cylinder (1-652, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652):
Using default value 652

Command (m for help): p

Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x403754fa

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         652     5237158+   5  Extended
/dev/sdb5               1         652     5237127   83  Linux

Command (m for help): w(保存)
The partition table has been altered!

Calling ioctl() to re-read partition table.

格式化分区
mkfs.ext4 /dev/sdb5 (格式化成ext4格式)
mke2fs 1.41.12 (17-May-2010)
文件系统标签=
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1309281 blocks
65464 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736

正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.


tune2fs修改文件系统的属性,去掉自动检查的属性:
[root@data iscsi]# tune2fs -c -1 -i 0 /dev/sdb5
tune2fs 1.39 (29-May-2006)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
Linux上的ext文件系统有一个特性,对某个分区mount、umount很多次后或者隔一个固定的时间后,系统会对该分区进行检测,这就会导致硬盘反映速度很慢,影响业务,本操作的目的就是去掉文件系统自动检查的属性。


设定文件系统的自动挂载
用tune2fs查看文件系统的UUID
[root@data iscsi]# tune2fs -l /dev/sdb5
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name:   <none>
Last mounted on:          <not available>
Filesystem UUID:          10e54d0f-6931-4844-a1e1-515672f6df64

编辑/etc/fstab文件,设置自动挂载:
UUID=10e54d0f-6931-4844-a1e1-515672f6df64    /data1     ext4    _netdev   0 0
磁盘设备的名称可能会发生变化,从而引起文件系统不能挂载上来或者不能正确挂载,使用UUID的方式进行挂载可以解决这个问题,也可以使用给文件系统设置卷标的方式来解决
_netdev是针对iscsi设备的特殊mount选项,此挂载选项指示将在网络启动后挂载该卷,在关闭网络前卸载该卷。

[root@DS1-25 /]# mount /data1
[root@DS1-25 /]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_ds-lv_root
                       18G  4.3G   13G  26% /
tmpfs                 495M     0  495M   0% /dev/shm
/dev/sda1             477M   55M  398M  12% /boot
/dev/sdb5             4.8G   10M  4.6G   1% /data1 (挂载成功)


  评论这张
 
阅读(43)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018