Iscsi实现共享存储

平台:Openstatic
Centos6.8作为服务端
RHEL7.2作为客户端搭建iscsi共享存储
关于网卡只能识别出一个网卡的问题,重启NetworkManager服务
systemctl restart NetworkManager.service
配置网卡信息
/etc/sysconfig/network-scripts/ifcfg-eth0
复制eth0配置文件到eth1,修改名称为eth1
http://7424593.blog.51cto.com/7414593/1845978
http://blog.csdn.net/yuner027/article/details/51925146

服务端

centos6配置iscsi服务

[root@racsto home]# /etc/init.d/tgtd start
Starting SCSI target daemon: [ OK ]
[root@racsto home]# chkconfig tgtd on
[root@racsto home]# netstat -tuanlp | grep tgtd
tcp 0 0 0.0.0.0:3260 0.0.0.0:* LISTEN 2365/tgtd
tcp 0 0 :::3260 :::*

分区

fdisk /dev/vda
n
w

pvcreate命令
用于将物理硬盘分区初始化为物理卷,以便LVM使用。

vgcreate命令
用于创建LVM卷组。卷组(Volume Group)将多个物理卷组织成一个整体,屏蔽了底层物理卷细节。在卷组上创建逻辑卷时不用考虑具体的物理卷信息

lvcreate命令
用于创建LVM的逻辑卷。逻辑卷是创建在卷组之上的。逻辑卷对应的设备文件保存在卷组目录下,例如:在卷组”vg1000”上创建一个逻辑卷”lvol0”,则此逻辑卷对应的设备文件为”/dev/vg1000/lvol0”。
语法 lvcreate(选项)(参数)
选项 -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节; -l:指定逻辑卷的大小(LE数)。

将需要做共享的分区初始化为物理券
pvcreate /dev/vda5 /dev/vda6 /dev/vda7 /dev/vda8 /dev/vda9 /dev/vda10 /dev/vda11
将初始化好的物理券组织成一个整体
vgcreate vghangao /dev/vda5 /dev/vda6 /dev/vda7 /dev/vda8 /dev/vda9 /dev/vda10 /dev/vda11
重新划分逻辑券
[root@racsto ~]#lvcreate -L 1024M vghangao
[root@racsto ~]# lvcreate -L 30700M vghangao
[root@racsto ~]# lvcreate -L 20480M vghangao
[root@racsto ~]# lvscan
ACTIVE ‘/dev/vghangao/lvol0’ [1.00 GiB] inherit
ACTIVE ‘/dev/vghangao/lvol1’ [1.00 GiB] inherit
ACTIVE ‘/dev/vghangao/lvol2’ [1.00 GiB] inherit
ACTIVE ‘/dev/vghangao/lvol3’ [1.00 GiB] inherit
ACTIVE ‘/dev/vghangao/lvol4’ [1.00 GiB] inherit
ACTIVE ‘/dev/vghangao/lvol5’ [29.98 GiB] inherit
ACTIVE ‘/dev/vghangao/lvol6’ [20.00 GiB] inherit

相关配置文件

yum install scsi-target-utils -y
chkconfig tgtd on
查看监听端口:
netstat -tuanlp | grep tgtd
/etc/init.d/tgtd start

1 /etc/tgt/targets.conf 主配置文件,设置要共享的磁盘格式与块设备等
2 /usr/sbin/tgt-admin 查询、删除target等功能的设置工具
3 /usr/sbin/tgt-setup-lun 建立target以及设置共享的磁盘与可使用的客户端等的程序
4 /usr/sbin/tgtadm iscsi target管理程序(可使用配置文件取代)
5 /usr/sbin/tgtd 提供iSCSI target服务的主程序
6 /usr/sbin/tgtimg 搭建共享镜像文件设备程序
这里其实我分区分的有问题,分一块物理区就可以了,后面和一合并再进行逻辑分区。

注意:共享iSCSI target文件名 例如:iqn.YYYY-mm.<域名的反转写法>:共享名
/etc/tgt/targets.conf 添加如下:

<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda5
    backing-store /dev/vghangao/lvol0
    initiator-address 192.168.40.0/24
    write-cache off 
</target>


<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda6
    backing-store /dev/vghangao/lvol1
    initiator-address 192.168.40.0/24
    write-cache off 
</target>

<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda7
    backing-store /dev/vghangao/lvol2
    initiator-address 192.168.40.0/24
    write-cache off 
</target>

<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda8
    backing-store /dev/vghangao/lvol3
    initiator-address 192.168.40.0/24
    write-cache off 
</target>

<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda9
    backing-store /dev/vghangao/lvol4
    initiator-address 192.168.40.0/24
    write-cache off 
</target>

<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda10
    backing-store /dev/vghangao/lvol5
    initiator-address 192.168.40.0/24
    write-cache off 
</target>

<target iqn.2017-10.com.hangao:server>

    backing-store /dev/vda11
    backing-store /dev/vghangao/lvol6
    initiator-address 192.168.40.0/24
    write-cache off 
</target>

举例: incominguser viscsiuser viscsipasswd
write-cache off

backing-store:虚拟的设备
initiator-address:允许使用的客户端
incominguser:配置通过用户和密码访问
write-cache:不使用缓存,直接访问存储设备

防火墙设置

[root@racsto ~]# /etc/init.d/tgtd restart 重启服务
如果想要开启防火墙则需要开放端口3260
iptables -A INPUT -p tcp -s 192.168.40.0/24 –dport 3260 -j ACCEPT
也可以关闭防火墙

重启服务
[root@racsto ~]# /etc/init.d/tgtd restart
Stopping SCSI target daemon: [ OK ]
Starting SCSI target daemon: [ OK ]

查看当前共享分区

[root@racsto ~]# tgt-admin –show
Target 1: iqn.2017-10.com.hangao:server
System information:
Driver: iscsi
State: ready
I_T nexus information:
I_T nexus: 10
Initiator: iqn.2017-10.com.hangao:server
Connection: 0
IP Address: 192.168.40.30
I_T nexus: 12
Initiator: 192.168.40.32:3260,1 iqn.2017-10.com.hangao:server
Connection: 0
IP Address: 192.168.40.31
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00010000
SCSI SN: beaf10
Size: 0 MB, Block size: 1
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: null
Backing store path: None
Backing store flags:
LUN: 1
Type: disk
SCSI ID: IET 00010001
SCSI SN: beaf11
Size: 1074 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /dev/vghangao/lvol0
Backing store flags:
.。。。。。。(省略)

客户端

安装配置服务

yum -y install iscsi-initiator-utils

iscsi-initiator-utils的主要配置文件
/etc/iscsi/iscsi.conf 主要配置文件,用来连接到iscsi target的设置
/sbin/iscsid 启动iSCSI initiator的主要服务程序
/sbin/iscsiadm 用来管理iSCSI initiator的主要设置程序
/etc/init.d/iscsid 让本机模拟成为iSCSI initiator的主要服务
/etc/init.d/iscsi iscsi启动脚本

[root@rac1 sss]# cat /etc/iscsi/initiatorname.iscsi
#InitiatorName=iqn.1994-05.com.redhat:88b387a62c6e
InitiatorName=iqn.2017-10.com.hangao:server

重启服务
systemctl restart iscsid

检测iscsi target服务端提供的共享存储设备信息

http://www.cnblogs.com/wangzhigang/p/4609392.html

[root@rac1 ~]# iscsiadm -m discovery -t st -p 192.168.40.32
192.168.40.32:3260,1 iqn.2017-10.com.hangao:server

查看检查结果

[root@rac1 sss]# ll -R /var/lib/iscsi/nodes/
/var/lib/iscsi/nodes/:
total 0
drw——- 3 root root 33 Oct 16 16:47 iqn.2017-10.com.hangao:server

/var/lib/iscsi/nodes/iqn.2017-10.com.hangao:server:
total 0
drw——- 2 root root 20 Oct 16 16:47 192.168.40.32,3260,1

/var/lib/iscsi/nodes/iqn.2017-10.com.hangao:server/192.168.40.32,3260,1:
total 4
-rw——- 1 root root 2041 Oct 16 16:47 default

1.发现iscsi存储: iscsiadm -m discovery -t st -p ISCSI_IP
2.查看iscsi发现记录 iscsiadm -m node
3.删除iscsi发现记录 iscsiadm -m node -o delete -T LUN_NAME -p ISCSI_IP
4.登录iscsi存储 iscsiadm -m node -T LUN_NAME -p ISCSI_IP -l
5.登出iscsi存储 iscsiadm -m node -T LUN_NAME -p ISCSI_IP –u
6.iscsiadm -m node -U all

启动iscsi服务
/etc/init.d/iscsi restart
Stopping iscsi: [ OK ]
Starting iscsi: [ OK ]

设置iscsi和iscsid开机启动
chkconfig iscsi on
chkconfig iscsid on

登陆iscsi target

显示target数据
[root@rac1 sss]# iscsiadm -m node
192.168.40.32:3260,1 iqn.2017-10.com.hangao:server

iscsiadm -m node -T iqn.2017-10.com.hangao:server –login

[root@rac1 sss]# fdisk -l

Disk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0000ec41

Device Boot Start End Blocks Id System
/dev/vda1 * 2048 411647 204800 83 Linux
/dev/vda2 411648 8808447 4198400 82 Linux swap / Solaris
/dev/vda3 8808448 20971519 6081536 83 Linux
/dev/vda4 20971520 104857599 41943040 5 Extended
/dev/vda5 20973568 63981567 21504000 83 Linux
/dev/vda6 63983616 104857599 20436992 83 Linux

Disk /dev/sdg: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/sda: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

.。。。。。。(省略)

如果此时想做分区的话,也可以使用fdisk和mkfs命令重新分区并格式化,由于我是用来做RAC的共享磁盘,所以到这里就算结束了,另一个节点做同样操作即可。

其他常用命令

–logout 注销target,但是并没有删除/var/lib/iscsi/nodes内的数据
-o delete 删除后面接的那台target连接信息/var/lib/iscsi/nodes/*
-o update 更新相关信息
-o new 增加一个新的target信息

查看连接
iscsiadm -m node
删除连接
iscsiadm -m node -o delete -T iqn.2017-10.com.hangao:server

重新检测并连接
iscsiadm -m discovery -t sendtargets -p X.X.X.X (IP地址)
iscsiadm -m node -T iqn.2016-09.org.xxxxx:zzzz –login
删除target连接之后,再重新连接,磁盘中的数据不会丢失

你可能感兴趣的:(无敌的linux)