转:在RHEL5系统中搭建iSCSI存储服务器
系统环境:RHEL5.5 [2.6.18-194.el5]
软件环境(使用RHEL5.5光盘自带的RPM包):
服务器:
ClusterStorage/scsi-target-utils-0.0.6.20091205snap.el5_.1.i386.rpm
ClusterStorage/perl-Config-General-2.40-1.el5.noarch.rpm
Server/libibverbs-1.1.3-2.el5.i386.rpm
Server/openib-1.4.1-5.el5.noarch.rpm
Server/librdmacm-1.0.10-1.el5.i386.rpm
Server/libcxgb3-1.2.5-2.el5.i386.rpm
客户端:
Server/iscsi-initiator-utils-6.2.0.871-0.16.el5.i386.rpm
1. scsi-target-utils包文件在RHEL5.0光盘中没有,好像从RHEL5.1开始才有。如果要下载源码包,可以从http://iscsitarget.sourceforge.net获得。
2. libibverbs包的安装依赖于libibverbs-driver,可以通过安装libcxgb3包(或者libmthca、libmlx4、libnes,其中任何一个都可以)获得,否则可能出现报错:
error: Failed dependencies:
libibverbs-driver is needed by libibverbs-1.1.3-2.el5.i386
主机名:host1
IP地址:192.168.4.77
1. 安装scsi-target-utils相关软件包
[root@host1 ~]# mount /dev/cdrom /media/cdrom
[root@host1 ~]# cd /media/cdrom
[root@host1 cdrom]# rpm -ivh ClusterStorage/perl-Config-General-2.40-1.el5.noarch.rpm \
> ClusterStorage/scsi-target-utils-0.0.6.20091205snap.el5_.1.i386.rpm \
> Server/libibverbs-1.1.3-2.el5.i386.rpm \
> Server/openib-1.4.1-5.el5.noarch.rpm \
> Server/librdmacm-1.0.10-1.el5.i386.rpm \
> Server/libcxgb3-1.2.5-2.el5.i386.rpm
1) 启动tgtd服务 (Target Daemon)
[root@host1 ~]# service tgtd start
Starting SCSI target daemon: Starting target framework daemon
[root@host1 ~]# chkconfig --level 35 tgtd on
[root@host1 ~]# tgtadm --lld iscsi --op new --mode target --tid 1 --targetname iqn.2010-
[root@host1 ~]# tgtadm --lld iscsi --op new --mode target --tid 2 --targetname iqn.2010-
[root@host1 ~]# tgtadm --lld iscsi --op show --mode target
Target 1: iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1
System information:
Driver: iscsi
State: ready
I_T nexus information:
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00010000
SCSI SN: beaf10
Size: 0MB
Online: Yes
Removable media: No
Backing store type: rdwr
Backing store path: None
Account information:
ACL information:
Target 2: iqn.2010-09.cn.cnblog.selinux:target2.disk6.host1
System information:
Driver: iscsi
……
3. 划分lun (Logical Unit)
在同一个Target中,可以划分多个lun,每个lun可以使用服务器端的RAID阵列、单个磁盘、分区、LVM或文件来充当。如果使用独立的整个
下面的操作把一个RAID10阵列划分给Target1中的lun 1,把一块单独的SCSI磁盘划分给Target2中的lun 1,分别给不同的客户机使用。
[root@host1 ~]# mdadm --create --verbose /dev/md0 --auto yes --raid-devices=4 --level=10 /dev/sd[b-e]
mdadm: layout defaults to n1
mdadm: chunk size defaults to 64K
mdadm: size set to 8388544K
mdadm: array /dev/md0 started
[root@host1 ~]# ls -l /dev/md0 #//确认新建的阵列设备文件
brw-r----- 1 root disk 9, 0 09-18 08:43 /dev/md0
[root@host1 ~]# mdadm --detail --scan --verbose #//确认阵列信息
ARRAY /dev/md0 level=raid10 num-devices=4 metadata=0.90
UUID=90e8eb47:420a08e7:e9b43c55:2600513
devices=/dev/sdb,/dev/sdc,/dev/sdd,/dev/sde
[root@host1 ~]# cat /proc/mdstat #//查看阵列状态
Personalities : [raid10]
md0 : active raid10 sde[3] sdd[2] sdc[1] sdb[0]
16777088 blocks 64K chunks 2 near-copies [4/4] [UUUU]
unused devices: <none>
[root@host1 ~]# tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 --backing-store /dev/md0
[root@host1 ~]# tgtadm --lld iscsi --op bind --mode target --tid 1 --initiator-address 192.168.4.99
3) 将/dev/sdf划分给Target2中的lun 1,指定客户机192.168.4.88可以使用
[root@host1 ~]# tgtadm --lld iscsi --op new --mode logicalunit --tid 2 --lun 1 --backing-store /dev/sdf
[root@host1 ~]# tgtadm --lld iscsi --op bind --mode target --tid 2 --initiator-address 192.168.4.88
[root@host1 ~]# tgtadm --lld iscsi --op show --mode target
Target 1: iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1
……
LUN: 1 #//Target1中的lun 1信息
Type: disk
SCSI ID: IET 00010001
SCSI SN: beaf11
Size: 17180MB
Online: Yes
Removable media: No
Backing store type: rdwr
Backing store path: /dev/md0
Account information:
ACL information:
192.168.4.99
Target 2: iqn.2010-09.cn.cnblog.selinux:target2.disk6.host1
……
LUN: 1 #//Target2中的lun 1信息
Type: disk
SCSI ID: IET 00020001
SCSI SN: beaf21
Size: 17180MB
Online: Yes
Removable media: No
Backing store type: rdwr
Backing store path: /dev/sdf
Account information:
ACL information:
192.168.4.88
default-driver iscsi
<target iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1>
backing-store /dev/md0
initiator-address 192.168.4.99
</target>
<target iqn.2010-09.cn.cnblog.selinux:target2.disk6.host1>
backing-store /dev/sdf
initiator-address 192.168.4.88
</target>
主机名:host2
IP地址:192.168.4.99
主机名:host3
IP地址:192.168.4.88
—— 存储客户端的配置使用基本类似,以下仅以host2为例。
[root@host2 ~]# cd /media/cdrom/Server
[root@host2 Server]# rpm -ivh iscsi-initiator-utils-6.2.0.871-0.16.el5.i386.rpm
[root@host2 ~]# service iscsi start
[root@host2 ~]# iscsiadm --mode discovery --type sendtargets --portal 192.168.4.77
192.168.4.77:3260,1 iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1
Logging in to [iface:default, target:iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1, portal:192.168.4.77,3260]
Login to [iface:default, target:iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1, portal:192.168.4.77,3260]: successful
……
[1:0:0:0] storage IET Controller 0001 -
[1:0:0:1] disk IET VIRUAL-DISK 0001 /dev/sdb
……
/dev/sdb: 16777088
total: 33554304 blocks
若Target端分配的lun是独立的磁盘,且已包含有分区和文件系统则在initiator端无需再次分区、格式化。
[root@host2 ~]# partprobe /dev/sdb
[root@host2 ~]# mkfs -t ext3 /dev/sdb1
[root@host2 ~]# mkdir /media/iscsi
[root@host2 ~]# vi /etc/fstab
……
/dev/sdb1 /media/iscsi ext3 _netdev 0 0
[root@host2 ~]# mount /media/iscsi
[root@host2 ~]# mount | grep iscsi #//查看挂载情况
/dev/sdb1 on /media/iscsi type ext3 (rw,_netdev)
[root@host2 ~]# cat iqn.2010-09.cn.cnblog.selinux\:target1.raid10.host1/192.169.4.77\,3260\,1/default
# BEGIN RECORD 2.0-871
node.name = iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1
node.tpgt = 1
node.startup = automatic
iface.iscsi_ifacename = default
iface.transport_name = tcp
node.discovery_address= 192.168.4.77
node.discovery_port = 3260
node.discovery_type = send_targets
……
三、iSCSI存储服务器的用户验证 (可选)
1) 方法一:
[root@host1 ~]# tgtadm --lld iscsi --op new --mode account --user tsengyia --password pwd@123
[root@host1 ~]# tgtadm --lld iscsi --op bind --mode account --tid 1 --user tsengyia
[root@host1 ~]# tgtadm --lld iscsi --op show --mode target
Target 1: iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1 #//确认Target1的认证用户信息
……
Account information:
tsengyia
ACL information:
192.168.4.99
[root@host1 ~]# vi /etc/tgt/targets.conf
default-driver iscsi
<target iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1>
backing-store /dev/md0
incominguser tsengyia pwd@123
initiator-address 192.168.4.99
</target>
……
[root@host1 ~]# service tgtd restart #//注意先将所有Initiator端断开连接
2. 客户端(Intiator)设置,以Host2中为例
[root@host2 ~]# vi iqn.2010-09.cn.cnblog.selinux\:target1.raid10.host1/192.169.4.77\,3260\,1/default
# BEGIN RECORD 2.0-871
node.name = iqn.2010-09.cn.cnblog.selinux:target1.raid10.host1
node.tpgt = 1
node.startup = automatic
iface.iscsi_ifacename = default
iface.transport_name = tcp
node.discovery_address= 192.168.4.77
node.discovery_port = 3260
node.discovery_type = send_targets
……
node.session.auth.authmethod = CHAP #//默认为None,不使用认证
node.session.auth.username = tsengyia
node.session.auth.password = pwd@123
……
[root@host2 ~]# service iscsi restart
转:在RHEL5系统中搭建iSCSI存储服务器相关推荐
- 服务器w8系统如何重装,如何在Win8系统中搭建Web服务器
对于网站开始人员来说,搭建WEB服务器是实现开发的第一步,那么在Win8系统中怎么搭建Web服务器呢?下面是学习啦小编给大家整理的一些有关在Win8系统中搭建Web服务器的方法,希望对大家有帮助! 在 ...
- 记录在Win7系统中搭建IIS服务器过程
在Win7系统中搭建IIS服务器,提示"出现错误.并非所有的功能被成功更改" 编者按: 1. 做成一件事的结果是重要(能够达成预期目标)的: 2. 针对做一件事过程中出现的一系列问 ...
- 在ubuntu系统中搭建笔记文档(typora+Picgo+Gitee)(全程记录)
在ubuntu系统中搭建笔记文档(typora+Picgo+Gitee)(全程记录) 系统配置:ubuntu18.04 1.安装typora typora官网 Typora常用快捷键(翻译) 命令行中 ...
- Windows系统中搭建nginx文件服务器
如何在Windows系统中搭建nginx文件服务器 文件路径 E:\file\pcc_bbs_files 下载安装包:http://nginx.org/download/nginx-1.9.15.zi ...
- MAC系统中搭建Spark大数据平台(包括Scala)
MAC系统中搭建Spark大数据平台(包括Scala) 总体介绍: 大家Spark大数据平台,包括三部分内容:JDK,Scala,Spark 这三者是依次依赖的关系,Spark依赖于Scala环境(S ...
- linux python开发环境_如何在Linux系统中搭建Python编程环境
1 在大多数的Linux系统中,基本上都默认安装了Python,也就是说,在Linux的系统中基本上是不需要安装什么软件,就可以使用Python. 下面以ubuntu操作系统为例,看看如何在Linux ...
- 在Windows系统中搭建PHP环境,PHP环境搭建-Windows系统下PHP环境搭建
1.PHP环境搭建的前提是 Apache HTTP Server (Apache 服务器)已经安装部署成功,并可以正常访问到服务器的主页面.Apache HTTP Server 的安装部署已经在上一篇 ...
- Windows系统中搭建Go语言开发环境详解
目录 1.Go语言简介 2.安装Git 3.Go 工具链(编译器)安装 3.1.环境变量GOROOT 3.2.环境变量GOPATH 3.3.Go常用命令 4.包管理 4.1.go module 4.2 ...
- Windows系统中搭建Python编译环境
Windows系统并非都默认安装了Python,因此你可能需要下载并安装它,再下载并安装一个 文本编辑器(用之前的PyCham: 点击打开链接). 1. 安装Python 首先,检查你的系统是否安装了 ...
最新文章
- Python面试必备—分布式爬虫scrapy+redis解析
- CRM成功实施如何化繁为简
- Java 设计模式之《观察者模式》
- java切换系统输入法_java - 关于Android输入法切换的问题
- PL/SQL在win7/win8 x64位下使用客户端连接oracle
- [原]Java程序员的JavaScript学习笔记(12——jQuery-扩展选择器)
- 项目验收文档合并技巧
- python面试题之介绍一下Python中webbrowser的用法
- SDL2源代码分析5:更新纹理(SDL_UpdateTexture())
- NET委托:一个C#睡前故事
- Spring MVC-学习笔记(5)spring MVC的文件上传、下载、拦截器
- 计算机界面视频录制软件,怎么进行电脑界面上的画面录制,推荐下好用的电脑录屏软件呗...
- python 获取英文人名翻译
- 大数据比赛笔记(一)基本环境配置
- HTML表格边框空隙
- 从 Codable 到 Swift 元编程
- POJ-1436Horizontally Visible Segments
- 基于fastdfs-zyc搭建分布式监控系统
- DevC++实现代码高亮复制进word
- 什么是 java 序列化?什么情况下需要序列化?
热门文章
- WPF 中的 Uri 地址的不同写法
- exception javax.crypto.BadPaddingException: Given final block not properly padded
- python面向对象:多态与多态性
- 扩展Snackbar 使其支持居中显示
- 51Nod 1013 3的幂的和 快速幂 | 乘法逆元 | 递归求和公式
- 详细解读神经网络十大误解,再也不会弄错它的工作原理
- Js里面IF(var)表示什么意思?js中if的写法、含义
- 工作中常用到的一些方法集合
- XCTF-MISC-新手区-如来十三掌
- (四)数据结构之“队列”