- 浏览: 1010945 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (826)
- 硬件 (8)
- 软件 (24)
- 软件工程 (34)
- JAVA (229)
- C/C++/C# (77)
- JavaScript (8)
- PHP (1)
- Ruby (3)
- MySQL (14)
- 数据库 (19)
- 心情记事 (12)
- 团队管理 (19)
- Hadoop (1)
- spring (22)
- mybatis(ibatis) (7)
- tomcat (16)
- velocity (0)
- 系统架构 (6)
- JMX (8)
- proxool (1)
- 开发工具 (16)
- python (10)
- JVM (27)
- servlet (5)
- JMS (26)
- ant (2)
- 设计模式 (5)
- 智力题 (2)
- 面试题收集 (1)
- 孙子兵法 (16)
- 测试 (1)
- 数据结构 (7)
- 算法 (22)
- Android (11)
- 汽车驾驶 (1)
- lucene (1)
- memcache (12)
- 技术架构 (7)
- OTP-Erlang (7)
- memcached (17)
- redis (20)
- 浏览器插件 (3)
- sqlite (3)
- Heritrix (9)
- Java线程 (1)
- scala (0)
- Mina (6)
- 汇编 (2)
- Netty (15)
- libevent (0)
- CentOS (12)
- mongod (5)
- mac os (0)
最新评论
-
kingasdfg:
你这里面存在一个错误添加多个任务 应该是这样的 /** * ...
Quartz的任务的临时启动和暂停和恢复【转】 -
kyzeng:
纠正一个错误,long型对应的符号是J,不是L。
Jni中C++和Java的参数传递 -
zhaohaolin:
抱歉,兄弟,只是留下作记录,方便学习,如果觉得资料不好,可以到 ...
netty的个人使用心得【转】 -
cccoooccooco:
谢谢!自己一直以为虚机得使用网线才可以与主机连接呢。。
主机网卡无网线连接与虚拟机通信 -
yuqilin001:
要转别人的东西,请转清楚点嘛,少了这么多类,误人子弟
netty的个人使用心得【转】
本文重点介绍如何构建一个PC构架的iSCSI存储系统,这里我们选择一个普通的、性能优良的、可支持多块磁盘的PC服务器作为iSCSI target,并且选择一个成熟稳定的iSCSI target软件iscsitarget,基本配置环境如表1所示:
表1
这里将Target主机第三块硬盘(硬盘标识为/dev/sdc)作为iSCSI共享磁盘,硬盘大小为10G,分别共享给一台windows主机和一台Linux主机,基本结构如图1所示:
图1
下面开始详细介绍iSCSI网络存储的搭建过程。
一、安装iSCSI target软件
安装iscsitarget软件是在Target主机上进行的,即上面设定的192.168.12.246主机,这里我们选择的target软件是iscsitarget,读者可以从http://iscsitarget.sourceforge.net
下载相应的版本,这里下载的是iscsitarget-1.4.20.1.tar.gz,接着开始进行编译安装:
[root@iscsi-target iscsi]#tar -xzvf iscsitarget-1.4.20.1.tar.gz
[root@iscsi-target iscsi]#cd iscsitarget-1.4.20.1
[root@iscsi-target iscsitarget-1.4.20.1]#make
[root@iscsi-target iscsitarget-1.4.20.1]#make install
Iscsitarget安装完毕后,会创建/etc/iet/目录,此目录下有Iscsitarget的相关配置文件,接着就可以启动Iscsitarget服务了,启动或关闭Iscsitarget服务的命令如下:
[root@iscsi-target iscsi]# service iscsi-target
Usage: /etc/init.d/iscsi-target {start|stop|restart|condrestart|status}
如果要让iscsi-target服务开机自动运行,需执行如下操作:
[root@iscsi-target iscsi]#chkconfig --level 35 iscsi-target on
到此为止,iscsitarget安装完成。
二、配置一个简单的iSCSI target
iSCSI Enterprise Target的主配置文件为/etc/iet/ietd.conf,此文件中的选项默认全部被注释掉了,有需要用到这些选项时,再将注释去掉即可。
打开ietd.conf文件,首先找到类似如下行:
#Target iqn.2001-04.com.example:storage.disk2.sys1.xyz
此选项表示该iSCSI Target的命名,先将前面的“#”号去掉, Target的命名在同一子网内应该是唯一的,标准命名方式为:
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。
接下来,就是要设定 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”,主要用来对一个磁盘进行存储共享。读者可以根据自己情况将Path改为需要共享的存储分区的设备标识。这里假定共享的设备
标识为/dev/sdb。
至此,一个简单的iSCSI Target已经配置完毕了,最后启动iscsi-target服务:
[root@iscsi-target iscsi]# service iscsi-target start
三、在windows上配置iSCSI Initiator
下面的操作是在Initiator的windows主机上进行,即IP为192.168.12.136主机。
微软对iSCSI Initiator的支持相当完备,读者可以免费从微软网站获得iSCSI Initiator软件,网址是http://www.microsoft.com/WindowsServer2003/technologies/storage/iscsi/default.mspx
,本章实例下载的版本是Initiator-2.08-build3825-x86fre.exe,接下来开始说明如何让windows连接iSCSI Target。
安
装完成iSCSI Initiator后,在桌面上会发现启动图标,启动Microsoft iSCSI
Initiator后,选择第二个分页标签“Discovery”,然后在“Target Portals”部分点击“Add”按钮,跳出“Add
Target Portal”窗口,如图2所示:
图2
在此窗口下填写iSCSI Target的ip地址和端口,iSCSI Target地址就是上面设定的Target主机的地址,iSCSI Target的端口默认是3260,除非有特殊设定,填写完成,点击OK按钮。
接下来,选择第三个分页标签“Targets”,如图3所示,可以看到,iSCSI Initiator已经检测到了iSCSI Target的名称,但是此时的iSCSI Target还处于“inactive”状态,点击下方“Log On”按钮,然后弹出“Log On to Target”窗口,接着按下“OK”按钮来激活Target,此时iSCSI Target已经从“inactive”状态变为“Connected”状态。如图4和图5所示:
图3
图4
图5
到此为止,windows系统已经识别了iSCSI Target提供的共享磁盘分区,通过windows的磁盘管理器可以看到新增加的磁盘分区,如图6所示:
图6
现在就可以使用windows的磁盘管理功能对这块共享磁盘进行分区、格式化以及挂载等操作了。
四、在Linux上配置iSCSI Initiator
下面的操作是在Initiator的Linux主机上进行,即IP为192.168.12.26主机。
1 安装Linux版本iSCSI Initiator
现
在的主流Linux发行版本默认都自带了iSCSI
Initiator,即Open-iSCSI,如果系统没有安装,只需通过光盘找到iscsi-initiator-utils-
6.2.0.871-0.16.el5.i386.rpm包,通过rpm方式安装即可,当然也可以通过yum进行自动安装,操作如下:
[root@ Initiator iscsi]#yum install iscsi*
安装完成后,会生成/etc/iscsi主程序配置目录,其它相关文件的安装位置为:
/etc/iscsi/iscsid.conf
/etc/rc.d/init.d/iscsi
/etc/rc.d/init.d/iscsid
/sbin/iscsi-iname
/sbin/iscsiadm
/sbin/iscsid
/sbin/iscsistart
/var/lib/iscsi
/var/lib/iscsi/ifaces
/var/lib/iscsi/isns
/var/lib/iscsi/nodes
/var/lib/iscsi/send_targets
/var/lib/iscsi/slp
/var/lib/iscsi/static
/var/lock/iscsi
接下来需要启动Initiator服务,操作如下:
[root@ Initiator iscsi]# service iscsi start
2 iSCSI Initiator目录功能介绍
? /sbin/iscsiadm命令
在iSCSI
Initiator安装完成后,会生成/sbin/iscsiadm命令,此命令是用来管理(更新、删除、插入、查询)iSCSI配置数据库文件的命令行
工具,用户能够用它对iSCSI nodes、sessions、connections和discovery records进行一系列的操作。
? /var/lib/iscsi/send_targets目录
在此目录下,会生成一个或多个以iSCSI存储服务器IP和端口命名的文件夹,文件名为“iSCSI Target IP,端口号”(例如“192.168.12.246,3260”)。
? /var/lib/iscsi/nodes目录
在
此目录下,会生成一个或多个以iSCSI存储服务器上的Target名命名的文件夹,在该文件夹下有一个文件名为“iSCSI portal
IP,端口号” (例如“192.168.12.246,3260”)的配置参数文件,该文件是iSCSI initiator登录iSCSI
target时要使用的参数,而这些参数的设置是从/etc/iscsi/iscsi.conf中的参数继承而来的,可以通过iscsiadm命令对某一
个参数文件进行更改。
3 在linux上执行iSCSI Target发现
可以使用如下指令向 iSCSI Target 主机查询划分了哪些lun:
iscsiadm -m discovery --type sendtargets --portal IP
或者
iscsiadm -m discovery -t sendtargets -p IP
例如:
[root@ Initiator iscsi ]# iscsiadm -m discovery -t sendtargets -p 192.168.12.246:3260
192.168.12.246:3260,1 iqn.2001-04.com.example:storage.disk2.sys1.xyz
可
以看出,“iqn.2001-04.com.example:storage.disk2.sys1.xyz”就是iSCSI
Target的名称。由于在配置iSCSI Target时,没有做任何限制,因此所有的客户端主机都允许连接iSCSI Target共享出来的磁盘。
需要说明的是:当成功执行一次Target发现后,iSCSI Initiator就会将查询纪录写到/var/lib/iscsi/send_targets对应目录下。因此,对于Target发现只需执行一次即可。
接着通过iscsiadm指令与iSCSI Target 主机建立连接,也就是登录iSCSI Target:
iscsiadm -m node -T <target-name> -p <ip-address>:<port> --login
或者
iscsiadm -m node -T [target-name] -p [ip-address] -l
这里的“-T”后面跟target名称,“ip-address”是target主机的IP地址,“port”是target主机的端口号,默认是3260。
例如:
[root@ Initiator iscsi ]#iscsiadm -m node -T iqn.2001-04.com.example:storage.disk2.sys1.xyz -p 192.168.12.246 -l
Logging in to [iface: default, target: iqn.2001-04.com.example:storage.disk2.sys1.xyz, portal: 192.168.12.246,3260]
Login to [iface: default, target: iqn.2001-04.com.example:storage.disk2.sys1.xyz, portal: 192.168.12.246,3260]: successful
如果有多个Target主机时,可以通过如下命令一次登录所有的targets:
[root@ Initiator iscsi ]#iscsiadm -m node --loginall=all
这
里需要说明的是,通过执行Target发现操作,其实已经与iSCSI Target
主机建立了连接,此时如果再次执行iscsiadm命令与Target 主机建立连接的话,会提示“iscsiadm: initiator
reported error (15 - already exists)”错误,所以需要先断开与iSCSI Target
主机的连接,执行如下指令,断开Initiator 与iSCSI Target 主机的连接:
iscsiadm -m node -T [target-name] -p [ip-address] -u
例如:
[root@ Initiator iscsi ]#iscsiadm -m node -T iqn.2001-04.com.example:storage.disk2.sys1.xyz -p 192.168.12.246 -u
Logging out of session [sid: 2, target: iqn.2001-04.com.example:storage.disk2.sys1.xyz, portal: 192.168.12.246,3260]
Logout of [sid: 2, target: iqn.2001-04.com.example:storage.disk2.sys1.xyz, portal: 192.168.12.246,3260]: successful
当iSCSI Initiator与iSCSI Target连接成功后,还可以通过如下命令查看iSCSI session信息:
[root@ Initiator iscsi ]#iscsiadm -m session –i
例如:
[root@ Initiator iscsi ]#iscsiadm -m session –i
iSCSI Transport Class version 2.0-871
version 2.0-871
Target: iqn.2001-04.com.example:storage.disk2.sys1.xyz
Current Portal: 192.168.12.246:3260,1
Persistent Portal: 192.168.12.246:3260,1
**********
Interface:
**********
Iface Name: default
Iface Transport: tcp
Iface Initiatorname: iqn.1994-05.com.RedHat
:fd37f211e3a
Iface IPaddress: 192.168.12.26
Iface HWaddress: <empty>
Iface Netdev: <empty>
SID: 1
iSCSI Connection State: LOGGED IN
iSCSI Session State: LOGGED_IN
Internal iscsid Session State: NO CHANGE
************************
Negotiated iSCSI params:
************************
HeaderDigest: None
DataDigest: None
MaxRecvDataSegmentLength: 262144
MaxXmitDataSegmentLength: 8192
FirstBurstLength: 65536
MaxBurstLength: 262144
ImmediateData: Yes
InitialR2T: Yes
MaxOutstandingR2T: 1
************************
Attached SCSI devices:
************************
Host Number: 32 State: running
scsi32 Channel 00 Id 0 Lun: 0
Attached scsi disk sdb State: running
4 管理共享磁盘
首先通过fdisk命令查看共享过来的磁盘标识,也可以通过dmesg命令查看系统是否认到了共享的iSCSI磁盘,操作如下:
[root@ Initiator iscsi ]#fdisk -l
Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 38913 312464250 8e Linux LVM
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 609 4891761 83 Linux
/dev/sdb2 610 1305 5590620 83 Linux
从fdisk输出可知,iscsi共享磁盘标识为/dev/sdb,大小10.7G,下面就可以通过fdisk命令对这个磁盘进行重新分区、格式化、创建文件系统等操作了。
发表评论
-
主机网卡无网线连接与虚拟机通信
2012-05-04 15:38 1555环 境: 宿主主机windows xp 虚拟机centos4. ... -
Nginx 简单的负载均衡配置示例[转]
2012-02-28 11:52 983[ 2007-10-29 20:50 | by 张 ... -
iSCSI存储技术全攻略答疑
2011-06-16 22:49 1027今天发现存储人论坛 上的网友robinson针对我的文章 ... -
iSCSI存储技术全攻略
2011-06-16 22:47 1163什么是iSCSI iSCSI (iSCSI ... -
Squid 3的多域名加速基本配置
2011-06-16 22:12 1342Squid是一种在Linux系统下使用的优秀的代理服务器软 ... -
利用ISCSI存储技术构建IP存储网络(安全篇)
2011-06-16 21:43 1330在前面的文章中,介绍了如何搭建一个简单的iSCSI网络存储 ... -
利用ISCSI存储技术构建IP存储网络(概念篇)
2011-06-16 21:42 1252一、iSCSI的概念 iSCSI ...
相关推荐
IP SAN是基于TCP/IP网络的存储区域网络,它允许使用标准的以太网硬件设备来构建SAN。IP SAN配置实战包括在服务器端安装和配置目标(target)服务,在客户端配置发起者(initiator)服务,并确保服务器和服务能够通过...
- **方案概述**:结合前端的iSCSI技术与后端的FC网络,构建一个既具备良好可扩展性又能满足高性能需求的存储系统。 - **架构特点**:前端采用标准以太网技术,后端采用FC网络,实现数据高效传输。 #### 五、磁盘...
构建融合存储网络的目标是整合各种存储技术和网络协议,创建一个统一的、高效的存储资源池。这可以通过FCoE、IP SAN和NAS的混合使用来实现,以优化不同应用的工作负载需求。同时,采用虚拟化技术,如vSAN,可以...
同时,理解TCP/IP网络原理也是必不可少的,因为iSCSI依赖于IP网络。 3. 存储虚拟化:此部分涵盖存储池、LUN(逻辑单元号)虚拟化和卷管理等概念。通过虚拟化,可以实现存储资源的集中管理和高效利用,提高存储利用...
由国内著名技术社区联合推荐的2012年IT技术力作:《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》,即将上架发行,此书从Web应用、数据备份与恢复、网络存储应用、运维监控与性能优化、集群高级应用等...
其中,“IP与FC的融合”是一个关键的话题,旨在通过结合两种不同的网络技术,即IP(Internet Protocol)网络和FC(Fiber Channel)网络,来解决存储扩展性和效率的问题。 #### 二、IP与FC融合的背景与意义 1. **FC...
FC是SAN传统上广泛使用的协议,提供高带宽和低延迟,而iSCSI则利用TCP/IP协议,使得存储设备可以通过现有IP网络进行访问,降低了部署成本。 其次,手册可能会涵盖SAN的关键组件,如交换机、HBA(Host Bus Adapter)...
在Windows平台上配置ISCSI存储包括添加角色和功能,以及配置ISCSI链接,这是为vSphere提供存储资源的一个重要环节。 五、安装vCenter Server 6.7 for Windows 手册中介绍了如何安装vCenter Server 6.7,包括自带...
3. **共享存储**:集群节点间需有可靠的共享存储解决方案,如光纤通道、iSCSI或网络文件系统(NAS),用于存放虚拟机文件。 4. **网络环境**:至少需要两个网络接口,一个用于客户机通信(前端网络),另一个用于...
3. 存储网络构建:学习如何规划和配置存储网络,包括FC(Fibre Channel)SAN、IP SAN(基于iSCSI)和NAS(Network Attached Storage)环境。 4. 存储解决方案设计:涉及存储资源分配策略、存储虚拟化、数据迁移和...
### 实战完美搭建Oracle 11gR2_RAC+ASM+DG(最新精编版) #### 概述 ...此外,该实验还涉及到了网络配置、存储管理等多个方面的知识,对于提高IT专业人员的技术能力和实践经验都具有非常重要的意义。
iSCSI和NFS是常见的虚拟化存储协议,iSCSI用于IP网络上的存储区域网络(SAN),NFS则是基于文件系统的共享存储。这部分内容会指导读者如何设置和管理这些存储解决方案,以满足虚拟机的存储需求。 7. **高可用性HA...
深刻理解:OpenStack的设计原理,体系构架和关键技术,构建一个OpenStack环境所需的核心组件以及核心组件间的联系; 全面掌握:如何通过不同的部署工具比如packstack,部署OpenStack环境;如何通过单独部署OpenStack...
共享存储设备是必要的,如SAN(存储区域网络)或NAS(网络附加存储)。 2. **操作系统安装**:在每个节点上安装Windows Server 2003,并确保安装了集群服务角色。 3. **网络配置**:为每个节点配置独立的网络接口...
《freeNAS培训视频教程》是一套全面讲解freeNAS操作系统的在线教学资源,旨在帮助学习者掌握如何使用和...通过系统的学习,你将能够熟练地运用freeNAS构建自己的家庭或企业级存储解决方案,保障数据的安全和高效利用。
该系列产品提供高性能、高可用性和高级数据服务,支持FC (Fibre Channel)、FCoE (Fibre Channel over Ethernet) 和iSCSI等多种协议,旨在构建灵活、可靠且安全的存储网络基础设施。 文档可能包含以下关键知识点: ...
- **iSCSI**:介绍如何使用iSCSI技术构建存储区域网络(SAN),实现远程磁盘访问。 - **虚拟化技术**:了解KVM、Xen等虚拟化平台,搭建云环境。 **5.2 安全防护** - **加密通信**:为vsftpd等服务添加SSL/TLS支持,...
深刻理解:OpenStack的设计原理,体系构架和关键技术,构建一个OpenStack环境所需的核心组件以及核心组件间的联系; 全面掌握:如何通过不同的部署工具比如packstack,部署OpenStack环境;如何通过单独部署OpenStack...
本自学文档是针对想要深入理解并掌握Kubernetes技术的个人所设计,旨在帮助你从零开始构建对k8s的全面认知。 一、Kubernetes基础知识 Kubernetes是由Google开源的一种容器编排系统,现由Cloud Native Computing ...