配置iscsi服务

1案例1:配置iscsi服务

1.1问题

本案例要求先搭好一台iscsi服务器,并将整个磁盘共享给客户端:

  • 服务器上要额外配置一块硬盘
  • 服务端安装target,并将新加的硬盘配置为iscsi共享磁盘
  • 在客户端上安装initiator,挂载服务器iscsi,要求实现开机自动挂载

1.2 方案

使用2台RHEL7虚拟机,其中一台作为iscsi服务器(192.168.2.5)、另外一台作为测试用的客户机(192.168.2.100),如图所示

主机网络地址配置如表所示

在RHEL7系统中,默认通过targetcli软件包提供iscsi服务,因此需要在服务端安装targetcli包并配置对应的服务,iscsi服务主要配置选项如表所示 

客户端挂载iscsi服务器:

  • 客户端需要安装iscsi-initiator-utils软件包
  • 客户端使用命令挂载后需要分区、格式化并进行挂载测试

1.3步骤

实现此案例需要按照如下步骤进行。

步骤一:安装iscsi服务器软件

1)使用yum安装targetcli软件包

[root@proxy ~]# yum  -y  install  targetcli
.. ..
[root@proxy ~]# yum info targetcli
.. ..

步骤二:通过命令行配置iscsi服务

1)真实主机准备底层存储磁盘

真实主机使用virt-manager工具为proxy虚拟机添加磁盘,如图所示

双击打开虚拟机后添加磁盘设备,如图所示

登录到192.168.2.5主机,为新添加的磁盘准备分区:

[root@proxy ~]# parted /dev/vdb mklabel gpt
[root@proxy ~]# parted /dev/vdb mkpart primary 1 100%

2)使用targetcli定义后端存储

设置需要将哪个设备共享给其他主机,这里将/dev/vdb1设置为后端共享磁盘

[root@proxy ~]# targetcli
/> ls
/> backstores/block create store /dev/vdb1
备注:store为任意名称

3)创建iqn对象

给iscsi共享设置一个共享名称,客户端访问时需要使用该共享名称

/> /iscsi create iqn.2018-01.cn.tedu:server1

4)授权客户机访问

类似于一个密码,设置ACL访问控制,拥有iqn.2018-01.cn.tedu:client1这个字符串的客户端材有权访问服务器

/> iscsi/iqn.2018-01.cn.tedu:server1/tpg1/acls create iqn.2018-01.cn.tedu:client1

5)绑定存储

将iqn共享名称(iqn.2018-01.cn.tedu:server1)与后端实际存储设备(vdb)绑定

/>iscsi/iqn.2018-01.cn.tedu:server1/tpg1/luns create /backstores/block/store 

#注意:block后面的store必须与前面步骤2定义后端存储create创建的名称一致

6)存储绑定服务监听的地址,并保存配置

/> iscsi/iqn.2018-01.cn.tedu:server1/tpg1/portals/ create 0.0.0.0
/> saveconfig 
/> exit

步骤三:服务管理

 1)启动服务

[root@proxy ~]# systemctl  {start|restart|stop|status} target
[root@proxy ~]# systemctl enable target

2)查看端口信息

[root@proxy ~]# ss -utlnp | grep :3260

3)关闭防火墙与SELinux

[root@proxy ~]# systemctl stop firewalld
[root@proxy ~]# setenforce 0

步骤四:客户端访问(web1作为客户端的角色)

1)客户端安装软件并启动服务

[root@web1 ~]# yum -y install iscsi-initiator-utils

2)设置本机的iqn名称

[root@web1 ~]# vim /etc/iscsi/initiatorname.iscsi 
InitiatorName=iqn.2018-01.cn.tedu:client1
注意:必须跟服务器上配置的ACL一致!

3)发现远程target存储

提示:参考man iscsiadm

[root@web1 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.2.5 --discover
[root@web1 ~]# iscsiadm --mode node --targetname iqn.2018-01.cn.tedu:server1 --portal 192.168.2.5:3260 --login

3)客户端挂载iscsi共享

[root@web1 ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda             8:0    0  20G  0 disk    
#多了一个sda设备
sr0            11:0    1 1024M  0 rom 
vda           252:0    0   20G  0 disk
[root@web1 ~]# systemctl restart iscsi 

4)分区、格式化、挂载

[root@web1 ~]# parted /dev/sda mklabel gpt
[root@web1 ~]# parted /dev/sda mkpart primary 1 800
[root@web1 ~]# mkfs.xfs /dev/sda1
[root@web1 ~]# mount /dev/sda1  /mnt
[root@web1 ~]# umount  /mnt

步骤四:附加课外实验:多台FTP或者http主机使用共享存储

这里以FTP为例,web1和web2主机都安装vsftpd软件,使用同一的后端共享存储设备

1)web1操作(延续前面步骤三的实验):

[root@web1 ~]# mkdir /var/ftp/
[root@web1 ~]# mount /dev/sda1  /var/ftp/
[root@web1 ~]# yum -y install vsftpd
[root@web1 ~]# sed -i 's/^#anon/anon/' /etc/vsftpd/vsftpd.conf

备注:修改vsftpd配置文件,开启匿名上传功能。将下面2行默认的注释行打开。

备注:修改vsftpd配置文件,开启匿名上传功能。将下面2行默认的注释行打开。

#anon_upload_enable=YES

#anon_mkdir_write_enable=YES
[root@web1 ~]# chmod 777  /var/ftp/pub
[root@web1 ~]# systemctl start vsftpd
[root@web1 ~]# systemctl enable vsftpd

 真实主机访问web1 的ftp服务

当web1宕机后,web2创建/var/ftp/文件夹,发现proxy的iscsi网络磁盘,挂载网络磁盘到/var/ftp,作为热备ftp

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值