慢慢来,多看、多问、多总结,肯定是可以攻克的。

BeeGFS升级方案

  • buddy groups

Modifying operations will always be sent to the primary first, which takes care of the mirroring process. File contents and metadata are mirrored synchronously, i.e. the client operation completes after both copies of the data were transferred to the servers..

在正常操作中,伙伴组中的一个存储目标(或元数据服务器)被认为是主要的,而另一个是次要的。 修改操作将始终首先发送到主节点,主节点负责镜像过程。 文件内容和元数据是同步镜像的,即客户端操作在数据的两个副本都传输到服务器后完成。

Storage and metadata mirroring with high availability is based on so-called buddy groups.

In general, a buddy group is a pair of two targets that internally manage data replication between each other.

The buddy group approach allows one half of all servers in a system to fail while all data is still accessible.

It can also be used to put buddies in different failure domains or different fire domains, e.g., different racks or different server rooms

ethtool -i ib0

  • https://www.cnblogs.com/sctb/p/13179542.html

  • 传统的TCP/IP技术在数据包处理过程中,要经过操作系统及其他软件层,需要占用大量的服务器资源和内存总线带宽,数据在系统内存、处理器缓存和网络控制器缓存之间来回进行复制移动,给服务器的CPU和内存造成了沉重负担。

RDMA(RemoteDirect Memory Access)技术全称远程直接内存访问

  • 尤其是网络带宽、处理器速度与内存带宽三者的严重"不匹配性",更加剧了网络延迟效应。

  • RDMA是一种新的直接内存访问技术,RDMA让计算机可以直接存取其他计算机的内存,而不需要经过处理器的处理。RDMA将数据从一个系统快速移动到远程系统的内存中,而不对操作系统造成任何影响。

  • ifdown网口

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
[root@VM-0-8-centos home]# uname -a
Linux VM-0-8-centos 3.10.0-1160.11.1.el7.x86_64 #1 SMP Fri Dec 18 16:34:56 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

linux:系统名

VM-0-8-centos:节点名称
3.10.0-1160.11.1.el7.x86_64:操作系统发行版本
#1 SMP Fri Dec 18 16:34:56 UTC 2020:内核版本
x86_64:硬件名称
x86_64:机器硬件名
x86_64:处理器架构
GNU/Linux:操作系统
————————————————
版权声明:本文为CSDN博主「小王有烦恼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42940935/article/details/119533011

day2 命令篇

1
2
3
4
5
6
7
 Example: Start a write benchmark on all storage targets of all servers with a
  blocksize of 512 KiB and a file size of 200 GiB, simulating 10 client streams
  # beegfs-ctl --storagebench --alltargets --write --blocksize=512K \
     --size=200G --threads=32

 Example: Query benchmark status/result of all targets
  # beegfs-ctl --storagebench --alltargets --status

#开启重用。允许将 TIME-WAIT sockets 重新用于新的 TCP 连接。 net.ipv4.tcp_tw_reuse = 1

1
2
3
4
5
6
# 【-d 显示磁盘使用情况,-x 显示详细信息】
# d: detail
iostat -d -x -m 1 1

vmstat -d 1  查看磁盘读写
sar -d 1 1 

文件的扩展属性

setfattr -n user.foo -v bar test #设置 getfattr -n user.foo test # 读取

扩展属性,在一级存储迁移前自定义一个扩展属性,迁移后在二级存储上上看看有没有迁移过去

内容校验,有MD5的选项

day1 资料篇

https://doc.beegfs.io/latest/advanced_topics/beeond.html?highlight=beeone

文章地址:

http://localhost:1313/post/oceanbase/2022/oceanbase_day2/

沟通步骤

  1. 准备好一个ppt,在写代码之前演示最终目标 和架构设计 就是如何去实现的 【不要说公司部门环境不对 着就是最终结果,不要试着看看,一定是可以完全上线的项目,非demo和一个知识点。自己认为真的 不是闹着玩的。。】

    一、这个技术出现的背景、初衷和要达到什么样的目标或是要解决什么样的问题

    二、这个技术的优势和劣势分别是什么

    三、这个技术适用的场景。任何技术都有其适用的场景,离开了这个场景

    四、技术的组成部分和关键点。

    五、技术的底层原理和关键实现

    六、已有的实现和它之间的对比

  2. 经过领导,专家 进行鸡蛋里挑骨头。【自己做好了别人路了胡扯,不会对别人产生任何影响,做事和做人一样,无论熟悉人,还是老师,领导,不相关人 反对 他们反馈信号,接受质疑,经过九九八十一难考验,并且你还在坚持认为对的。】

  3. 最后融合别人建议,然后完善你项目。【不听老人言,吃亏在眼前,不敢接受别人批评,说明自己完全没有把握,才去否定 愤怒方式】

  4. nodeId 和target ID 的关系

​ beegfs-ctl –listtargets –longnodes

​ beegfs-check-servers