最近在学习存储,今天做一个实验就是Win7 + CentOS + Openfiler + VMWare搭建iSCSI存储环境。
首先介绍一下,Openfiler 由rPath Linux驱动,它是一个基于浏览器的免费网络存储管理实用程序,可以在单一框架中提供基于文件的网络连接存储 (NAS) 和基于块的存储区域网 (SAN)。整个软件包与开放源代码应用程序(例如 Apache、Samba、LVM2、ext3、Linux NFS 和 iSCSI Enterprise Target)连接。Openfiler 将这些随处可见的技术组合到一个易于使用的小型管理解决方案中,该解决方案通过一个基于 Web 且功能强大的管理界面实现。
Openfiler 支持 CIFS、NFS、HTTP/DAV 和 FTP,但是,我仅使用它的 iSCSI 功能为 Oracle10g RAC 需要的共享存储组件实现低成本的 SAN。我们将通过 USB 2.0 接口将一个 500GB 的外置硬盘驱动器连接到 Openfiler 服务器。Openfiler 服务器将配置为使用该磁盘进行基于 iSCSI 的存储,并且将在 Oracle10g RAC 配置中用于存储 Oracle 集群件所需的共享文件以及所有 Oracle ASM 卷。
我的initiator 是win7主机,target是openfiler,首先到openfiler官网下载vm的镜像,http://www.openfiler.com/community/download,直接下载加载到本地VMWare中,添加3块10G的硬盘做raid5,然后开机,如图
按照提示,打开ie输入https://192.168.92.134:446打开web界面如图,默认登录名和密码为openfiler,password
这里可以看到网络,硬件,内存,硬盘等的使用情况,最上面还有负载信息。接下来在System菜单下,添加信任ip段,如图
然后在Volumes菜单下,初始化新添加的硬盘,是指就是用fdisk命令来分区,如图
接下来就是创建soft raid了,如图
创建号raid,就可以创建pv,vg和lvm了,依次点击Volume Groups,新建vg,然后点击Add Volume,创建lvm,最后filesystem类型要选择iscsi的,如图
这些步骤完全可以在shell下,用mdadm来创建,我之前的博文中有一篇文章就是专门写用raid5 来创建lvm的实验。
在配置iscsi之前一定要确保iscsi的服务启动了,才能添加qin号,如图
从上面也可以看出来openfiler还支持,NFS, SMB, FTP, LDAP(轻量级目录访问协议Lightweight Directory Access Protocol),还集成了apache等其他服务,其他的功能大家可以自己去挖掘。
在确保启动ISCSI服务的前提下,点击Volumes菜单下的iSCSI Targets,然后会出现添加iqn按钮已经可用了,点击Add,然后点击LUN Mapping,将ISCSI设备map上,然后在Network ACL处选择刚才新添加的ip段,选择allow,最后是CHAP Authentication认证,是用来验证用户身份的,由于是做测试用,就没有设置密码,操作如图
操作完成后,在重启iscsi服务,接下来就是Windows上的操作了,打开控制面板,管理工具,然后打开iSCSI Initiator,如图
点击Discovery选项卡的Discover Portal,然后输入openfiler主机的ip地址,如图
完成之后就可以发现iscsi target了,回到Target选项卡下,点击Connect就可以成功连接上主机了,由于我们没有设置CHAP ,所以不需要输入密码。然后在磁盘管理界面就会看到我们的新磁盘了,然后我们就可以分区格式化了,如图
到此Windows下的就做完了,下面开始centos系统下的实验
首先查看安装了
- [root@shanker ~]# rpm -qa|grep iscsi
- iscsi-initiator-utils-6.2.0.872-34.el6.i686
发现已经安装过,启动服务,service iscsid start
然后发现target
- iscsiadm -m discovery -t sendtargets -p 192.168.92.134
会看到target客户端的三个iqn号码,这个是我之前做实验留下来的,我们选择第一个iqn进行连接
- iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.0c2eb7fa9262 -p 192.168.92.134 –l
登录成功会有successful的提示,执行fdisk -l 已经发现/dev/sdb设备了,然后我们就可以向操作本地磁盘一样来操作他了,
如图,已经将sdb1挂在/mnt目录了。
到此,整个实验就完成了。