2019年8月

  最近接触一台联想的高密度服务器,D2机箱里面有四个sd530节点,通过D2机箱后置的管理口登录,只能管理随机的一个节点,因为四个节点的管理IP地址都是192.168.70.125,如果通过关机等办法,也能确定每个节点,但是这样耗时耗力,也不是IT人干的事,好在D2机箱自带统一管理功能,但是出厂默认是禁用的,需要手动开启,我在这里记录下。

D2机箱的统一管理模块叫SMM,类似于刀箱Flex的CMM。

61425-hy1c8wrsu8f.png

SMM的管理协议默认是关闭的,开启它需要用到ipmitool。

有关命令如下

• 查询:

ipmitool -I lanplus -H <XCC’s IP> -U USERID -P PASSW0RD raw 0x3A 0xF1 0x00

• 启用:

ipmitool -I lanplus -H <XCC’s IP> -U USERID -P PASSW0RD raw 0x3A 0xF1 0x01

• 禁用:

ipmitool -I lanplus -H <XCC’s IP> -U USERID -P PASSW0RD raw 0x3A 0xF1 0x02

只需要用到第二条开启的命令

78905-rbw25p8s2f.png

SMM端口首次DHCP,如果 SMM 无法在2分钟内从DHCP服务器获取IP,它将使用静态IP

SMM的缺省静态IP是192.168.70.100 和flex 的CMM一样

92075-jz5ojujzve.png

浏览器中打开https://192.168.70.100

51794-3xo4vc20c62.png

更改默认密码

缺省密码复杂性规则:
• 长度至少为 10 个字符
• 必须包含至少一个数字(0 到 9)
• 必须包含以下三个类别中的至少两个类别:
– 大写字母(A 到 Z)
– 小写字母(a 到 z)
– 非字母字符,例如 !@#$%^*-_+=().:`|?"\

06896-fef8izzs83.png

登录到SMM管理界面,在这里可以很方便的打开任何一个节点的管理界面。

00477-tuau80g669.png

共有六个功能选项卡:
• Summary(摘要)
• Power(电源)
• Cooling(散热)
• System Information(系统信息)
• Event Log(事件日志)
• Configuration(配置)

79249-7pai9i3oo6v.png

一重要客户,要求投标方提供SSD做缓存加速的方案,并提供测试报告。刚开始选择INTEL CAS,客户要求是SUSE系统,而INTEL CAS从去年8月就不再更新,只能支持到SUSE 12SP3,而客户要求操作系统必须是SUSE 12 SP4,所以不得不重新选择方案。

INTEL CAS软件支持的操作系统版本:

22692-2meethye62y.png

在Linux下,使用SSD为HDD加速,目前较为成熟的方案有:flashcache,enhanceIO,dm-cache,bcache等,多方面比较以后最终选择了bcache。

bcache 是一个 Linux 内核块层超速缓存。它允许使用一个或多个高速磁盘驱动器(例如 SSD)作为一个或多个速度低得多的硬盘的超速缓存。bcache 支持直写和写回,不受所用文件系统的约束。默认情况下,它只超速缓存随机读取和写入,这也是 SSD 的强项。它还适合用于台式机、服务器和高端储存阵列

主要功能:

1,可以使用单个超速缓存设备来超速缓存任意数量的后备设备。在运行时可以挂接和分离已装入及使用中的后备设备。
2,在非正常关机后恢复 - 只有在超速缓存与后备设备一致后才完成写入。
3,SSD 拥塞时限制传至 SSD 的流量。
4,高效的写回实施方案。脏数据始终按排序顺序写出。
5,稳定可靠,可在生产环境中使用。

关于bcache的更多介绍都在这里

https://bcache.evilpiepirate.org/
https://wiki.archlinux.org/index.php/Bcache
https://www.suse.com/zh-cn/documentation/sles-12/stor_admin/data/sec_multitiercache_bcache.html

CentOS和Ubuntu都可以使用bcache。我是在suse下安装的,记录下,防止忘记。

1,配置suse 下的zypper本地安装源

zypper ar file:///yumdata local
ar :添加安装源
file:///yumdata suse安装镜像的路径
local zypper安装源的名称

zypper更多参数介绍:

lr 列出所有定义的安装源。
ar 添加一个新的安装源。
rr 删除指定的安装源。
nr 重命名指定的安装源。
mr 修改指定的安装源。
ref 刷新所有安装源。
clean 清除本地缓存。

04377-d6hy4gouqoj.png

查看zypper安装源

91835-jvw3v83pg1.png

2,安装bcache软件

zypper install bcache-tools

71845-0crdy73q3e9w.png

3,加载内核

modprobe bcache
lsmod |grep bcache

有如下输出内容,说明内核加载成功

27438-rsk9t7hln3c.png

查看当前磁盘:三个2TB HDD,一个400GB NVME SSD

31740-tkdttgv6kb.png

4,绑定SSD和HDD

bcache有两种设备,一个是backing,一个是cache,backing指的就是存放数据的后端磁盘,cache很好理解,就是高速缓存盘SSD
bcache 可以支持将用来做缓存的ssd和做数据存放的hdd一次性注册,而不需要手动连接挂载ssd和hdd

make-bcache -B /dev/sdb /dev/sdc /dev/sdd -C /dev/nvme0n1

57261-aswtdc31ev5.png

5,查看bcache相关信息

lsblk

82255-ydvgoycymgh.png

cat /sys/block/bcache0/bcache/state
no cache:该backing device没有attach任何caching device
clean:一切正常,缓存是干净的
dirty:一切正常,已启用回写,缓存是脏的
inconsistent:遇到问题,后台设备与缓存设备不同步

49969-bkys5c3wn1j.png

查看缓存数据量

cat /sys/block/bcache0/bcache/dirty_data

81559-sitz99x9c.png

查看缓存模式,默认情况下是直通超速缓存模式

cat /sys/block/bcache0/bcache/cache_mode

28766-3pbpdfh1d63.png

6,为了提高写的性能,需要修改缓存模式为写回

echo writeback > /sys/block/bcache0/bcache/cache_mode

36891-bf043px9oh8.png

7,格式化使用

mkfs.xfs /dev/bcache0
mkdir /cache
mount /dev/bcache0 /cache

8,开机自动挂载

由于bcache设备在每次重启后,N的值并不是固定的,有可能重启后,原先的bcahe0变为bcache1,而bcache1却变成了bcache0,。所以,不能将/dev/bcache作为磁盘挂载,需要使用该磁盘的UUID进行挂载,通过以下命令可以获取磁盘的UUID

blkid /dev/bcache0

00213-00fv9ya05jnnv.png

然后将uuid写入/etc/fstab 实现开机自动挂载

9,使用fio测试性能

先安装编译工具。

zypper install make gcc* kernel-devel kernel-headers

53161-nghlkwarb5h.png

下载fio 编译安装。fio下载连接:http://brick.kernel.dk/snaps/

linux-be3v:~ # cd fio-3.15/
linux-be3v:~/fio-3.15 # ./configure
linux-be3v:~/fio-3.15 # make
linux-be3v:~/fio-3.15 # make install

10,测试有缓存

fio -filename=/dev/bcache0 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=4k -size=200G -numjobs=10 -runtime=60 -group_reporting -name=mytest

86413-2h2uu2vtbsv.png

11,测试无缓存

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=4k -size=200G -numjobs=10 -runtime=60 -group_reporting -name=mytest

16572-pl1767ln86.png

后附常用bcache命令

1,查看cache 缓存盘的CACHE_SET_UUID

    ll /sys/fs/bcache

2,注销缓存盘

通过缓存盘的CACHE_SET_UUID,在/sys/fs/bcache/<cset.uuid>/unregister写入1,即可进行注销

    echo 1 >/sys/fs/bcache/06e33354-7c21-4c52-990d-1a653617ab20/unregister

3,停用后端磁盘

    echo 1 > /sys/block/sdb/bcache/stop
    echo 1 > /sys/block/sdc/bcache/stop

4,把 cache 上面的数据刷到后端磁盘上面

    echo 0 > /sys/block/bcache0/bcache/writeback_percent

5,fio测试工具常用参数说明

filename=/dev/sdb        测试文件名称,通常选择需要测试的盘的data目录。
direct=1                 测试过程绕过机器自带的buffer。使测试结果更真实。
rw=randwrite             测试随机写的I/O
rw=randrw                测试随机写和读的I/O
bs=16k                   单次io的块文件大小为16k
bsrange=512-2048         同上,提定数据块的大小范围
size=5g    本次的测试文件大小为5g,以每次4k的io进行测试。
numjobs=30               本次的测试线程为30.
runtime=1000             测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。
ioengine=psync           io引擎使用pync方式
rwmixwrite=30            在混合读写的模式下,写占30%
group_reporting          关于显示结果的,汇总每个进程的信息
lockmem=1g               只使用1g内存进行测试。
zero_buffers             用0初始化系统buffer。
nrfiles=8                每个进程生成文件的数量

具体的安装过程参考联想ThinkSystem机器安装2008R2详细教程

这里强调以下注意事项:

2008R2的版本必须是SP1,在集成驱动过程中关闭所有的安全软件
此次阵列卡驱动包含730-8i 2GB 
二代处理器的性能计数器也可以正常驱动

此次驱动包适用于以下阵列卡

ThinkSystem RAID 530-8i PCIe 12Gb Adapter
ThinkSystem RAID 730-8i 1GB Cache PCIe 12Gb Adapter
ThinkSystem RAID 730-8i 2GB Cache PCIe 12Gb Adapter
ThinkSystem RAID 930-8i 2GB Flash PCIe 12Gb Adapter
ThinkSystem RAID 930-16i 4GB Flash PCIe 12Gb Adapter
ThinkSystem RAID 930-24i 4GB Flash PCIe 12Gb Adapter
ThinkSystem RAID 930-8e 4GB Flash PCIe 12Gb Adapter
ThinkSystem RAID 930-4i 2GB Flash Flex Adapter
ThinkSystem RAID 530-4i Flex Adapter
ThinkSystem RAID 530-8i Dense Adapter

安装截图如下:

36242-7mdbv2zo1p3.png

58328-fxis634b92.png

17715-nr1hiwjz8vc.png

[scode type="blue"]打赏后获取驱动,有任何问题,加我微信![/scode]

复制(Replication)是将一组数据从一个数据源拷贝到一个或多个数据源的技术。方式主要分为同步复制和异步复制:

1、同步复制:要求每一个写入操作在执行下一个操作处理之前,在源端和目标端都能完成。特点是数据丢失少,会影响生产系统性能,除非目标系统物理上离生产系统比较近。

2、异步复制:在处理下一个操作前,不等待数据复制到目标系统中。特点是复制的数据与源数据有时间差,但这种复制对生产系统性能影响较小。

在灾备方案的设计中,数据复制技术的选择关系到最终灾备效果,即RTO与RPO值的大小。根据数据复制技术在不同系统层的应用,可以分为如下五种:

此文转载自公众号:ICT_Architect

1、基于主机的数据复制技术

基于主机的数据复制是通过磁盘卷的镜像或复制进行的,业务进行在主机的卷管理器层,对硬件设备尤其是存储设备的限制小,利用生产中心和备份中心的主机系统通过IP网络建立数据传输通道,数据传输可靠,效率相对较高;通过主机数据管理软件实现数据的远程复制,当主数据中心的数据遭到破坏时,可以随时从备份中心恢复应用或从备份中心恢复数据。

基于主机的数据复制不需要两边采用同样的存储设备,具有较大的灵活性,缺点是复制功能会占用一些主机的CPU资源,对软件要求较高(很多软件无法提供基于时间点的快照功能),对主机的性能有一定的影响。

英方独有的基于操作系统层面的字节级数据捕获与复制技术在实施过程中,首先会做初始化的数据镜像,然后通过核心的复制引擎,开始旁路监听所有文件系统的写操作,例如Rename、SetAttr等,都能准确的捕获,并通过数据序列化传输技术(Data - Order Transfer,简称“DOT”)异步传输到灾备端,完成整个数据的捕获和复制过程。

81643-2mlpxdvf0n4.png

△字节级复制技术原理图

首先,字节级复制的核心引擎工作时,并没有复杂的数学运算,对生产机计算资源占用可以忽略,仅仅是旁路捕获数据。

其次,所有的数据都是从内存中捕获,并不涉及生产主机存储的读取操作,因此数据复制过程不占用主机的存储IO资源。

最后,基于字节级的数据复制粒度最小到字节,因此对于带宽资源的要求极低,是适应于异地远距离、及面向未来的混合IT环境和云化架构的一种复制方式。

2、基于应用和中间层的数据复制技术

应用层面的数据复制通过应用程序与主备中心的数据库进行同步或异步的写操作,以保证主备中心数据的一致性,灾备中心可以和生产中心同时正常运行,既能容灾,还可实现部分功能分担,但是该技术的实现方式复杂,与应用软件业务逻辑直接关联,实现和维护难度较高,并且使用应用层面的数据复制会提高系统的风险与数据丢失的风险。

独立于底层的操作系统、数据库、存储,应用可以根据需求实现双写或者多写,从而实现主本和多个数据副本之间的数据复制功能。这种由应用实现的技术,可以在中间件或者应用平台层面进行封装和实现,对上面的应用透明,也可以在应用层面实现。

其主要优势是可根据需求定制、可实现应用和数据库层面的复制;主要不足是目前市场上没有成熟、适合传统IT企业大规模推广使用的中间件产品。如果完全由应用封装平台或者应用来实现,代码的复杂程度提高,增加了应用的维护成本。

3、基于数据库的数据复制技术

基于数据库软件的复制技术包括物理复制和逻辑复制两种方式。

逻辑复制是利用数据库的重做日志、归档日志,将主本所在站点的日志传输到副本所在站点,通过重做SQL的方式实现数据复制。逻辑复制只提供异步复制,主副本数据的最终一致性,无法保证实时一致性;

物理复制不是基于SQL Apply操作来完成复制,而是通过redo log日志或者归档日志在副本站点的同步或者异步持久化写来实现复制功能,同时副本站点的数据可以提供只读功能。

开放平台数据库复制技术则是一种基于数据库log(日志)的结构化数据复制技术,它通过解析源数据库在线log或归档log获得数据的增、删、改变化,再将这些变化应用到目标数据库,使源数据库与目标数据库同步,以达到多站点间数据库可双活甚至多活,实现业务连续可用和容灾的目的。

44201-k1ngvkpta0o.png

△数据库日志分析技术

基于数据库的数据复制是对数据库记录级别、表级别容灾高可用的基础技术,英方数据库容灾技术结合了主机复制和数据库日志分析的优点,提高了系统应用的灵活性,可实现数据库应用多活,同时也极大减少了数据库应用的增量数据传输。在细粒度数据容灾、广域云化容灾领域仍然具有广阔的应用前景。

数据库语义级的实时数据同步,在数据库正常使用时,自动完成源端到备端数据的初始化全量复制,并实时监控及同步复制增量数据,其正常流程的状态转换及条件如下:

38867-ez2mnu98up6.png

英方i2Active便是基于redo log日志分析技术的Oracle数据实时复制工具,具有简单灵活、高性能、非侵入、低影响、低于秒级延迟,低成本的特点,部署和使用也非常简便。能够帮助用户在复杂的应用环境下完成Oracle容灾备份、数据迁移、业务数据分发、构建大型数据仓库等技术数据整合等工作。

08611-53aj8hsnhd2.png

△Active数据库语义级复制

4、基于存储系统网关的数据复制技术

存储网关位于服务器与存储之间,是构架在SAN网络上的专用存储服务技术。这项技术基于存储虚拟化技术。

存储虚拟化的直接定义:在存储设备中形成的存储资源透明抽象层,即存储虚拟化是服务器与存储间的一个抽象层,它是物理存储的逻辑表示方法。其主要目的就是要把物理存储介质抽象为逻辑存储空间,将分散繁杂的异构存储管理整合为统一简单的集中存储管理,将人们所面对的众多存储问题,由繁化简(其中包括存储的读写方式、连接方式、存储的规格或结构等),由散化整(存储管理)的过程就是存储虚拟化。

存储网关通过对于进入的IO数据流提供各类数据存储服务,大幅提升了在服务器或者存储层面难以达到的灵活性、多样性、异构化等多种存储服务能力。利用存储网关,对于后端的存储数据可以提供远程数据复制、异构化存储融合、存储设备高可用镜像、快照服务、数据迁移服务甚至于部分存储网关可以提供精准的持续数据保护连续数据恢复服务。

由于存储网关卸载了服务器和阵列的复制工作负载,它可以跨越大量的服务器平台和存储阵列运行,因而使它成为高度异构的环境下的容灾技术的理想选择。另外,由于带宽优化、数据恢复精细化等方面独有的优势,这项技术也成为比较主流的一种灾备技术。

这项技术主要争论点在于性能保障能力的发展程度。近年来,随着SAN应用的不断普及,SAN网络中由异构存储设备和爆炸式增长的数据量所带来的管理复杂性、资源利用率低、存储设备自身数据服务能力低等问题促进了存储网关的发展和应用。

5、基于存储介质的数据复制

通过存储系统内建的固件或操作系统、IP网络或光纤通道等传输介质连结,将数据以同步或异步的方式复制到远端,从而实现生产数据的灾难保护。

采用基于存储介质的数据复制技术建设容灾方案的特点主要是对网络连接及硬件的要求较高。基于存储的复制可以是“一对一”复制方式,也可以是“一对多或多对一”的复制方式,即一个存储的数据复制到多个远程存储或多个存储的数据复制到同一远程存储,而且复制可以是双向的。

存储复制技术使基于实现存储磁盘阵列之间的直接镜像,通过存储系统内建的固件(Firmware)或操作系统,利用IP网络或光纤通道等传输界面连结,将数据以同步或异步的方式复制到远端。当然,一般情况下这种模式,必须同等存储品牌并且同等型号的存储系统控制器之间才能实现,配备低延迟大带宽也是必要条件之一。

在基于存储阵列的复制中,复制软件运行在一个或多个存储控制器上,非常适合拥有大量服务器的环境,原因如下:

独立于操作系统;能够支持Windows和基于Unix的操作系统以及大型机(高端阵列);许可费一般基于存储容量而不是连接的服务器数量;不需要连接服务器上的任何管理工作。

由于复制工作被交给存储控制器来完成,在异步传输本地缓存较大的时候可以很好的避免服务器的性能开销过大的问题,从而使基于存储阵列的复制非常适合关键任务和高端交易应用。

综述

在实际工作中,并不能说哪类技术就一定优于另一类技术,优势永远是一个相对的概念,在实际应用中,企业需要选择更加适合自身业务场景的技术路线,毕竟只有适合的,才是最好的。

一,VMware Horizon View 的内部版本号和版本对应关系

二,NVIDIA虚拟GPU软件支持的GPU列表

三,Dell 服务器 ESXi返回/无法初始化nvml:未知错误 NVIDIA GPU

四,Horizon系列之安装配置CentOS7虚拟桌面

五,Horizon系列之安装配置Ubuntu18虚拟桌面

六,Horizon系列之CentOS虚拟桌面安装配置VGPU

七,Horizon系列之Ubuntu虚拟桌面安装配置VGPU

八,VGPU License服务器高可用部署方案详细教程

九,Horizon系列之安装配置Windows Server 2016 RDS桌面

十,NVIDIA VGPU软件功能参数对比

十一,Horizon系列之替换各组件自签名SSL证书