CentOS 6配置iSCSI网络存储

转载 2015年07月08日 14:39:01

iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的、可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。iSCSI技术是一种新储存技术,该技术是将现有SCSI接口与以太网络(Ethernet)技术结合,使服务器可与使用IP网络的储存装置互相交换资料。

iSCSI是一种基于TCP/IP 的协议,用来建立和管理IP存储设备、主机和客户机等之间的相互连接,并创建存储区域网络(SAN)。SAN 使得SCSI 协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block-level)在多个数据存储网络间进行。SCSI 结构基于C/S模式,其通常应用环境是:设备互相靠近,并且这些设备由SCSI 总线连接。

iSCSI 的主要功能是在TCP/IP 网络上的主机系统(启动器 initiator)和存储设备(目标器 target)之间进行大量数据的封装和可靠传输过程。

完整的iSCSI系统的拓扑结构如下:

iscsi

二、实验环境

操作系统:CentOS release 6.3 (Final)

iSCSI Target:192.168.1.21 / scsi-target-utils-1.0.24-12.el6_5.i686

iSCSI Initiator:192.168.1.22 / iscsi-initiator-utils-6.2.0.873-10.el6.i686

防火墙已关闭/iptables: Firewall is not running.

SELINUX=disabled

三、准备工作

iSCSI可分享的设备类型有很多,包括镜像文件(*.img)、分区(partition)、物理硬盘、raid设备、逻辑卷等,下面我们将准备其中的几种来测试,其他类型大家可以自行测试。

3.1 模拟镜像

在iSCSI Target的/srv目录下创建一个200M大小的镜像文件。

# mkdir /srv/iscsi

# dd if=/dev/zero of=/srv/iscsi/disk1.img bs=1M count=200

# ll -lh /srv/iscsi/disk1.img

1

3.2 建立分区

创建一个500M大小的分区/dev/sdb1.

# fdisk /dev/sdb

2

3.3 创建逻辑卷

创建一个800M大小的LV.

# pvcreate /dev/sdc

# vgcreate vg0 /dev/sdc

# lvcreate -L 800M -n lv1 vg0

3

四、配置iSCSI Target

4.1 安装tgt

CentOS 自带了scsi-target-utils 软件,我们使用该软件进行target设置。

# yum -y install scsi-target-utils

 安装后的文件包括(通过命令rpm -ql scsi-target-utils查看):

       /etc/rc.d/init.d/tgtd               --tgt管理服务守护进程
       /etc/sysconfig/tgtd
       /etc/tgt/targets.conf               --tgt配置文件
       /usr/sbin/tgt-admin                 --Linux SCSI Target 配置工具
       /usr/sbin/tgt-setup-lun           --Linux SCSI Target 建立Target工具
                                            是tgtadm管理工具的子集,主要完成
                                            Target创建,增加设备到Target已经
                                            控制哪些客户端可以访问Target
       /usr/sbin/tgtadm                   --Linux SCSI Target 管理工具
       /usr/sbin/tgtd                     --Linux SCSI Target 主程序
       /usr/sbin/tgtimg                   --Linux SCSI Target 映像文件管理工具
       /usr/share/doc/scsi-target-utils-1.0.14
       /usr/share/doc/scsi-target-utils-1.0.14/README
       /usr/share/doc/scsi-target-utils-1.0.14/README.iscsi   --比较好的配置说明文件
       /usr/share/doc/scsi-target-utils-1.0.14/README.iser
       /usr/share/doc/scsi-target-utils-1.0.14/README.lu_configuration
       /usr/share/doc/scsi-target-utils-1.0.14/README.mmc
       /usr/share/man/man8/tgt-admin.8.gz
       /usr/share/man/man8/tgt-setup-lun.8.gz
       /usr/share/man/man8/tgtadm.8.gz


4.2 配置tgt

在安装完tgt软件后,需要进行配置,主要包括建立target,为target添加lun,设置访问target的控制策略等。

在SCSI协议中,目标器(target)是基本的访问单元,一个服务器或专业存储设备可以提供 一个或多个目标器(target),目标器target内可以包括多个LUN,LUN的概念比较复杂,在SCSI规范中,LUN代表物理外围设备和执行SCSI命令所需的逻辑电路,在这里可以将其理解为基本的存储单元,即从存储设备中分配的具有明确大小的存储,划分LUN 一般由存储设备提供的管理程序完成,LUN与存储采用的RAID级别无关。建立target包括两种方法,基于命令方式和基于配置文件方式,其中配置文件为/etc/tgt/targets.conf。基于命令的方式采用的命令为tgtadm。

tgt的主配置文件为/etc/tgt/targets.conf,下面我们来设置改文件。

在该文件最后新增以下设置:

复制代码
<target iqn.2014-07.dev.iscsi-target:iscsidisk> 
    backing-store /srv/iscsi/disk1.img 
    backing-store /dev/sdb1 
    backing-store /dev/vg0/lv1 
    backing-store /dev/sdd 
</target>
复制代码

说明:

iqn = iSCSI Qualified Name

iSCSI target的名称规则如下:

iqn.2014-07.dev.iscsi-target:iscsidisk

iqn.年份-月份.域名反写.设备识别

每个在同一个target上的backing-store 称为逻辑单元号(Logical Unit Number,LUN),这个实验中有4个LUN。

其他高级设置如initiator-address、incominguser,大家自行查资料。

4.3 启动iSCSI target

# /etc/init.d/tgtd start

# chkconfig tgtd on

# netstat -tulnp|grep tgt

4

4.4 查看iSCSI target

# tgt-admin –show

5

6

LUN0 是控制器,可以看到各个LUN的大小和磁盘路径。

至此,iSCSI Target 设定完毕。

五、配置iSCSI Initiator

5.1 安装initiator

# yum -y install iscsi-initiator-utils

5.2 设置开机启动

# chkconfig iscsid on

# chkconfig iscsi on

5.3 配置文档

initiator的配置文档位于/etc/iscsi/,该目录下有两个文件,initiatorname.iscsi 和iscsid.conf,

其中iscsid.conf 是其配置文件,initiatorname.iscsi 是标记了initiator的名称,它的默认名称是InitiatorName=iqn.1994-05.com.redhat:b45be5af6021,我们可以根据实际情况进行更改,比较好区分,这里我们修改为InitiatorName=iqn.2014-07.dev.iscsi-initiator:initiator。

8

因为在target里面,我们并没有设置访问限制,所以iscsid.conf 文件并不需要修改。

5.4 侦测target

如果我们事先不知道目标主机的target名称,我们就需要进行侦测,下面来讲解。

# iscsiadm -m discovery -t sendtargets -p 192.168.1.21

9

说明:

-m discovery  //侦测target
-t sendtargets  //通过iscsi协议
-p IP:port  //指定target的IP和port,不写port的话,默认为3260

5.5 查看nodes

iscsiadm 侦测到的结果会写入/var/lib/iscsi/nodes/ 中,因此只需启动/etc/init.d/iscsi 就能够在下次开机时,自动连接到正确的target了。

# ll -R /var/lib/iscsi/nodes/

10

侦测信息都写入了/var/lib/iscsi/nodes/iqn.2014-07.dev.iscsi-target:iscsidisk/192.168.1.21,3260,1/default 文件中了。

5.6 连接target

查看目前系统上面所有的target

# iscsiadm -m node

登录target

# iscsiadm -m node -T iqn.2014-07.dev.iscsi-target:iscsidisk –login

11

5.7 查看磁盘情况

# fdisk –l

12

可以看到,initiator 上面多了四块硬盘,大小和target上的LUN一致。这时你就可以像使用本地磁盘一样使用这些iSCSI设备了,下面我们来测试。

5.8 将/dev/sdb 和/dev/sdc 创建成LV挂载使用

创建LV

# pvcreate /dev/sdb /dev/sdc

# vgcreate iscsi /dev/sdb /dev/sdc

# lvcreate -L 1G -n iscsilv iscsi

14

格式化并挂载

# mkfs.ext4 /dev/iscsi/iscsilv

# mkdir /mnt/iscsi

# vi /etc/fstab

15

创建测试文件

16

挂载成功,创建测试文件成功。

5.9 重启测试

17

测试成功。

5.10 查看target信息

# tgt-admin –show

13

可以看到,此时使用该target的initiator 为iqn.2014-07.dev.iscsi-initiator:initiator,也就是我们上面更改的initiatorname,IP地址为192.168.1.22。

至此,iSCSI 置完毕。



参考:http://www.cnblogs.com/mchina/p/centos-iscsi-network-storage.html

相关文章推荐

centos7搭建iscsi存储

[1] Install scsi-target-utils.# install from EPEL [root@dlp ~]# yum --enablerepo=epel -y install scs...

CentOS 6.5 安装使用iSCSI-Target

http://www.ipython.me/centos/centos-6-5-install-iscsi-target.html iSCSI Target软件结构 Cen...

PXE 安装WinXP,Win7,Linux Serial 小记

一。PXE安装WinXP 1.PXE安装WinXP准备:  Samba Server / TFTP Server /  KIS Server 2.samba服务不能启动  首先检测配置文件是否正确 t...

CentOS客户端加载ISCSI磁盘

[客户端机器iscsi-initiator] yum -y install iscsi-initiator-utils #安装iscsi initiator客户端程序,如果用centos系统自带安装...

CentOS 7.x 下配置iSCSI网络存储

一、iSCSI简介 iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的、可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议...

Linux下手动安装最新Git

Ubuntu12.04中默认没有安装Git。需要自行安装。 1. 安装Git 1.1 Ubuntu12.04下 可以使用apt-get方式安装,也可以下载源代码安装【1】,我们这里使用apt-gi...

centos6.5通过devstack安装openstack juno

提示没有python-mox,下载安装mox:http://rpm.pbone.net/index.php3/stat/4/idpl/15288633/dir/redhat_el_6/com/pyth...

Openstack : 2、devstack创建虚拟主机

devstack创建虚拟主机步骤 devstack环境:是通过virt-manager安装的centos7minimal环境下的ocata版本的devstack。 概览:分为启动devstack和在d...

Ceilometr: 3、Liberty版本的Ceilometer表结构介绍

Liberty版本的Ceilometer表结构分析 1 概览 数据库:mongodb 包含的表: alarm :报警表 alarm_history:报警历史表 dummyData:? even...

Openstack :1、centos7-minamal虚拟机安装devstack

安装环境:centos系统下通过virt-manager安装centos7-minamal虚拟机安装devstack 参考了这篇博客:http://www.chenshake.com/openstac...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)