[TOC]

0x00 前言简述

描述: 最近业务需要需要将原本装有VMware vSphere的机器直接安装Ubuntu 20.04 TLS,并通过SAS线缆从DELL Storage SCv 2020链接我们的UBUNTU 物理主机上进行SCSI磁盘的挂载共享使用,以下是一些简单的说明;

TIPS: DELL Storage SCV2000 / SCv 2020 使用Fibre Channal 或者 iSCSI 存储系统时候建议通过FC SAN 网络进行数据传输,此处我们还是以我们现存的硬件设备进行连接通过SAS线缆链接到服务器上的HBA卡(主机总线适配器)中;

  • 戴尔SCv2000是一款容易上手的入门级存储系统,其向导式图形界面、智能、自动化、简捷操作和可靠性保障都给我们留下了不错的印象,它是Compellent家族血统的智能存储。


技术规格:

  • 1.SAS 硬盘驱动器:

    1
    2
    SCv2000:最多 12 个 3.5 英寸 SAS 热插拔硬盘驱动器 (6.0 Gbps) 水平安装
    SCv2020:最多 24 个 2.5 英寸 SAS 热插拔硬盘驱动器 (6.0 Gbps) 垂直安装
    WeiyiGeek.

    WeiyiGeek.

  • 2.存储控制器: 最多两个具有以下 I/O 选项的热插拔存储控制器

    1
    2
    3
    4
    5
    • 两个 16 Gbps Fibre Channel 端口
    • 四个 8 Gbps Fibre Channel 端口
    • 两个 10 Gbps iSCSI 端口
    • 四个 1 Gbps iSCSI 端口
    • 四个 12 Gbps SAS 端口
  • 3.存储连接配置:Storage Center 在一个冗余路径 SAS 链中支持多达 168 个驱动器

    1
    2
    • SCv2000 支持最多 13 个 SC100 扩展柜或 6 个 SC120 扩展柜
    • SCv2020 支持最多 12 个 SC100 扩展柜或 6 个 SC120 扩展柜
  • 4.独立磁盘冗余阵列 (RAID): 两个热插拔存储控制器,管理 RAID 管理使用 Dell Storage Client 2015 R1;

  • 5.背面板端口连接器(每个存储控制器): Fibre Channel、iSCSI 或SAS 连接器 连接至 Fiber Channel 光纤、iSCSI 网络或直接连接至具有 SAS HBA 的服务器;

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    # 以太网连接器 
    * MGMT:10 Mbps、100 Mbps 或 1 Gbps 嵌入式以太网端口,用于 StorageCenter 管理
    * REPL:10 Mbps、100 Mbps 或 1 Gbps 嵌入式 iSCSI 端口,用于复制到另一个Storage Center

    # SAS 连接器
    6 Gbps SAS 连接器,用于 SAS 端口冗余和附加扩展柜
    注: SAS 连接器符合 SFF-8086/SFF-8088 标准

    # USB 连接器
    一个 USB 3.0 连接器,用于 Storage Center 更新

    # 串行连接器
    工程师使用
  • 6.LED 指示灯

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    # 前面板 
    • 一个双色 LED 指示灯,用于显示系统状态。
    • 一个单色 LED 指示灯,用于显示电源状态。
    • 两个数字式七段显示屏,用于显示存储系统 ID 号
    • 带单色 LED 指示灯的 ID 按钮,用于显示启动和按下状态

    # 硬盘驱动器托架
    • 一个单色活动 LED
    • 每个驱动器具有一个单色 LED 状态指示灯

    # 存储控制器
    • 每个以太网端口有两个单色 LED,用于表示活动和链路速度(`左链右活`)
    • 每个 SAS 连接器有四个双色 LED,用于表示端口活动和状态
    • 一个表示状态的单色 LED
    • 一个表示故障的单色 LED
    • 一个用于标识的单色 LED
    • 八个用于诊断的单色 LED

    # 电源设备/散热风扇
    四个 LED 状态指示灯,用于表示电源设备状态、交流故障状态、直流故障状态和风扇故障状态
  • 7.可用的硬盘驱动器功率(每个插槽):支持的硬盘驱动器的功耗(连续)

    1
    2
    +5 V 时最多为 1.2 A
    +12 V 时最多为 0.5 A
  • 8.交流电源设备(每个电源设备)

    1
    2
    3
    4
    5
    6
    功率 580 W(最大功率:584 W)
    电压 100–240 VAC (7.6–3.0 A)
    散热量 SCv2000:在 230 VAC 时为 65 W,在 115 VAC 时为 99 W
    SCv2020:在 230 VAC 时为 65 W,在 115 VAC 时为 99 W
    最大涌入电流 在典型的线路环境下和整个系统环境工作范围内,每个电源设备在 40 毫秒或更
    短时间内的涌入电流可达 45 A

0x01 现场实施

设备上架

前端布线:
是指连接存储系统与主机服务器,可通过Fibre Channael / iSCSI 或者 SAS 接口进行连接, 而存储系统可连接到Switch或者主机服务器(需要HBA支持)具体如何使用取决于前端端口类型;

  • 1.使用Fibre Channael前端端口连接一台或者多台FC交换机然后再则连接至一台或多台主机服务器;
  • 2.使用iSCSI前端端口的存储系统连接至一台或多台以太网交换机,以太网交换机则连接至一台或多台主机服务器。
  • 3.使用SAS前端接口的存储系统直接连接至一台或多台主机服务器。
    注意:每个存储控制器上的MGMT端口连接到管理端口以太网,此时这样可以管理网络和配置Storage Center;

主机布线: 顶左底右

  • 1.SAN 连接的主机服务器布线(Fibre Channel 或 iSCSI 前端端口)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    1.将每台主机服务器连接至交换机。
    2. 将容错域 1 连接至交换机 1。(正好交叉)
    a. 将电缆从存储控制器 1:端口 1 连接至交换机 1。
    b. 将电缆从存储控制器 2:端口 1 连接至交换机 1。
    c. (仅四端口 I/O 卡)将电缆从存储控制器 1:端口 3 连接至交换机 1。
    d. (仅四端口 I/O 卡)将电缆从存储控制器 2:端口 3 连接至交换机 1。
    3. 将容错域 2 连接至交换机 2。
    a. 将电缆从存储控制器 1:端口 2 连接至交换机 2。
    b. 将电缆从存储控制器 2:端口 2 连接至交换机 2。
    c. (仅四端口 I/O 卡)将电缆从 存储控制器 1:端口 4 连接至交换机 2。
    d. (仅四端口 I/O 卡)将电缆从 存储控制器 2:端口 4 连接至交换机 2。
    WeiyiGeek.SAN 连接

    WeiyiGeek.SAN 连接

  • 2.SAS 直连主机服务器布线(SAS)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    1. 将容错域 1 连接至主机服务器 1。
    a. 将 SAS 电缆从存储控制器 1:端口 1 连接至服务器 1。
    b. 将 SAS 电缆从存储控制器 2:端口 1 连接至服务器 1。
    2. 将容错域 2 连接至主机服务器 2。
    a. 将 SAS 电缆从存储控制器 1:端口 2 连接至服务器 2。
    b. 将 SAS 电缆从存储控制器 2:端口 2 连接至服务器 2。
    3. 将容错域 3 连接至主机服务器 3。
    a. 将 SAS 电缆从存储控制器 1:端口 3 连接至服务器 3。
    b. 将 SAS 电缆从存储控制器 2:端口 3 连接至服务器 3。
    4. 将容错域 4 连接至主机服务器 4。
    a. 将 SAS 电缆从存储控制器 1:端口 4 连接至服务器 4。
    b. 将 SAS 电缆从存储控制器 2:端口 4 连接至服务器 4。
    WeiyiGeek.SAS 连接

    WeiyiGeek.SAS 连接

注意事项: 顶部的存储控制器为存储控制器 1(前端端口从左至右编号)。底部的存储控制器为存储控制器(2.前端端口从右至左编号)即顶左底右。

扩展布线:
描述:SCv2000/SCv2020 存储系统支持多个 SC100/SC120 扩展柜。使用 SAS 电缆将 SC100/SC120 扩展柜连接至 SCv2000/SCv2020 存储系统。

1
2
3
4
顶: A -->  A / B --> A
底: A --> A / B --> A
顶: B --> 底: B Last
底: B --> 顶: B Last

WeiyiGeek.扩展柜

WeiyiGeek.扩展柜

管理布线:
描述:每个存储控制器的以太网管理 (MGMT) 接口必须连接至管理网络,注:顶部的存储控制器为存储控制器 1,底部的存储控制器为存储控制器 2

WeiyiGeek.

WeiyiGeek.

电源选择

选择相应的不间断电源设备 (UPS)备用电源设备 (SBS) 组件,确保仅将洁净电力提供给 Storage Center,且系统在电涌和断电时受到保护,不同级别的可用 UPS/SBS 保护如下:
• 在线式 UPS
• 线路交互式 SBS
• 离线式 SBS

注意:这些 UPS/SBS 类型中的每一种在加载至完全输出容量时,通常都提供 5-15 分钟的备用电池时间。通过超额 UPS/SBS 的额
定值也许可延长备用时间。

开启存储

描述: 在机架中布置存储系统的所有组件并进行布线后,开启 Storage Center, 同时按住两个电源开关(置为O),开启存储系统
注: 在开启主机服务器之前,请确保存储系统前面的状态指示灯显示蓝色。


0x02 安装和使用 Dell Storage Client

描述:Dell Storage Client 配置、管理和监测 SCv2000/SCv2020 存储系统。
官网下载地址: https://www.dell.com/support/home/zh-cn/product-support/product/storage-sc2000/drivers
当前版本: 2019 R1.20

DELL Storage Manager 简介

描述: Storage Manager 可用于通过集中式管理控制台监控、管理和分析 Storage Center SAN、FluidFS 群集和Fluid Cache 群集。

包含以下组件:

  • 1) 主要 Storage Manager Data Collector
  • 2) Dell Storage Manager 客户端
  • 3) Dell Storage Manager Web UI
  • 4) 远程 Storage Manager Data Collector
  • 5) Storage Manager Server Agent

注释:Storage Manager 使用的默认端口使用网络连接相互通信并与其他网络资源通信。
下表列出了Storage Manager Data CollectorDell Storage Manager 客户端Storage Manager Server Agent 使用的默认网络端口。
|入站|
|端口|协议|名称|用途|
|:—:|:—:|:—:|:—:|
|514| UDP |系统日志 |接收从 Storage Center SAN 转发的日志|
|3033| TCP |Web 服务器端口| 接收来自所有客户端的通信,来自 FluidFS 群集的警报,来自 Fluid Cache 群集的警报|
|7342 | TCP | 传统客户端侦听器端口 | 与远程 Data Collector 通信 |
|5988 | TCP | HTTP 上的 SMI-S | 接收未加密的 SMI-S 通信 |
|5989 | TCP | HTTPS 上的 SMI-S | 接收加密的 SMI-S 通信 |

|出站|
|端口|协议|名称|用途|
|:—: |:—:|:—:|:—:|
|25 |TCP |SMTP | 发送电子邮件通知|
|443 |TCP| SSL | 与受管 Storage Center SAN 通信使用 Dell SupportAssist 发送诊断数据|
|514 |UDP |系统日志 | 将 Storage Center 日志转发给系统日志服务器|
|1199| TCP |SIMS RMI | 与受管 PS 系列组通信|
|1433 |TCP |Microsoft SQLServer |连接到外部 Microsoft SQL Server 数据库|
|3033 |TCP |SSL | 与受管 Storage Center SAN 通信|
|3306 |TCP |MySQL | 连接到外部 MySQL 数据库|
|6774 |TCP |Fluid Cache | 与 Fluid Cache 服务器通信|
|8080 |TCP |VMware SDK | 与 VMware 服务器通信|
|27355 |TCP |Server Agent 套接字侦听端口| Storage Manager Server Agent 通信|
|35451 |TCP |FluidFS |与受管的 FluidFS 群集通信|
|44421 |TCP |FluidFS 诊断| 检索来自受管的 FluidFS 群集的诊断|


DELL Storage Client 安装

1.下载并安装载 Dell Enterprise Manager 软件(Enterprise Manager Client)需注意安装软件服务器必须在同一子网下;
2.双击 Enterprise Manager Client 快捷键以启动软件随即出现 Dell Storage Client 欢迎屏幕。
3.根据需要选择如下:

1
2
3
- 初始化:查找和配置未初始化的 SCv2000 系列 Storage Center;
- 管理: 击登录到 Storage Center 或 Data Collector 链接连接至已初始化的 SCv2000/SCv2020 存储系统;
- 优化: 设置此主机以访问 Storage Center 链接: 要设置主机服务器以访问 Storage Center 并配置执行 IO 的最佳做法;

WeiyiGeek.2016-R2-Client

WeiyiGeek.2016-R2-Client

  • 4.登陆后可查看摘要选项卡(存储了磁盘以及各个硬件设备的健康状态)

    WeiyiGeek.登录后的界面

    WeiyiGeek.登录后的界面

  • 5.创建卷时SCv 20000支持的几大系统差异,切换到存储卷右键点击卷->创建卷->卷标识设置->卷容量设置->选择映射服务器(如果没有则需要创建服务器)-> 设置名称以及操作系统;

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    # Novell SUSE Linux 
    - 11
    - 12
    # Other (FC-SAN)使用
    - Other Multipath
    - Other Singlepath
    # Red hat Liunx
    - 5.x
    - 6.x
    - 7.x
    # Vmware
    - ESXI 5.X 6.0
    # Windows
    - 2008 Hype-V/MPIO
    - 2012 Hype-V/MPIO
    # XenServer
    - 6.x MPIO
    - 7.x MPIO
    WeiyiGeek.卷创建与映射

    WeiyiGeek.卷创建与映射


DELL Storage卷创建与映射

描述:登陆后切换到存储选项卡之中进行卷与主机的创建并绑定;
资源分配规划:

1
2
3
# App 分配 1.2T 
# Log 分配 1T
# 分别映射给216、217、218三台主机

操作流程:
Step 1. 为了方便管理创建卷文件夹、以及创建对应的卷Application、Log分配1T等;
Step 2. 根据使用场景创建主机、并将创建的Lun 卷映射给该主机;
WeiyiGeek.主机

WeiyiGeek.主机


Step 3. 主机在不重启的情况下刷新scsi驱动加载分配的卷导致本地服务器中;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
# 0.首先确定操作系统有木有识别到HBA卡的驱动
$lspci | grep "SAS"
# 01:00.0 RAID bus controller: Broadcom / LSI MegaRAID SAS-3 3108 [Invader] (rev 02)
# 04:00.0 Serial Attached SCSI controller: Broadcom / LSI SAS3008 PCI-Express Fusion-MPT SAS-3 (rev 02)
$modprobe -c |grep mpt3sas
# alias mpt2sas mpt3sas
# alias pci:v00001000d00000064sv*sd*bc*sc*i* mpt3sas
# .......
# alias pci:v00001000d000002B1sv*sd*bc*sc*i* mpt3sas


# 1.执行scsi主机扫描添加Lun卷存储到本地(扫描所有)
for i in /sys/class/scsi_host/*; do echo "- - -" > $i/scan; done
# 或者找到总线编号,然后再根据得到的编号进行扫描SCSI总线;
$grep mpt /sys/class/scsi_host/host?/proc_name
/sys/class/scsi_host/host1/proc_name:mpt3sas
$echo "- - -" > /sys/class/scsi_host/host1/scan # 扫描单个


# 2.或者扫描查看系统中所有的SCSI目标设备
$sudo rescan-scsi-bus.sh
Scanning SCSI subsystem for new devices
Scanning host 0 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning for device 0 2 0 0 ... # 此处是系统自带的RAID卡
OLD: Host: scsi0 Channel: 02 Id: 00 Lun: 00
Vendor: DELL Model: PERC H730 Mini Rev: 4.27
Type: Direct-Access ANSI SCSI revision: 05
Scanning host 1 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning for device 1 0 1 1 ... # 此处是存储中创建的的两个Lun组,而Lun组便于识别存储分配的卷;
OLD: Host: scsi1 Channel: 00 Id: 01 Lun: 01
Vendor: COMPELNT Model: Compellent Vol Rev: 0701
Type: Direct-Access ANSI SCSI revision: 05
Scanning for device 1 0 1 2 ... # 关键点 添加删除scsi设备都需要此码
OLD: Host: scsi1 Channel: 00 Id: 01 Lun: 02
Vendor: COMPELNT Model: Compellent Vol Rev: 0701
Type: Direct-Access ANSI SCSI revision: 05
Scanning for device 1 0 2 1 ...
OLD: Host: scsi1 Channel: 00 Id: 02 Lun: 01
Vendor: COMPELNT Model: Compellent Vol Rev: 0701
Type: Direct-Access ANSI SCSI revision: 05
Scanning for device 1 0 2 2 ...
OLD: Host: scsi1 Channel: 00 Id: 02 Lun: 02
Vendor: COMPELNT Model: Compellent Vol Rev: 0701
Type: Direct-Access ANSI SCSI revision: 05
Scanning host 2 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 3 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 4 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 5 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 6 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 7 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 8 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 9 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 10 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning host 11 for SCSI target IDs 0 1 2 3 4 5 6 7, all LUNs
Scanning for device 11 0 0 0 ...
OLD: Host: scsi11 Channel: 00 Id: 00 Lun: 00
Vendor: PLDS Model: DVD+-RW DU-8A5LH Rev: 6D51
Type: CD-ROM ANSI SCSI revision: 05
.0 new or changed device(s) found.
0 remapped or resized device(s) found.
0 device(s) removed.

# 查看主机SAS接口
[email protected]:~$ ls -l /sys/class/sas_host/
lrwxrwxrwx 1 root root 0 Sep 4 18:03 host1 -> ../../devices/pci0000:00/0000:00:02.0/0000:04:00.0/host5/sas_host/host5
[email protected]:~$ ls -l /sys/class/sas_host/host1/
device/ power/ subsystem/ uevent


# 3.查看添加的Lun卷
sudo fdisk -l | grep "/dev"
Disk /dev/sdd: 1.2 TiB, 1319413953024 bytes, 2576980377 sectors
Disk /dev/sde: 1 TiB, 1099511627776 bytes, 2147483648 sectors
Disk /dev/mapper/k8sapp: 1.2 TiB, 1319413953024 bytes, 2576980377 sectors
Disk /dev/mapper/k8slog: 1 TiB, 1099511627776 bytes, 2147483648 sectors


# 4.获取scsi磁盘的WWID以及编辑多路径配置设置多路径别名
$cat /etc/multipath/wwids
/36000d3100366e6000000000000000021/
/36000d3100366e6000000000000000020/

$cat /etc/multipath.conf
blacklist {
devnode "^sda"
devnode "^hd[a-z]"
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^dcssblk[0-9]*"
}
defaults {
user_friendly_names yes
path_grouping_policy multibus
failback immediate
no_path_retry fail
}

multipaths {
multipath {
wwid "36000d3100366e6000000000000000021"
alias k8sapp
}
multipath {
wwid "36000d3100366e6000000000000000020"
alias k8slog
}
}

# 5.初始化多路径的存储设备
systemctl enable multipathd
service multipathd restart # 启动服务
modprobe dm-multipath # 系统加载DM模块
modprobe dm-round-robin
multipath -F # 格式化
multipath -v2 # 创建别名
# create: k8sapp (36000d3100366e6000000000000000021) undef COMPELNT,Compellent Vol
# size=1.2T features='1 queue_if_no_path' hwhandler='1 alua' wp=undef
# `-+- policy='service-time 0' prio=25 status=undef
# |- 5:0:0:1 sdb 8:16 undef ready running
# `- 5:0:1:1 sdd 8:48 undef ready running
# create: k8slog (36000d3100366e6000000000000000020) undef COMPELNT,Compellent Vol
# size=1.0T features='1 queue_if_no_path' hwhandler='1 alua' wp=undef
# `-+- policy='service-time 0' prio=25 status=undef
# |- 5:0:0:2 sdc 8:32 undef ready running
# `- 5:0:1:2 sde 8:64 undef ready running
multipath -ll # 格式化路径,检测路径,合并路径
# k8slog (36000d3100366e6000000000000000020) dm-1 COMPELNT,Compellent Vol
# size=1.0T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
# `-+- policy='service-time 0' prio=25 status=active
# |- 5:0:0:2 sdc 8:32 failed ready running
# `- 5:0:1:2 sde 8:64 active ready running
# k8sapp (36000d3100366e6000000000000000021) dm-0 COMPELNT,Compellent Vol
# size=1.2T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
# `-+- policy='service-time 0' prio=25 status=active
# |- 5:0:0:1 sdb 8:16 failed ready running
# `- 5:0:1:1 sdd 8:48 active ready running
multipath -r # 修改multipath.conf配置文件之后重新加载


# 6.格式化分区(数据统统没得)并进行挂载磁盘
$mkfs.xfs /dev/mapper/k8sapp
# meta-data=/dev/mapper/k8sapp isize=512 agcount=32, agsize=10066432 blks
# = sectsz=4096 attr=2, projid32bit=1
# = crc=1 finobt=1, sparse=1, rmapbt=0
# = reflink=1
# data = bsize=4096 blocks=322122547, imaxpct=5
# = sunit=512 swidth=512 blks
# naming =version 2 bsize=4096 ascii-ci=0, ftype=1
# log =internal log bsize=4096 blocks=157286, version=2
# = sectsz=4096 sunit=1 blks, lazy-count=1
# realtime =none extsz=4096 blocks=0, rtextents=0
mkfs.xfs /dev/mapper/k8slog
# meta-data=/dev/mapper/k8slog isize=512 agcount=32, agsize=8388608 blks
# = sectsz=4096 attr=2, projid32bit=1
# = crc=1 finobt=1, sparse=1, rmapbt=0
# = reflink=1
# data = bsize=4096 blocks=268435456, imaxpct=5
# = sunit=512 swidth=512 blks
# naming =version 2 bsize=4096 ascii-ci=0, ftype=1
# log =internal log bsize=4096 blocks=131072, version=2
# = sectsz=4096 sunit=1 blks, lazy-count=1
# realtime =none extsz=4096 blocks=0, rtextents=0


# 7.创建挂载目录
mkdir -p /mnt/nfs/{k8sapp,k8slog}
# 建议根据uuid进行挂载
ls -alh /dev/disk/by-uuid/
# k8slog (36000d3100366e6000000000000000020) dm-1
lrwxrwxrwx 1 root root 10 Sep 10 14:59 9d3738eb-335e-4f2e-9a6b-80d0d2c35419 -> ../../dm-1
# k8sapp (36000d3100366e6000000000000000021) dm-0
lrwxrwxrwx 1 root root 10 Sep 10 14:59 adaeed81-e7a6-4692-9166-37cc64db234c -> ../../dm-0

# 修改/etc/fstab 文件增加如下:
# k8sapp
/dev/disk/by-uuid/adaeed81-e7a6-4692-9166-37cc64db234c /mnt/nfs/k8sapp xfs defaults 0 0
# k8slog
/dev/disk/by-uuid/9d3738eb-335e-4f2e-9a6b-80d0d2c35419 /mnt/nfs/k8slog xfs defaults 0 0

# 重新挂载/etc/fstab中配置定义的所有设备到指定目录
mount -a


# 8.查看系统中的挂载
$df -h
Filesystem Size Used Avail Use% Mounted on
udev 32G 0 32G 0% /dev
tmpfs 6.3G 2.5M 6.3G 1% /run
/dev/sda2 500G 15G 486G 3% /
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/loop0 56M 56M 0 100% /snap/core18/1885
/dev/loop2 30M 30M 0 100% /snap/snapd/8542
/dev/loop1 72M 72M 0 100% /snap/lxd/16099
/dev/loop3 71M 71M 0 100% /snap/lxd/16922
/dev/loop5 30M 30M 0 100% /snap/snapd/8790
/dev/sda3 4.0G 257M 3.8G 7% /boot
/dev/loop4 55M 55M 0 100% /snap/core18/1880
/dev/sda5 600G 4.3G 596G 1% /home
tmpfs 6.3G 0 6.3G 0% /run/user/1000
/dev/mapper/k8sapp 1.2T 8.6G 1.2T 1% /mnt/nfs/k8sapp
/dev/mapper/k8slog 1.0T 7.2G 1017G 1% /mnt/nfs/k8slog
[email protected]:~#


# 9.物理卸载已挂载的scsi设备利用 rescan-scsi-bus.sh 所得设备值
Scanning for device 1 0 1 2
echo "scsi add-single-device 1 0 1 2" > /proc/scsi/scsi


注意事项:

  • (0) 该存储默认是采用精简模式(即使用多就占用多少空间)
  • (1) 从本地服务器创建主机的先决条件
    WeiyiGeek.

    WeiyiGeek.

  • (2) 使用多路径进行聚会链路磁盘挂载scsi磁盘时候需要查看系统中是否安装多路径软件,一般的在CentOS7/Redhat/Ubuntu 20.04 默认自带,如果没有请按照以下流程安装;
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    # Redhat / CentOS (安装与开机自启)
    yum install device-mapper-multipath
    systemctl enable multipathd
    #chkconfig --level 2345 multipathd on # Deprecated(新版本启用)
    systemctl start multipathd || service multipathd start

    # Ubuntu 20.04
    apt install multipath-tools
    systemctl enable multipathd && systemctl start multipathd
    systemctl status multipathd
    # ● multipathd.service - Device-Mapper Multipath Device Controller
    # Loaded: loaded (/lib/systemd/system/multipathd.service; enabled; vendor preset: enabled)
    # Active: active (running) since Fri 2020-09-11 08:40:22 UTC; 1 day 4h ago
    # TriggeredBy: ● multipathd.socket
    # Process: 761 ExecStartPre=/sbin/modprobe -a scsi_dh_alua scsi_dh_emc scsi_dh_rdac dm-multipath (code=exited, status=0/SU>

0x03 补充说明

1.RAID分层快照

注:Replay即戴尔SC系列的快照功能默认的Replay快照配置文件是“Daily”(每天一次)。
“服务器 - 操作系统”一项可以选择默认的主机连接路径优化策略,初始设置“Other Singlepath”应该是兼容性最好也最保守的。
RAID分层的目的:节约容量而不牺牲性能.

熟悉企业存储的朋友应该都知道,RAID 5/6由于写惩罚较大因而随机写性能偏低;RAID 10性能均衡但空间浪费率较多。一般存储产品只能在二者之间取舍,无法两全齐美,而戴尔SC的RAID分层则比较好地解决了这个问题。

  • 针对Windows文件系统和微软应用程序,戴尔SC系列的Replay Manager是通过调用VSS(卷影副本)来实现一致性快照的。
  • 针对VMware的版本以及专为Oracle设计的APM(应用保护管理器),可以有效实现对虚拟机、数据库的快照保护。

我们在测试中创建了一个1024GB的卷,采用的存储配置文件为“Balanced”跨RAID级别分层,SCv2000底层空间完全虚拟化打散为2MB页面(数据块);

WeiyiGeek.Balanced

WeiyiGeek.Balanced

根据这个统计信息,我们写入的大约68MB数据在RAID 10-DM分层占用了3倍的物理磁盘空间,RAID开销为66.6%。正如上一篇中提到过的——“由于这台机器是5块2TB硬盘,高性能分层没有用传统的单镜像盘RAID 10,而是双重镜像的RAID 10-DM(相当于3副本),就是为了避免Rebuild时间窗口内双盘故障的风险”。


我们手动创建一个Replay快照,这是触发Data Progression RAID分层的前提,在“创建Replay”的对话框中,可以选择快照过期时间、描述,以及是否立即“从Replay创建卷”——也就是利用快照时间点数据状态生成一个依赖指针的“虚拟”卷;

WeiyiGeek.Replay快照

WeiyiGeek.Replay快照

在跨RAID级别分层中的数据一旦被快照冻结,就意味着“需要重新平衡”。这里面遵循的一个重要原则,就是目标RAID级别—— RAID 6的读性能不比RAID 10(DM)差,却能够显著节约容量。而这种分层的前提机制,是 一直将数据写入到高性能分层,无论写入新的逻辑数据块还是覆盖已有数据的块都以RAID 10(DM)形式存放,所以写性能也不会因此而受到影响。

戴尔SCv2000将驱动器划分成2MB条带,并以此为单位创建RAID。除了SC9000、8000和SC4020等中高端型号支持在 不同驱动器(多种SSD、HDD)之间的自动分层之外,Data Progression于相同性能驱动器的层级内部,还可以做 不同RAID级别之间的转换。这也是Compellent家族存储的一个重要特色。

WAIBU

WAIBU

经过重新平衡之后,我们看到原有的“活动空间”已经都转换为RAID 6-10(8+2)级别,同时RAID开销下降为20%。这里还给出了“总磁盘空间”相对RAID 10 DM节省了11.62GB。

WAIBU

WAIBU

创建Replay之后,如果向卷内继续写入数据,无论到新的数据块还是覆盖原有块的内容,都会以RAID 10 DM级别存放(如下图)。RAID 6中的快照数据将保持不变,直至生成新的Replay,并到达下一次Data Progression数据迁移周期。

WAIBU

WAIBU

结语
RAID分层和Replay快照是戴尔 SCv2000比较有特色的两大功能,在入门级SAN阵列的价位上,并不是所有产品都具备这些智能特性。而更重要的是,用好这些功能并不难,它们可以帮助用户有效降低TCO并发挥更大的价值,重新定义存储的经济性。


0x04 入坑与出坑

1.存储驱动器异常指示灯

描述:Dell Enterprise 硬盘驱动器 (HDD) 和 Enterprise 固态驱动器 (eSSD) 是可以安装在 SCv2000/SCv2020 存储系统中的唯一驱动器(左亮绿右灭是正常)。

WeiyiGeek.

WeiyiGeek.


2.集群共享卷Lun组块存储并不支持网络文件系统同步共享

描述: 由于FC/SAS接口连接的主机映射到系统中都将变成块设备而并非是文件系统,在Dell Storage SCv2000中创建的是块设备存储,在加入服务器集群中可以映射同一块存储, 虽然可以同时读但是却不能同时写,如果同时写则会导致磁盘的逻辑结果被破坏,从而不能正常使用;
问题原因: 由于SAN提供的共享磁盘是块存储不是文件系统,这将会产生一个问题即磁盘空间分配不一致;假若一个共享磁盘挂载到多个节点上时,文件系统会加载FAT到每一个节点内存中,当其中一个节点开始在此文件系统进行写操作时候,此节点上的文件系统将会查询FAT和可用block,然后分配使用并进行修改但是不会修改其它节点上的FAT; 所以此时如果其它节点也尝试写文件时候,将会分配与之前相关的block供起使用,因为它并不知道此Block已被另外一个节点占用了;


3.SC2000存储管理密码忘记重置

操作步骤:

1
2
3
4
5
6
7
8
9
10
11
12
1.创建文本文件 unlock <usernam>  比如:unlock Admin
2.保存文件,文件名为unlock.phy 如附件
3.把这个文件拷贝到U盘(注意格式是`msdos/fat32`)
4.将U盘插入到SC2000存储面板的控制器
4.插入圆形串口到lead controller 之上 (DELL 是一个圆形像手机耳机插口的一条线,另外一端是9针串口线)
5.采用圆形串口终端(`波特率 115200 / 流控制为 none / 停止位 1 / 数据位 8 / 奇偶位 none`)然后用U盘上的特殊账户(`登录Admin 密码mmm`)
6.解锁并重置password为默认的密码:mmm
> mc user user show
> shellaccess developer
> mc user user passrst 1
7.此时登陆EM软件重置密码然后添加一个管理员用户即可;
8.退出终端并移除U盘

WeiyiGeek.串口终端

WeiyiGeek.串口终端

命令执行效果:

1
2
3
4
5
6
7
8
9
10
sn222950> mc user user  show
sn222950> [222950] MCUser:MCUser 01/04/2021 09:01:34 PM
Inde UserLogin UserRealName UserLa UserPrivileges OperSta tus Notes IsDirUser DirectoryID I sLDAP AuthFa AccountLo ExpDays PWExpirationWarningTxt
1 Admin Compellent Admin User zh_CN (5) Admin (1) Up Default Compellent User (0) False (0) False 0 (1) True 0
Walk: Display 1 of 1

sn222950> shellaccess developer
WARNING Certain Shell Commands are now run at the risk of the user

sn222950> mc user user passrst 1

注意事项:

  • 1.这个操作是要连着串口线到leader的控制器上的,串口线连上去,插上U盘
  • 2.`串口连上在超级终端界面用这个账户登录(Admin,mmm),不要退出,不要拔u盘,然后再用EM软件去登录(Admin,mmm)进行重置密码;
  • 3.如果不清楚那个是leader控制器,2个控制器都`试一下
  • 4.需要用兼容性好些的U盘,有的U盘可能不识别,系统识别到U盘时串口有提示

参考来源