19.共享块存储服务iscsi

iscsi共享存储(网络磁盘):
    服务器提供磁盘空间,客户端连接并当成本地磁盘使用

服务端iscsi服务部署:
    iscsi分为3个部分:客户端看到的是target磁盘组
        1.ackstore后端存储
        2.target磁盘组
        3.lun逻辑单元

服务端部署:    
    1.划分一个空的且没有文件系统(有文件系统也没问题)的空分区,作为共享磁盘(可以是整块磁盘,或者分区,或者逻辑卷)
        fdisk /dev/hda
            创建一个hda1
    2.安装iscsi服务端软件包:
        yum -y install targetcli
    3.配置共享存储:可以依靠命令,而不修改配置文件,redhat7版本才可以
        输入命令进入配置模式:targetcli
        在配置模式里:
            输入ls可以查看iscsi服务的详细信息
        1)将空分区做成后端存储:
            #后端存储相当于你要发快递的东西
            命令:
                backstores/block create dev=/dev/hda1 name=nsd1 
                    #dev=指定要共享的分区 name=随便起个名字
        2)创建target磁盘组:
            #相当于发快递时的最外层外包装,客户端看到的就是这个
            命令:
                iscsi/ create iqn.2016-02.example.com:server0     
                    #iqn.2016-02.example.com:server0 是磁盘组名称
                    #iqn命名规范:
                        iqn.年-月(月份必须是两位数).域名:自定义标识
                    #iqn是用来识别磁盘组,和实现验证客户端身份
        3)做lun关联:将后端存储与磁盘组做关联
            #相当于把快递的东西放进这个外包装里
            命令:
                iscsi/iqn.2016-02.example.com:server0/tpg1/luns create /backstores/block/iscsi_store         
        4)配置acl访问控制:
            #设置用于客户端访问服务端需要声称的名字,该名字也必须符合iqn规范
            命令:
                iscsi/iqn.2016-02.example.com:server0/tpg1/acls create iqn.2016-02.com.example:desktop0         
                #iqn.2016-02.example.com:desktop0 就是客户端访问共享磁盘需要宣称的名字
        5)启用网络接口:
            #开启本地监听的IP地址与端口
            命令:
                iscsi/iqn.2016-02.example.com:server0/tpg1/portals/ create ipaddress=172.25.0.11 0.0.0.0 3260
                #0.0.0.0是允许所有IP访问,也可以指定IP访问,3260是iscsi服务端口,3260也是默认端口
                #ipaddress这个字段是指定本机用哪个IP对外提供服务,因为服务器有多个网卡,如果不指定,就是本机所有网卡对外提供服务        
        6)exit退出即可,然后重启服务,并设置开机自启动:
            systemctl restart target
            systemctl enable target
        7)补充:
            /etc/target/saveconfig.json    
                #这个文件就是这次创建的iscsi共享盘的配置文件,json和yaml是两种文件格式
            
客户端想要使用网络磁盘所需操作:
    1.安装客户端软件:
        yum -y install iscsi-initiator-utils.i686 
            #软件名称过长无法tab补全,可以用yum repolist生成缓存,就可以补全命令了
            #i686这个后缀的意思是32位的软件包,64位默认已经装了,不需要装,两种都有没关系,默认会用64位的
    2.修改配置文件,指定访问服务端要声称的名字:
        vim /etc/iscsi/initiatorname.iscsi
         写入:
         InitiatorName=iqn.2016-02.example.com:desktop0
    3.重启iscsid服务,并设置开机自启:
        systemctl restart iscsid  提示:如果出现warning字样就输入命令:systemctl daemon-reload 然后再重启服务
        systemctl enable iscsid            #这个服务是刷新客户端的名字
    4.让客户端发现服务端的共享存储:
        iscsiadm --mode discoverydb --type sendtargets --portal 服务端IP --discover 
         #此命令较长可以通过man iscsiadm查看帮助信息,输入/example 可以全文查找example    n可以跳转下一个匹配
    5.重启iscsi服务加载iSCSI网络磁盘:
        systemctl restart iscsi            #这个服务没有d,这个是发现磁盘的服务
    6.以上操作完成,就可以用lsblk命令查看硬盘状态了,会出现sd类型的磁盘,当然还要格式化和划分区使用
        1)划分磁盘分区:
         fdisk /dev/sda 
         partprobe /dev/sda        //刷新分区表
        2)为分区格式化:
         mkfs.xfs /dev/sda1
           3)blkid /dev/sda1    #查看分区UUID值
        4)为分区设置自动挂载,利用UUID值来挂载:
         vim /etc/fstab
          写入:
          /UUID="402d1304-5781-4349-8c43-ba45eba8b427"  /mnt/data xfs defaults,_netdev 0 0
        5)挂载:mount -a 
        查看挂载状态:df -h

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值