CN112003726B - 一种快速部署Beegfs管理服务节点高可用的配置方法 - Google Patents

一种快速部署Beegfs管理服务节点高可用的配置方法 Download PDF

Info

Publication number
CN112003726B
CN112003726B CN202010695906.5A CN202010695906A CN112003726B CN 112003726 B CN112003726 B CN 112003726B CN 202010695906 A CN202010695906 A CN 202010695906A CN 112003726 B CN112003726 B CN 112003726B
Authority
CN
China
Prior art keywords
configuration
instance
daemon
server
beegfs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010695906.5A
Other languages
English (en)
Other versions
CN112003726A (zh
Inventor
朱敬强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010695906.5A priority Critical patent/CN112003726B/zh
Publication of CN112003726A publication Critical patent/CN112003726A/zh
Application granted granted Critical
Publication of CN112003726B publication Critical patent/CN112003726B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0889Techniques to speed-up the configuration process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开一种快速部署Beegfs管理服务节点高可用的配置方法,包括S100,在双系统节点中部署配置文件包,所述配置文件包中包含配置脚本;S200,需要配置管理服务节点高可用的节点信息写入配置文件中;S300,运行配置脚本,获取服务器权限,调取配置文件中的信息创建服务器集群;S400,运行配置脚本,在服务器集群中配置资源。本申请提出的一种快速部署Beegfs管理服务节点高可用的配置方法通过配置文件和配置脚本配合能够快速的在双系统节点中布置Beegfs管理服务节点高可用,提高配置效率,避免配置过程中的配置错误。

Description

一种快速部署Beegfs管理服务节点高可用的配置方法
技术领域
本发明涉及Beegfs管理服务节点高可用的配置领域,尤其涉及一种快速部署Beegfs管理服务节点高可用的配置方法。
背景技术
随着高性能计算的快速发展,高性能(High Performance Computing,简称HPC)集群对并行文件系统的要求不断提高。为满足HPC集群不断提升的需求,Beegfs并行文件系统应运而生。
Beegfs的组成架构包含客户端(Clients)、Meta服务节点(Metadata Servers)、存储服务节点(Storage Servers)、管理服务节点(Management Host,简称MGT)和运维监控系统(Graphical Administration and Monitoring System)。管理服务节点(MGT)中存储了整个Beegfs并行文件系统的配置信息,负责整个BeeGFS的集群的管理工作,是整个Beegfs文件系统的大脑。为了实现MGT的冗余性,增加集群的安全性,目前普遍采用drbd+pacemaker这种方式手动将Beegfs配置于Linux系统自带的双机系统,允许一台节点发生故障,实现Beegfs并行文件系统的高可用。这种方式配置过程复杂,且过程中需要配置的内容较多,管理服务节点配置费时且配置过程中极易发生错误,导致效率低且经常会配置失败。
基于上述问题,本发明提供了一种快速部署Beegfs管理服务节点高可用的配置方法。
发明内容
本发明提供快速部署Beegfs管理服务节点高可用的配置方法,旨在解决现有技术中手动将Beegfs配置于Linux系统自带的双机系统,允许一台节点发生故障,实现Beegfs并行文件系统的高可用。这种方式配置过程复杂,且过程中需要配置的内容较多,管理服务节点配置费时且配置过程中极易发生错误,导致效率低且经常会配置失败。
为实现上述目的,本发明提供一种快速部署Beegfs管理服务节点高可用的配置方法,包括,
S100,在双系统节点中部署配置文件包,所述配置文件包中包含配置脚本;
S200,需要配置管理服务节点高可用的节点信息写入配置文件中;
S300,运行配置脚本,获取服务器权限,调取配置文件中的信息创建服务器集群;
S400,运行配置脚本,在服务器集群中配置资源。
优选地,所述配置文件中包括全局配置和文件系统配置,所述全局配置包含BeeGFS实例名称与BeeGFS实例下的文件系统,所述文件系统由文件系统头部名称列表表示,其中所述文件系统配置包括文件参数配置、资源防护配置、服务器配置、守护进程配置和目标配置;配置文件内容表示为:关键字=属性。
优选地,所述配置脚本通过配置文件中的全局配置创建集群实例,调取所述集群实例,运行集群实例中的方法,配置BeeGFS实例名称和实例名称下的文件系统。
优选地,所述配置脚本通过资源防护配置建立IPMI实例,调用IPMI实例,运行IPMI中的方法,配置ipmi-user和ipmi-password。
优选地,所述配置脚本通过文件参数配置建立文件系统实例,调用文件系统实例,运行文件系统实例中的方法,对文件系统的validation、ping-hosts、net-addresses和multicast-ports参数进行配置。
优选地,所述配置脚本通过服务器配置建立服务器实例,调用服务器实例,运行服务器实例中的方法,对服务器的peer、ipmi-ip、static-ips、mgmtd-daemons、meta-daemons、storage-daemons、admon-daemons进行配置。
优选地,所述配置脚本通过守护进程配置建立守护进程实例,调用守护进程实例,运行守护进程实例中的方法,对守护进程的targets、virtual-ips、nics、instance-name进行配置;
所述配置脚本配置了的虚拟网络接口实例,调用虚拟网络接口实例,创建网络接口标签配置nics,获取分配到虚拟网络接口的IP地址配置virtual-ips。
优选地,所述配置脚本通过目标配置建立目标实例,调用目标实例,运行目标实例中的方法,对目标的device和mount-path进行配置。
本申请提出的一种快速部署Beegfs管理服务节点高可用的配置方法具体有以下有益效果:
本申请提出的一种快速部署Beegfs管理服务节点高可用的配置方法通过配置文件和配置脚本配合能够快速的布置Beegfs管理服务节点高可用,提高配置效率,避免配置过程中的配置错误。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1是本发明实施例中快速部署Beegfs管理服务节点高可用的配置方法的流程图;
图2是本发明实施例中定义配置文件内容的切片;
图3是本发明实施例中对切片内容的划分定义;
图4是本发明实施例中ha.py中定义的路径;
图5是本发明实施例中ha.py中定义的指令;
图6是本发明实施例中ha.py中定义的指令选项;
图7是本发明实施例中command.py中对SERVER_MODE的描述;
图8是本发明实施例中定义的集群实例;
图9是本发明实施例中定义的文件系统实例;
图10是本发明实施例中定义的服务器实例;
图11是本发明实施例中定义的守护进程实例;
图12是本发明实施例中定义的目标实例;
图13是本发明实施例中定义的虚拟网络接口实例;
图14是本发明实施例中定义的资源实例;
图15是本发明实施例中定义的守护进程相关的群实例;
图16是本发明实施例中定义的监控连接的pacemaker资源实例。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参阅图1所示,本发明提供一种快速部署Beegfs管理服务节点高可用的配置方法,包括,
S100,在双系统节点中部署配置文件包,所述配置文件包中包含配置脚本;
S200,需要配置管理服务节点高可用的节点信息写入配置文件中;
S300,运行配置脚本,获取服务器权限,调取配置文件中的信息创建服务器集群;
S400,运行配置脚本,在服务器集群中配置资源。
更进一步的,所述配置文件中包括全局配置和文件系统配置,所述全局配置包含BeeGFS实例名称与BeeGFS实例下的文件系统,所述文件系统由文件系统头部名称列表表示,其中所述文件系统配置包括文件参数配置、资源防护配置、服务器配置、守护进程配置和目标配置;配置文件内容表示为:关键字=属性。
更进一步的,所述配置脚本通过配置文件中的全局配置创建集群实例,调取所述集群实例,运行集群实例中的方法,配置BeeGFS实例名称和实例名称下的文件系统。
更进一步的,所述配置脚本通过资源防护配置建立IPMI实例,调用IPMI实例,运行IPMI中的方法,配置ipmi-user和ipmi-password。
更进一步的,所述配置脚本通过文件参数配置建立文件系统实例,调用文件系统实例,运行文件系统实例中的方法,对文件系统的validation、ping-hosts、net-addresses和multicast-ports参数进行配置。
更进一步的,所述配置脚本通过服务器配置建立服务器实例,调用服务器实例,运行服务器实例中的方法,对服务器的peer、ipmi-ip、static-ips、mgmtd-daemons、meta-daemons、storage-daemons、admon-daemons进行配置。
更进一步的,所述配置脚本通过守护进程配置建立守护进程实例,调用守护进程实例,运行守护进程实例中的方法,对守护进程的targets、virtual-ips、nics、instance-name进行配置;
所述配置脚本配置了的虚拟网络接口实例,调用虚拟网络接口实例,创建网络接口标签配置nics,获取分配到虚拟网络接口的IP地址配置virtual-ips。
更进一步的,所述配置脚本通过目标配置建立目标实例,调用目标实例,运行目标实例中的方法,对目标的device和mount-path进行配置。
所述配置文件中包括全局设置和文件系统设置,其中所述文件系统设置包括资源防护配置、服务器配置、管理守护进程配置、标签守护进程配置、元数据守护进程配置、存储守护进程配置、管理目标配置、标签目标配置、元数据目标配置以及存储目标配置。其中所述全局设置为用空格分隔的名称列表,所述名称列表中的名称对应双系统节点中运行的BeeGFS实例,例[global1 global2 global3……],global1 global2 global3……分别表示不同的BeeGFS实例,所述全局设置还定义了各个BeeGFS实例下的文件系统头部名称列表,例global1:[name1 name2……]。所述文件系统头部名称列表中的元素为文件系统头部名称,文件系统头部名称包含file-systems中文件系统名称的头部,起到对文件系统分类的作用。所述文件系统验证配置提供partial和full选项,例“[name1]validation:partial/full”,通过partial验证name1管理节点的ping,name1对应的管理守护进程、标签守护进程、存储守护进程和元数据守护进程。通过full验证所有name1节点的ping,name1对应的管理守护进程、标签守护进程、存储守护进程和元数据守护进程。其中节点名称通过ping-host定义,例“[name1]ping-hosts:master-node login-node”,节点名称之间用空格间隔,节点的ping通过net-addresses指定,例“[name1]net-addresses:192.168.73.0/24192.168.74.0/24”,节点的ping之间用空格间隔且与所述节点名称一一对应,节点的端口通过multicast-ports定义,例“[name1]multicast-ports:5405 5406”端口之间通过空格间隔且与所述节点名称一一对应。
所述资源防护配置内容包括IPMI用户名和密码,用于连接IPMI,例“ipmi-user:root ipmi-password:pass123”。
所述服务器设置为在服务器上配置节点,包括备用服务器配置,IPMIip的配置,静态IP的配置,管理守护进程、元数据守护进程、存储守护进程、以及标签守护进程的配置。
例:
配置脚本通过[name1-server-server01]完成server01配置,配置内容包括:
peer:server02
ipmi-ip:10.1.1.101
static-ips:192.168.73.1 192.168.74.1
mgmtd-daemons:mgmtd
meta-daemons:meta01
storage-daemons:storage01
admon-daemons:admon
配置脚本通过[name1-server-server02]完成server02配置,配置内容包括:
peer:server01
ipmi-ip:10.1.1.102
static-ips:192.168.73.2 192.168.74.2
meta-daemons:meta02
storage-daemons:storage02
配置脚本通过[name1-server-server03]完成server03配置,配置内容包括:
peer:server04
ipmi-ip:10.1.1.103
static-ips:192.168.73.3 192.168.74.3
meta-daemons:meta03
storage-daemons:storage03
配置脚本通过[name1-server-server04]完成server04配置,配置内容包括:
peer:server03
ipmi-ip:10.1.1.104
static-ips:192.168.73.4 192.168.74.4
meta-daemons:meta04
storage-daemons:storage04
所述server01、server02、server03和server04为服务器名称,server01和server02通过peer相互选举,当server01故障或者维护时,位于server01上的集群资源将被移动到server02,同样的,当server02故障或者维护时,位于server02上的集群资源将被移动到server01;server03和server04在这里相同。“ipmi-ip:”配置服务器IPMI网络接口的IPv4地址。确保它们与“static-ip:”定义的不一样。“static-ips:”设置与服务器通信用的IPv4地址列表,IPv4地址列表中元素用空格分隔,IPv4地址列表与“net-address:”相对应,需要确保IPv4地址列表中元素与“ipmi-ip:”定义的不一样。Server01为管理服务器,server01中通过“mgmtd-daemons:mgmtd”配置了管理守护进程运行的首选服务器为server01;server01中通过“admon-daemons:admon”配置了标签守护进程运行的首选服务器为server01;server01中通过“meta-daemons:meta01”配置了meta01元数据守护进程运行的首选服务器为server01;server01中通过“storage-daemons:storage01”配置了storage01存储进程运行的首选服务器为server01;上述mgmtd、admon、meta01、storage01能切换到peer指定的server02运行。server02中通过“meta-daemons:meta02”配置了meta02元数据守护进程运行的首选服务器为server02;server02中通过“storage-daemons:storage02”配置了storage02存储进程运行的首选服务器为server02;meta02和storage02能切换到peer指定的server02运行。server03中通过“meta-daemons:meta03”配置了meta03元数据守护进程运行的首选服务器为server03;server03中通过“storage-daemons:storage03”配置了storage03存储进程运行的首选服务器为server03;meta03和storage03切换到peer指定的server04运行。server03中通过“meta-daemons:meta04”配置了meta04元数据守护进程运行的首选服务器为server04;server04中通过“storage-daemons:storage04”配置了storage04存储进程运行的首选服务器为server04;meta04和storage04切换到peer指定的server03运行。
配置脚本通过[name1-mgmtdDaemon-mgmtd]进行管理守护进程配置,所述管理守护进程配置内容包括管理守护进程目标、管理守护进程目标所挂载的文件系统,管理守护进程切换的虚拟IPv4地址列表配置虚拟IPv4地址对应的网络接口的配置,例:
virtual-ips:192.168.73.201/24 192.168.74.201/24
nics:eth0 ib0
targets:mgmtd
instance-name:name1
通过“targets:mgmtd”定义管理守护进程目标,通过“instance-name:name1”定义管理守护进程目标挂载的文件系统,通过“virtual-ips:192.168.73.201/24192.168.74.201/24”配置管理守护进程切换用的虚拟IPv4地址列表,虚拟IPv4地址列表管理向管理服务器传入的管理守护进程的来自系统中的其他服务器,通过“nics:eth0 ib0”配置管理守护进程切换用的虚拟IPv4地址对应的nic网络接口;管理守护进程切换用的虚拟IPv4地址与管理守护进程切换用的“nics”选项定义的接口对应,顺序相同。
配置脚本通过[name1-admonDaemon-admon]进行标签守护进程配置,标签守护进程配置内容包括标签守护进程目标、标签守护进程配置挂载的文件系统,标签守护进程切换用的虚拟IPv4地址列表配置和标签守护进程切换用的虚拟IPv4地址对应的网络接口的配置,例:
virtual-ips:192.168.73.210/24 192.168.74.210/24
nics:eth1 ib1
targets:admon
instance-name:name1。
通过“targets:admon”定义标签守护进程目标,通过“instance-name:name1”定义标签守护进程目标挂载的文件系统,通过“virtual-ips:192.168.73.210/24192.168.74.210/24”配置标签守护进程切换用的虚拟IPv4地址列表,标签守护进程切换用的虚拟IPv4地址列表管理向管理服务器传入的标签守护进程的来自系统中的其他服务器,通过“nics:eth1 ib1”配置管理守护进程切换用的虚拟IPv4地址对应的nic网络接口;标签守护进程切换用的虚拟IPv4地址与标签守护进程切换用的“nics”选项定义的接口对应,顺序相同。
元数据守护进程配置:
配置脚本通过[name1-metaDaemon-meta01]配置meta01元数据守护进程,meta01元数据守护进程配置内容包括meta01元数据守护进程目标、meta01元数据守护进程配置挂载的文件系统,meta01元数据守护进程切换用的虚拟IPv4地址列表配置和meta01元数据守护进程切换用的虚拟IPv4地址对应的网络接口的配置,例:
virtual-ips:192.168.73.202/24 192.168.74.202/24
nics:eth0 ib0
targets:meta01
instance-name:name1。
通过“targets:meta01”定义meta01元数据守护进程目标,通过“instance-name:name1”定义meta01元数据守护进程目标挂载的文件系统,通过“virtual-ips:192.168.73.202/24 192.168.74.202/24”配置meta01元数据守护进程切换用的虚拟IPv4地址列表,虚拟IPv4地址列表meta01元数据向meta01元数据服务器传入的meta01元数据守护进程的来自系统中的其他服务器,通过“nics:eth0 ib0”配置meta01元数据守护进程切换用的虚拟IPv4地址对应的nic网络接口;meta01元数据守护进程切换用的虚拟IPv4地址与meta01元数据守护进程切换用的“nics”选项定义的接口对应,顺序相同。
同样的,配置脚本通过[name1-metaDaemon-meta02]配置meta03元数据守护进程,内容如下例:
virtual-ips:192.168.73.204/24 192.168.74.204/24
nics:eth0 ib0
targets:meta02
instance-name:name1。
配置脚本通过[name1-metaDaemon-meta03]配置meta03元数据守护进程,内容如下例:
virtual-ips:192.168.73.206/24 192.168.74.206/24
nics:eth0 ib0
targets:meta03
instance-name:name1。
配置脚本通过[name1-metaDaemon-meta04]配置meta04元数据守护进程,内容如下例:
virtual-ips:192.168.73.208/24 192.168.74.208/24
nics:eth0 ib0
targets:meta04
instance-name:name1。
存储守护进程配置:
配置脚本通过[name1-storageDaemon-storage01]配置storage01存储守护进程,storage01存储守护进程配置内容包括storage01存储守护进程目标、storage01存储守护进程配置挂载的文件系统,storage01存储守护进程切换用的虚拟IPv4地址列表配置和storage01存储守护进程切换用的虚拟IPv4地址对应的网络接口的配置,例:
virtual-ips:192.168.73.203/24 192.168.74.203/24
nics:eth0 ib0
targets:storage01
instance-name:name1
通过“targets:storage01”定义storage01存储守护进程目标,通过“instance-name:name1”定义storage01存储守护进程目标挂载的文件系统,通过“virtual-ips:192.168.73.203/24 192.168.74.203/24”配置storage01存储守护进程切换用的虚拟IPv4地址列表,虚拟IPv4地址列表storage01存储向storage01存储服务器传入的storage01存储守护进程的来自系统中的其他服务器,通过“nics:eth0 ib0”配置storage01存储守护进程切换用的虚拟IPv4地址对应的nic网络接口;storage01存储守护进程切换用的虚拟IPv4地址与storage01存储守护进程切换用的“nics”选项定义的接口对应,顺序相同。
同样的,配置脚本通过[name1-storageDaemon-storage02]配置storage02存储守护进程,内容如下例:
virtual-ips:192.168.73.205/24 192.168.74.205/24
nics:eth0 ib0
targets:storage02
instance-name:name1。
配置脚本通过[name1-storageDaemon-storage03]配置storage03存储守护进程,内容如下例:
virtual-ips:192.168.73.207/24 192.168.74.207/24
nics:eth0 ib0
targets:storage03
instance-name:name1。
配置脚本通过[name1-storageDaemon-storage04]配置storage04存储守护进程,内容如下例:
virtual-ips:192.168.73.209/24 192.168.74.209/24
nics:eth0 ib0
targets:storage04
instance-name:name1。
配置脚本通过[name1-mgmtdTarget-mgmtd]进行管理目标配置,配置内容包括管理守护进程所在的节点路径以及节点的挂载点。例:
device:/dev/disk/by-id/LUN0
mount-path:/mnt/lun0。
配置脚本通过[name1-metaTarget-meta01]进行meta01元数据目标配置,配置内容包括meta01元数据守护进程所在的节点路径以及节点的挂载点。例:
device:/dev/disk/by-id/LUN0
mount-path:/mnt/lun0。
同样的,配置脚本通过[scratch-metaTarget-meta02]进行meta02元数据目标配置,例:
device:/dev/disk/by-id/LUN1
mount-path:/mnt/lun1。
配置脚本通过[name1-metaTarget-meta03]进行meta03元数据目标配置,例:
device:/dev/disk/by-id/LUN2
mount-path:/mnt/lun2。
配置脚本通过[name1-metaTarget-meta03]进行meta03元数据目标配置,例:
device:/dev/disk/by-id/LUN3
mount-path:/mnt/lun3。
配置脚本通过[name1-storageTarget-storage01]进行storage01存储目标配置,例:
device:/dev/disk/by-id/LUN4
mount-path:/mnt/lun4。
配置脚本通过[name1-storageTarget-storage02]进行storage02存储目标配置,例:
device:/dev/disk/by-id/LUN5
mount-path:/mnt/lun5。
配置脚本通过[name1-storageTarget-storage03]进行storage03存储目标配置,例:
device:/dev/disk/by-id/LUN6
mount-path:/mnt/lun6。
配置脚本通过[name1-storageTarget-storage04]进行storage04存储目标配置,例:
device:/dev/disk/by-id/LUN7
mount-path:/mnt/lun7。
所述配置文件包中包括配置脚本,所述配置脚本包括ha.py、utils.py和cluster.py、target.py、resourcegroup.py、server.py、resource.py、nic.py、command.py、config.py、connections.py、filesystem.py以及daemon.py脚本。
所述ha.py指定了管理用的工具(PACEMAKER="pacemaker"COROSYNC="corosync")、根据管理用工具分类的服务器、路径信息(图4所示)、指令(图5所示)以及指令选项(图6所示)。在所述command.py中定义所述ha.py中的指令以及指令选项的详细描述,如图7所示,对SERVER_MODE的描述。
所述utils.py定义了通过SSH秘钥连接服务器的所需的操作;定义了通过SCP复制文件到服务器的操作;定义了移除本地路径的操作;定义了用户确认操作;定义保存配置文件头的操作;定义了将内容保存到文件的操作;定义了判断服务器是否运行的操作;定义了判断脚本运行状态的操作。
所述ha.py和所述utils.py是两个基本的脚本,其余的脚本调用所述ha.py和所述utils.py中的内容以实现自身功能。
如图2和图3所示,所述config.py定义了配置文件内容的切片类:定义了配置文件的内容切片:关键字=属性;和定义包括切片关键字以及对应的属性切片实例;和定义获取关键字的方法:遍历切片关键字内容并返回;和定义获取属性的方法:通过关键字根据切片找到对应的属性。所述config.py还定义了配置类,配置类下定义了配置实例;和定义了调用切片实例的方法;和定义了读取文件系统配置内容并返回文件系统配置的方法:打开配置文件所在路径,打开配置文件,遍历关键字返回关键字下的属性,遍历属性返回属性下的子属性;进一步分析关键字与属性的方法如:通过统计文件系统头部名称,统计文件系统数量;和配置分析文件系统的方法:获取FILE_SYSTEM_OPTIONS、IPMI_USER_OPTION、IPMI_PASSWORD_OPTION、VALIDATION_OPTION、NET_ADDRESSES_OPTION、MULTICAST_PORTS_OPTION,将文件系统配置到服务器,获取FILE_SYSTEM_OPTIONS、ADMON_DAEMONS_OPTION、META_DAEMONS_OPTION、STORAGE_DAEMONS_OPTION、MGMT_DAEMONS_OPTION以及PORT_OPTION、VIRTUAL_IPS_OPTION、NICS_OPTION、INSTANCE_NAME_OPTION和DIVICE_OPTION,将守护进程配置到服务器,和定义了分析守护进程的方法,和定义了分析守护进程目标的方法,和定义了分析nic网络端口的方法:获取运行的守护进程,获取守护进程对应的nic端口,和定义了分析服务器的方法,获取服务器的SERVER_OPTIONS以及SERVER_OPTIONS下PEER_OPTION,STATIC_OPTION,IPMI_IP_OPTION,与相对应的服务器延迟。
所述cluster.py中定义了集群资源类,集群资源类下定义了包含文件系统头部名称以及配置信息的集群实例(如图8所示);其下定义了获取集群配置相关的文件的方法;执行集群设置所需的所有服务器检查和准备的方法;配置集群的方法;开启关闭服务器的方法;显示服务器状态的方法;在集群中查找服务器的方法;配置pacenaker的方法;配置corosync的方法;抹去pacenaker的方法;抹去corosync的方法;运行pacenaker的方法;运行corosync的方法;停止pacenaker的方法;停止corosync的方法;请求用户确认集群上执行动作的方法;配置本地守护进程的方法;启用或者禁用守护进程的方法;检查日志文件中错误信息的方法;显示节点需要进行的配置的方法;添加文件系统的方法;删除文件系统的方法。
所述filesystem.py中定义了IPMI认证类,IPMI认证类下定义了包含ipmi-user和ipmi-password的IPMI实例,IPMI认证类下定义了获取IPMI用户名和密码的方法;所述filesystem.py中还定义了文件系统资源类,文件系统资源类下定义了包含validation、ping-hosts、net-addresses和multicast-ports的文件系统实例(图9所示),文件系统资源类下定义了文件系统实例用到的操作,如:判断文件系统中是否有相同的文件名;获取文件系统名字的hash值;获取文件系统中项目的名字;获取文件系统名字;获取文件系统用到的网络地址列表;获取文件系统用到的网络端口列表;设置文件系统的认证模式;获取文件系统的管理守护进程;获取文件系统的守护进程;设定文件系统的守护进程;获取托管的守护进程;获取文件系统的服务器列表;IPMI认证类的调用;设置文件系统的连接监视器;验证文件系统的属性,包括文件系统环境验证、网络地址验证和网络端口的验证,服务器验证,守护进程验证;文件系统的pacemaker资源的处理。
所述server.py中定义了pacemaker资源监控服务器IPMI的监控类,pacemaker资源监控服务器IPMI的监控类下定义了包含监控服务器,被监控服务器以及延迟的监控实例,还定义了获取监控服务器的方法;设置监控服务器的方法;获取被监控服务器的方法;设置被监控服务器的方法;获取延迟的方法;所述server.py中还定义了服务器集群类,服务器集群类下定义了包含peer、ipmi-ip、static-ips、mgmtd-daemons、meta-daemons、storage-daemons、admon-daemons的服务器实例(如图10所示);还定义了判断服务器名字是否相同的方法;获取服务器名字hash值的方法;获取服务器中项目的方法;获取服务器名字的方法;判断服务器是否为本地服务器的方法;获取服务器IPMI的方法;获取服务器static IPs的方法;获取服务器IPMI监控器的方法;验证服务器名称、IPMI以及static IPs的方法;在服务器上执行命令的方法;向服务器复制内容的方法;在服务器上创建配置相关文件的方法;在服务器上启动pacemaker和corosync的方法;将服务器从集群中剔除,并删除相关配置文件的方法;在服务器上执行动作的方法。
所述daemon.py中定义了守护进程资源类,所述守护进程资源类定义监控的守护进程,定义监控守护进程的主机、端口和路径;所述daemon.py中还定义了包含targets、virtual-ips、nics、instance-name的守护进程实例(如图11所示);获取守护进程中项目的方法;计算守护进程用到的网络端口的数值的方法;获取守护进程类型的方法;获取用于标识同一类守护进程中不同守护进程的进程号的方法;获取默认端口与守护进程类型的映射的方法;获取网络端口的方法;设置网络端口与守护进程映射的方法;获取守护进程脚本名称的方法;获取守护进程所隶属的BeeGFS实例的方法;设置守护进程所隶属的BeeGFS实例的方法;判断守护进程能在几个节点运行的方法;获取守护进程配置路径的方法;获取守护进程使用的路径的方法;获取进程标志符的路径的方法;获取守护进程的日志文件路径的方法;获取守护进程的挂载路径的方法;获取守护进程用到的网络接口列表路径的方法;获取守护进程运行的首选服务器名称的方法;获取守护进程运行的次选服务器名称的方法;验证首选服务器和次选服务器能否运行相应的守护进程的方法;创建包含守护进程用到的网络接口的文件;通过创建或修改所有必要的配置相关文件来配置守护进程的方法;启动守护进程的pacemaker资源的方法;终止守护进程pacemaker资源的方法;检查守护进程日志的方法;清楚守护进程配置相关文件的方法;获取正在运行的守护进程的方法。
所述target.py中定义了用于监视存储、元数据和管理目标的Pacemaker资源类;其下定义了包含device和mount-path的目标实例(如图12所示);定义了判断目标是否具有相同名字的方法;获取目标字符串ID的hash值的方法;获取目标字符串ID的方法;获取目标的磁盘类型的方法;设置目标磁盘类型的方法;获取设备的磁盘类型的方法;从路径中移除斜线的方法;获取守护进程所使用的目标的方法;获取目标所用到的装置的方法;获取目标挂载点的放阿飞;设置目标挂载点的方法;获取用于存储目标相关文件的目录路径的方法;获取目标的安装设置的方法;获取目标形式设置的方法;设置目标形式设置的方法;判断目标是否安装成功的方法。
所述nic.py中定义了用于监控守护进程使用的虚拟网络接口的pacemaker资源类,其下定义了虚拟网络接口实例(如图13所示);其下定义了创建虚拟网络接口标签的方法;获取虚拟网络接口标签名称的方法;获取分配到虚拟网络接口的IP地址的方法;获取分配袋虚拟网络接口的子网掩码的方法;激活虚拟网络接口的方法;关闭网络接口的方法;判断虚拟网络接口接通的方法;验证虚拟网络接口属性的方法。
其中ha中调用配置脚本的指令、定义--cluster调取cluster.py用于管理集群系统,定义--resources管理集群资源,定义--server用于管理集群服务器,定义--daemons用于管理BeeGFS进程,定义--targets用于管理存储、元数据以及管理目标;定义--nics用于管理虚拟网络接口。
所述resource.py中定义了pacemaker资源的抽象类,定义了资源实例(如图14所示)。所述resourcegroup.py中定义了守护进程相关的群实例(如图15所示)。所述connections.py中定义了监控连接的pacemaker资源实例(如图16所示)。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (7)

1.一种快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,包括,
S100,在双系统节点中部署配置文件包,所述配置文件包中包含配置脚本;
S200,需要配置管理服务节点高可用的节点信息写入配置文件中;所述配置文件中包括全局配置和文件系统配置,所述全局配置包含BeeGFS实例名称与BeeGFS实例下的文件系统,所述文件系统由文件系统头部名称列表表示,其中所述文件系统配置包括文件参数配置、资源防护配置、服务器配置、守护进程配置和目标配置;配置文件内容表示为:关键字=属性;
S300,运行配置脚本,获取服务器权限,调取配置文件中的信息创建服务器集群;
S400,运行配置脚本,在服务器集群中配置资源。
2.根据权利要求1所述的快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,所述配置脚本通过配置文件中的全局配置创建集群实例,调取所述集群实例,运行集群实例中的方法,配置BeeGFS实例名称和实例名称下的文件系统。
3.根据权利要求1所述的快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,所述配置脚本通过资源防护配置建立IPMI实例,调用IPMI实例,运行IPMI中的方法,配置ipmi-user和ipmi-password。
4.根据权利要求1所述的快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,所述配置脚本通过文件参数配置建立文件系统实例,调用文件系统实例,运行文件系统实例中的方法,对文件系统的validation、ping-hosts、net-addresses和multicast-ports参数进行配置。
5.根据权利要求1所述的快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,所述配置脚本通过服务器配置建立服务器实例,调用服务器实例,运行服务器实例中的方法,对服务器的peer、ipmi-ip、static-ips、mgmtd-daemons、meta-daemons、storage-daemons、admon-daemons进行配置。
6.根据权利要求1所述的快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,所述配置脚本通过守护进程配置建立守护进程实例,调用守护进程实例,运行守护进程实例中的方法,对守护进程的targets、virtual-ips、nics、instance-name进行配置;
所述配置脚本配置了的虚拟网络接口实例,调用虚拟网络接口实例,创建网络接口标签配置nics,获取分配到虚拟网络接口的IP地址配置virtual-ips。
7.根据权利要求1所述的快速部署Beegfs管理服务节点高可用的配置方法,其特征在于,所述配置脚本通过目标配置建立目标实例,调用目标实例,运行目标实例中的方法,对目标的device和mount-path进行配置。
CN202010695906.5A 2020-07-19 2020-07-19 一种快速部署Beegfs管理服务节点高可用的配置方法 Active CN112003726B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010695906.5A CN112003726B (zh) 2020-07-19 2020-07-19 一种快速部署Beegfs管理服务节点高可用的配置方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010695906.5A CN112003726B (zh) 2020-07-19 2020-07-19 一种快速部署Beegfs管理服务节点高可用的配置方法

Publications (2)

Publication Number Publication Date
CN112003726A CN112003726A (zh) 2020-11-27
CN112003726B true CN112003726B (zh) 2022-12-23

Family

ID=73467260

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010695906.5A Active CN112003726B (zh) 2020-07-19 2020-07-19 一种快速部署Beegfs管理服务节点高可用的配置方法

Country Status (1)

Country Link
CN (1) CN112003726B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113961213B (zh) * 2021-10-29 2023-11-10 苏州浪潮智能科技有限公司 一种BeeGFS高可用配置方法及配置工具

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102147809A (zh) * 2011-03-22 2011-08-10 曙光信息产业股份有限公司 一种并行文件系统及其管理方法
CN107562503A (zh) * 2017-09-07 2018-01-09 郑州云海信息技术有限公司 一种配置管理方法及装置
CN110162312A (zh) * 2019-05-28 2019-08-23 苏州浪潮智能科技有限公司 一种基于IML的BeeGFS配置方法与装置
CN111258681A (zh) * 2020-02-16 2020-06-09 苏州浪潮智能科技有限公司 一种BeeGFS服务启动方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102147809A (zh) * 2011-03-22 2011-08-10 曙光信息产业股份有限公司 一种并行文件系统及其管理方法
CN107562503A (zh) * 2017-09-07 2018-01-09 郑州云海信息技术有限公司 一种配置管理方法及装置
CN110162312A (zh) * 2019-05-28 2019-08-23 苏州浪潮智能科技有限公司 一种基于IML的BeeGFS配置方法与装置
CN111258681A (zh) * 2020-02-16 2020-06-09 苏州浪潮智能科技有限公司 一种BeeGFS服务启动方法和装置

Also Published As

Publication number Publication date
CN112003726A (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
JP7391862B2 (ja) 自動的に配備される情報技術(it)システム及び方法
US10523513B2 (en) Automated configuration of switch zones in a switch fabric
US8924499B2 (en) Operating system migration with minimal storage area network reconfiguration
EP3337097B1 (en) Network element upgrading method and device
CN104956332B (zh) 一种用于管理计算资源的方法、存储媒体和计算系统
JP4473153B2 (ja) ネットワーク構成のチェックおよび修理のための方法、システムおよびプログラム
US11789802B2 (en) System and method of mapping and diagnostics of data center resources
US7502850B2 (en) Verifying resource functionality before use by a grid job submitted to a grid environment
US7003527B1 (en) Methods and apparatus for managing devices within storage area networks
US10992575B2 (en) Assignment of internet protocol addresses to services
US20220174096A1 (en) Automatically Deployed Information Technology (IT) System and Method with Enhanced Security
US20240069952A1 (en) Configuring virtualization system images for a computing cluster
JP2007533033A (ja) 共有ファイル・システムのためのプロキシを設けるためのシステムおよび方法
US9569139B1 (en) Methods and apparatus for shared service provisioning
US8995424B2 (en) Network infrastructure provisioning with automated channel assignment
US9774600B1 (en) Methods, systems, and computer readable mediums for managing infrastructure elements in a network system
CN112003726B (zh) 一种快速部署Beegfs管理服务节点高可用的配置方法
US7321561B2 (en) Verification of connections between devices in a network
CN112073499A (zh) 一种多机型云物理服务器的动态服务方法
US11588697B2 (en) Network time parameter configuration based on logical host group
US11757722B2 (en) Automatic switching fabric role determination system
US11665167B2 (en) Dynamically deployed limited access interface to computational resources
US20200252336A1 (en) Switching fabric configuration and management system
US10223019B1 (en) Policy-driven volume expansion
CN117272329A (zh) 一种基于分布式虚拟化漏洞扫描方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant