配置iSCSI

配置iSCSI

  1. 准备三台虚机

[root@room8pc16 ~]# clone-auto7

  1. 初始化

Node1.tedu.cn 192.168.4.1 iSCSI服务器

Node2.tedu.cn 192.168.4.2 mysql1

Node3.tedu.cn 192.168.4.3 mysql2

关闭防火墙、SELINUX,配置YUM

(1)启动虚拟机

[root@room8pc16 ~]# for vm in rh7_node{1..3}
> do
> virsh start $vm
> done
  1. 在物理机上连接虚拟机的控制台
[root@room8pc16 ~]# virsh console rh7_node1    #//退出时,按ctrl+]
[root@localhost ~]# nmtui
  1. iSCSI提供块设备

块设备,如硬盘、光盘、U盘

  1. iSCSI服务器端为客户端提供块设备,需要起个名,这个名字是IQN

IQN名称规范:iqn.时间.域名的反写.字符串:子字符串

如: iqn.2018-07.cn.tedu.nsd1803:yezhikang

  1. 在iSCSI服务器上添加额外硬盘

可以在虚拟机不关机的情况下,直接添加硬盘。为node1加一块20GB的硬盘。

 

配置iSCSI服务端

  1. 安装软件包
[root@node1 ~]# yum install -y targetcli
  1. 为vdb分区

MBR: 主引导记录,这种分区格式,最多只能支持4个分区,最大支持2.2TB左右硬盘

GPT:GUID分区表,可以支持大硬盘,可以支持128个主分区

[root@node1 ~]# parted /dev/vdb
(parted) mklabel gpt
(parted) mkpart primary 1M 50%
(parted) mkpart primary 50% 100%
(parted) quit
[root@node1 ~]# lsblk
  1. 配置iscsi
[root@node1 ~]# targetcli
/> /backstores/block create formysql /dev/vdb1          #//给vdb1起个名字formysql,回入到iscsi管理中
/> /iscsi create iqn.2018-07.com.cnbly.yang             #//创建供客户端访问的iqn名字
/> /iscsi/iqn.2018-07.com.cnbly.yang/tpg1/luns create /backstores/block/formysql        #//把存储绑定到iqn名字中
/> /iscsi/iqn.2018-07.com.cnbly.yang/tpg1/acls create iqn.2018-07.com.cnbly.node2        #//配置ACL,限定允许访问的客户端
/> /iscsi/iqn.2018-07.com.cnbly.yang/tpg1/acls create iqn.2018-07.com.cnbly.node3
/> saveconfig      #//保存
/> exit            #//退出

配置node2为客户端

  1. 安装软件包
[root@node2 ~]# yum install -y iscsi-initiator-utils
  1. 客户端修改iqn名字
[root@node2 ~]# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2018-07.com.cnbly.node2
  1. 发现存储端,此时可以发现名字,但是不会多出硬盘
[root@node2 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.4.1 --discover
  1. 登陆iscsi设备,出现新硬盘
[root@node2 ~]# systemctl restart iscsi
[root@node2 ~]# lsblk     #// 将会出现sda
[root@node2 ~]# systemctl enable iscsi
[root@node2 ~]# systemctl enable iscsid

iscsi服务用于自动登陆,iscsid是守护进程

  1. 安装mariadb-server,将sda分区、格式化,挂载到mariadb的工作目录下
[root@node2 ~]# yum -y install mariadb-server
[root@node2 ~]# mkfs.ext4 /dev/sda1
[root@node2 ~]# mount /dev/sda1 /var/lib/mysql/
[root@node2 ~]# chown mysql.mysql /var/lib/mysql/
  1. 启动mariadb,创建库和表
[root@node2 ~]# systemctl start mariadb
[root@node2 ~]# systemctl enable mariadb
[root@node2 ~]# mysql
MariaDB [(none)]> create database testuser;
MariaDB [(none)]> use testuser;
MariaDB [testuser]> create table students (name varchar(20));
MariaDB [testuser]> INSERT INTO students VALUES('zhouyu');

iSCSI:

当node2节点出现故障时,可以使用node3进行替换

  1. 配置iscsi客户端

 

[root@node3 ~]# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2018-07.com.cnbly.node3
[root@node3 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.4.1 --discover
[root@node3 ~]# systemctl restart iscsi
  1. 配置mariadb-server
[root@node3 ~]# yum install -y mariadb-server
[root@node3 ~]# mount /dev/sda1 /var/lib/mysql/
[root@node3 ~]# systemctl start mariadb

 

注意:千万不要使用两个节点同时挂载相同的文件系统(分区),如果多个节点同时挂载这个文件系统,很可能会导致文件系统损坏,数据丢失!因为XFS/EXT3/EXT4这些文件系统都是单节点文件系统。红帽的GFS才能支持多节点同时挂载。

 

UDEV:动态管理硬件文件的方法。如,把U盘接入到主机,主机会多一个硬盘文件,把U盘移除的时候,硬盘文件消失。

1、udev规则文件存放目录/etc/udev/rules.d/

2、规则文件命名:数字-名字.rules

数字大小顺序是规则文件执行的顺序

3、应用udev,给iscsi磁盘创建一个软链接叫idisk

(1)查看iscsi磁盘(sda)在/sys/目录中的位置

[root@node3 ~]# udevadm info --query=path --name=/dev/sda1

(2)通过上一步的路径,查看iscsi磁盘的信息(以和其他设备进行区别)

root@node3 ~]# udevadm info --query=all --attribute-walk --path=/devices/platform/host2/session1/target2:0:0/2:0:0:0/block/sda/sda1

(3)创建规则文件

[root@node3 ~]# vim /etc/udev/rules.d/90-iscsi.rules
...
KERNEL=="sd[a-z]*", ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{model}=="formysql        ", SYMLINK+="idisk%n"

注:KERNEL==””表示内核识别出来的设备名

ACTION==“add”表示新接入设备

SUBSYSTEMS和ATTRS{model}是第(2)步查到的

SYMLINK表示创建符号链接,+=表示额外创建,%n是分区号

(4)只有把磁盘移除再接入才能生效或是重启系统

[root@node3 ~]# systemctl stop mariadb
[root@node3 ~]# umount /dev/sda1 
[root@node3 ~]# iscsiadm --mode node --targetname iqn.2018-07.cn.tedu.nsd1803 --portal 192.168.4.1:3260 --logout
[root@node3 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.4.1 --discover
[root@node3 ~]# systemctl restart iscsi
[root@node3 ~]# ll  /dev/idisk*

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值