openlava部署

 约 5 分钟

编译按装

编译所需依赖

  • gcc
  • ncurses-devel
  • tcl-devel

修改集群说明信息(lsid),编辑lsf/lsftools/lsid.c中相关说明文字。

以编译安装安装到/opt/openlava为例,下同。

dest=/share/openlava
./configure --prefix=$dest
make -j4 #j指定编译时使用的线程数
make install  #自动安装

#生成配置文件
./config.status
cp config/* $dest/etc
cd $dest/etc
rm Makefile* *.in -f

配置文件

  • 执行用户和环境变量

    dest=/otp/openlava
    
    #创建运行openlava的用户
    useradd -rM -s /sbin/nologin openlava #r为系统用户 M不创建用户家目录
    chown -R openlava:openlava $dest
    
    #环境变量
    chmod +x openlava* *.sh
    ln -sf $dest/etc/openlava $dest/bin/
    ./openlava.setup  #可选
    source ./openlava.sh
    ./openlava.setup

    openlava.setup是将相关环境变量文件放入/etc/profile.d/下,将openlava放到/etc/init.d/下,根据具体情况选择性使用该脚本。

  • 主配置文件

    修改文件lsf.cluster.openlava(openlava字样可改为集群名字),部分内容如下:

    Begin   ClusterAdmins
    Administrators = openlava #运行openlava服务的用户
    End    ClusterAdmins
    
    Begin   Host  #主机列表
    HOSTNAME    model    type  server  r1m  RESOURCES
    #yourhost IntelI5    linux   1      3.5    (cs)
    #node1       !       linux   1      3.5    (cs)
    master       !      linux    1      3.5    (cs) 
    c01          !      linux    1      3.5    (cs)
    End     Host

    主机列表中,第一行被认为是管理节点,其后一一添加其他节点;务必确保主机名能被所以节点解析(可在每个节点的hosts文件中添加主机名解析,当然使用自定义的dns也可以)。

  • 检查配置

    badmin ckconfig
    lsamdin ckconfig
  • 添加systemd units
    在/usr/lib/systemd/system/openlava.service添加以下内容

    [Unit]
    Description=openlava
    Wants=network-online.target
    After=network.target
    
    [Service]
    Type=simple
    User=hpcadmin
    RemainAfterExit=yes
    Restart=on-failure
    RestartSec=5s
    ExecStart=/usr/bin/bash /share/openlava/etc/openlava start
    ExecReload=/usr/bin/bash /share/openlava/etc/openlava restart
    ExecStop=/usr/bin/bash /share/openlava/etc/openlava stop
    
    [Install]
    WantedBy=multi-user.target

    执行:

    systemctl enable --now openlava

测试服务

oepenlava start
openlava status  #仅主节点有mbatchd服务
lsid
lshosts
bhosts
阅读 2.4k

推荐阅读
目录