什么是存储双活
华为HyperMetro特性又称双活特性(以下统称双活特性),双活特性中的两个数据中心互为备份,且都处于运行状态。当一个数据中心发生设备故障,甚至数据中心整体故障时,业务自动切换到另一个数据中心,解决了传统灾备业务无法自动切换的问题。提供给用户高级别的数据可靠性以及业务连续性的同时,提高存储系统的资源利用率。
仲裁机制
数据仲裁原理
当两个数据中心之间的链路故障或其中一个数据中心故障时,两个数据中心之间无法实时同步,此时只能由双活Pair或双活一致性组中的一端继续提供服务。为了保证数据一致性,双活通过仲裁机制决定数据中心的服务优先级。HyperMetro提供了两种仲裁模式:
- 静态优先级模式
应用在未配置仲裁服务器的场景。- 仲裁服务器模式(推荐)
应用在配置了仲裁服务器的场景。
实验
需求
通过OceanStor v3,完成存储双活实验,实现任意一台存储故障而业务不断。
实验拓扑
实验环境
设备 | 设备作用 | 端口 | IP | 网段作用 |
---|---|---|---|---|
Centos8 | 业务主机 | ens192 | 172.117.4.100/16 | 管理平面 |
Centos8 | 业务主机 | ens224 | 172.118.4.100/16 | 存储业务平面 |
- | - | - | - | - |
Storage01 | 双活存储01 | Web | 172.1.0.73:8088 | 存储的web访问网址 |
Storage01 | 双活存储01 | H0 | 172.118.73.201/16 | 存储业务平面 |
Storage01 | 双活存储01 | H1 | 172.118.73.202/16 | 存储业务平面 |
Storage01 | 双活存储01 | H2 | 172.119.73.201/16 | 存储复制平面(存储双活链路) |
Storage01 | 双活存储01 | H3 | 172.120.73.201/16 | 存储仲裁平面 |
- | - | - | - | - |
Storage02 | 双活存储02 | Web | 172.1.0.74:8088 | 存储的web访问网址 |
Storage02 | 双活存储02 | H0 | 172.118.74.201/16 | 存储业务平面 |
Storage02 | 双活存储02 | H1 | 172.118.74.202/16 | 存储业务平面 |
Storage02 | 双活存储02 | H2 | 172.119.74.201/16 | 存储复制平面(存储双活链路) |
Storage02 | 双活存储02 | H3 | 172.120.74.201/16 | 存储仲裁平面 |
- | - | - | - | - |
QSServer | 仲裁服务器 | ens192 | 172.117.75.250/16 | 管理平面 |
QSServer | 仲裁服务器 | ens224 | 172.120.75.251/16 | 存储仲裁平面(连接Storage01) |
QSServer | 仲裁服务器 | ens256 | 172.120.75.252/16 | 存储仲裁平面(连接Storage02) |
实验步骤
1. 双活存储存储初始化(OceanStor v3 模拟器)
1.1开机,设置密码
-
开启存储模拟器,使用默认账号和密码登录,等待初始化完成
-
输入重设的密码
1.2登录DM,修改设备名、系统时间和导入License
修改系统时间是因为这个模拟器的license只到2020年3月
1.3 设置接口IP
两台存储的设备的H0和H1口配置成存储业务口:172.118.73.201/16、172.118.73.202/16和172.118.74.201/16、172.118.74.202/16
H2口配置为存储复制链路口:172.119.73.201/16和172.119.74.201/16
H3口配置为存储仲裁接口:172.120.73.201/16和172.120.74.201/16
截图不全截,仅演示
2. 仲裁服务器配置(Centos7)
2.1 配置网络
ens192作为管理网络网卡,配置172.117.x.x
ens224和ens256是仲裁网络网卡,配置172.120.x.x
[root@localhost ~]# nmcli con modify ens192 ipv4.addresses 172.117.75.250/16 ipv4.gateway 172.117.0.254 ipv4.method manual autoconnect yes
[root@localhost ~]# nmcli con modify ens224 ipv4.addresses 172.120.75.251/16 ipv4.method manual autoconnect yes
[root@localhost ~]# nmcli con modify ens256 ipv4.addresses 172.120.75.252/16 ipv4.method manual autoconnect yes
# 修改时间,用于对接存储模拟器
[root@localhost ~]# date -s "20200101 10:03"
Wed Jan 1 10:03:00 CST 2020
2.2 上传仲裁软件,解压安装
#解压
[root@localhost ~]# unzip OceanStor_5300V3_5500V3_5600V3_5800V3_6800V3_V300R006C50SPC100_QuorumServer.zip
[root@localhost ~]# cd package/
[root@localhost package]# ls
packages qs_version.ini quorum_server.sh tools
# 安装仲裁服务器
[root@localhost package]# sh quorum_server.sh -install
Verify the QuorumServer existence.
The QuorumServer is not installed.
The current user is the root user. A quorum server administrator account needs to be provided. Continue to install?
<Y|N>:Y
Enter an adminstrator account for the quorum server:[default: quorumsvr]:
Created new account: quorumsvr.
usermod: no changes
Changing password for user quorumsvr.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
Installing the quorum server.
Preparing... ################################# [100%]
Updating / installing...
1:QuorumServer-V300R006C50SPC100-li################################# [100%]
[Notice] No old configuration need to resume.
QuorumServer install success completed.
2.3 添加仲裁服务器IP,查看
[root@localhost package]# qsadmin
start main!
Waiting for connecting to server...
admin:/>help
quit : Logout.
exit : Logout.
add : add [white_list|server_ip], for more information, please type 'add help'.
delete : delete [white_list|server_ip|cert_crl], for more information, please type 'delete help'.
show : show [white_list|server_ip|tls_cert|server_info|ca_cert|cipher_info], for more information, please type 'show help'.
change : change [white_list|cipher], for more information, please type 'change help'.
export : export [tls_cert], for more information, please type 'export help'.
import : import [tls_cert|cert_crl], for more information, please type 'import help'.
admin:/>add server_ip ip=172.120.75.251 #配置本机的ens224
Command executed succesfully.
admin:/>add server_ip ip=172.120.75.252 #配置本机的ens256
Command executed succesfully.
admin:/>show server_ip
Index Server IP Server Port
----- --------------- ---------------
1 172.120.75.251 30002
2 172.120.75.252 30002
Index Local IP Local Port Remote IP Remote Port State
----- --------------- --------------- --------------- --------------- ----------
3. 双活存储配置
3.1 两台存储创建硬盘域和存储池
3.2 配置远端设备(mm_user/mm_user@storage)
3.3 主端存储创建lun(5G)
3.4 创建双活域,添加仲裁,以及鉴权
3.5 创建双活pair
3.6 业务主机配置,多路径
略,详情步骤可以见我之前的笔记
3.7 业务主机发起连接
[root@localhost ~]# iscsiadm -m discovery -t st -p 172.118.73.201
172.118.73.201:3260,8196 iqn.2014-08.com.example::2100030203040506::22003:172.118.73.201
[root@localhost ~]# iscsiadm -m discovery -t st -p 172.118.73.202
172.118.73.202:3260,8197 iqn.2014-08.com.example::2100030203040506::22004:172.118.73.202
[root@localhost ~]# iscsiadm -m discovery -t st -p 172.118.74.202
172.118.74.202:3260,8197 iqn.2014-08.com.example::2100040203040506::22004:172.118.74.202
[root@localhost ~]# iscsiadm -m discovery -t st -p 172.118.74.201
172.118.74.201:3260,8196 iqn.2014-08.com.example::2100040203040506::22003:172.118.74.201
[root@localhost ~]# iscsiadm -m node -l
Logging in to [iface: default, target: iqn.2014-08.com.example::2100030203040506::22003:172.118.73.201, portal: 172.118.73.201,3260]
Logging in to [iface: default, target: iqn.2014-08.com.example::2100030203040506::22004:172.118.73.202, portal: 172.118.73.202,3260]
Logging in to [iface: default, target: iqn.2014-08.com.example::2100040203040506::22004:172.118.74.202, portal: 172.118.74.202,3260]
Logging in to [iface: default, target: iqn.2014-08.com.example::2100040203040506::22003:172.118.74.201, portal: 172.118.74.201,3260]
Login to [iface: default, target: iqn.2014-08.com.example::2100030203040506::22003:172.118.73.201, portal: 172.118.73.201,3260] successful.
Login to [iface: default, target: iqn.2014-08.com.example::2100030203040506::22004:172.118.73.202, portal: 172.118.73.202,3260] successful.
Login to [iface: default, target: iqn.2014-08.com.example::2100040203040506::22004:172.118.74.202, portal: 172.118.74.202,3260] successful.
Login to [iface: default, target: iqn.2014-08.com.example::2100040203040506::22003:172.118.74.201, portal: 172.118.74.201,3260] successful.
3.8 存储加启动器(双活双方都要添加)
略,详情步骤可以见我之前的笔记
3.9 业务主机验证双活lun的情况
[root@localhost ~]# hot_add
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 18.4G 0 part
├─cl-root 253:0 0 16.4G 0 lvm /
└─cl-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 5G 0 disk
up-0 252:0 0 5G 0 disk
up-1 252:1 0 5G 0 disk
up-2 252:2 0 5G 0 disk
[root@localhost ~]# upadmin
UltraPath CLI #0 >show vlun type=all
----------------------------------------------------------------------------------------------------------------------------------------------------------
Vlun ID Disk Name Lun WWN Status Capacity Ctrl(Own/Work) Array Name Dev Lun ID No. of Paths(Available/Total)
0 sdb LUN001.r 60302031000405060007f3d700000000 Normal 5.00GB 0A/0A Storage02 0 2/2
0 sdb LUN001 60302031000405060007f3d700000000 Normal 5.00GB 0A/0A Storage01 0 2/2
----------------------------------------------------------------------------------------------------------------------------------------------------------
UltraPath CLI #1 >show vlun id=0 type=all
=======================================================
VLUN#0 Information
=======================================================
Disk : sdb
Manual IO Suspension : Off
Aggregation Type : Hyper Metro
Aggregation Specific Attribution
WorkingMode : read write within primary array
Primary Array SN : ST000000002018120003
Aggregation Member#0 Infomation
Name : LUN001.r
Status : Normal
Capacity : 5.00GB
Aggregation Specific Attribution : N/A
LUN WWN : 60302031000405060007f3d700000000
Array Name : Storage02
Array SN : ST000000002018120003
Driver : Vendor-specific(DEFAULT)
Product Name : XSG1
Vendor Name : HUAWEI
Owning Controller : 0A
Working Controller: 0A
Num of Paths : 2
Controller 0A
Path 2 [35:0:0:1] (up-2) : Normal
Path 3 [36:0:0:1] (up-3) : Normal
Aggregation Member#1 Infomation
Name : LUN001
Status : Normal
Capacity : 5.00GB
Aggregation Specific Attribution : N/A
LUN WWN : 60302031000405060007f3d700000000
Array Name : Storage01
Array SN : ST000000002018120002
Driver : Vendor-specific(DEFAULT)
Product Name : XSG1
Vendor Name : HUAWEI
Owning Controller : 0A
Working Controller: 0A
Num of Paths : 2
Controller 0A
Path 0 [33:0:0:1] (up-0) : Normal
Path 1 [34:0:0:1] (up-1) : Normal
-------------------------------------------------------
3.10 业务主机搭建业务测试
模拟http业务测试,前置yum安装、磁盘分区格式化不演示
关闭Storage01 存储模拟器,模拟故障
试验结束。