• [技术干货] Kong环境搭建指导书 - CentOS 7.6(TaiShan 服务器)
    目录1 软件介绍 2 环境配置 3 系统配置 - 3.1 关闭防火墙(可选) - 3.2 修改SELINUX为disabled - 3.3 配置本地yum源(可选) 4 软件安装 - 4.1 安装依赖包 - 4.2 OpenResty编译安装 - 4.3 Luarocks编译安装 - 4.4 Kong编译安装 4.5 Kong配置(无数据库) - 4.5.1 配置kong.conf配置文件 - 4.5.2 配置tls.lua 4.6 Kong配置(PostgreSQL数据库) - 4.6.1 安装PostgreSQL - 4.6.2 配置kong.conf配置文件 - 4.6.3 配置tls.lua 5 软件运行 - 5.1 启动Kong 6 FAQ 7 其他1 软件介绍Kong基于OpenResty,是一个云原生、快速、可扩展、分布式的Api 网关。继承了OpenResty的高性能、易扩展性等特点。Kong通过简单的增加机器节点,可以很容易的水平扩展。同时功能插件化,可通过插件来扩展其能力。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)   软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Openresty1.15.8.2见4.2章节 Luarocks3.2.1见4.3章节 Openssl1.1.1g无需手动安装Openresty的附加模块,只需要源码,无需手动安装3 系统配置3.1 关闭防火墙(可选)未避免防火墙的影响,实验直接关闭防火墙,实际使用请根据需求关闭或单独开放相关端口# 步骤 1 停止防火墙。 systemctl stop firewalld.service # 步骤 2 关闭防火墙。 systemctl disable firewalld.service3.2 修改SELINUX为disabled# 步骤 1 关闭selinux。 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux3.3 配置本地yum源(可选)若环境有外网条件,可不用配置本地源,直接用系统配置好的网上源或者自己添加网上源即可。# 步骤 1 配置源文件 mv /etc/yum.repos.d/ /etc/yum.repos.d-bak mkdir /etc/yum.repos.d echo -e "[local]\nname=local\nbaseurl=file:///mnt\ngpgcheck=0\nenabled=1" > /etc/yum.repos.d/local.repo # 步骤 2 执行cat确认上一步操作写入成功,显示如下图 cat /etc/yum.repos.d/local.repo # 步骤 3 挂载源镜像,将系统镜像通过KVM挂载 mount /dev/cdrom /mnt 4 软件安装4.1 安装依赖包yum -y install wget gcc gcc-c++ make cmake libyaml libyaml-devel openssl openssl-devel pcre pcre-devel4.2 OpenResty编译安装# 步骤 1 下载OpenResty 1.15.8.2, openssl 1.1.1g, lua-kong-nginx-module, kong-build-tools-4.6.1到/home/kong目录下,目录请根据需要自行修改。 cd /home/kong wget https://openresty.org/download/openresty-1.15.8.2.tar.gz wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz wget https://github.com/Kong/lua-kong-nginx-module/archive/0.0.6.tar.gz wget https://github.com/Kong/kong-build-tools/archive/4.6.1.tar.gz # 步骤 2 解压。 tar -zxvf openresty-1.15.8.2.tar.gz tar –zxvf openssl-1.1.1g.tar.gz tar –zxvf 0.0.6.tar.gz tar –zxvf 4.6.1.tar.gz cd openresty-1.15.8.2 # 步骤 3 安装补丁。 cd /home/kong/openresty-1.15.8.2/bundle for i in /home/kong/kong-build-tools-4.6.1/openresty-patches/patches/1.15.8.2/*.patch; do patch -p1 < $i; done # 步骤 4 配置编译参数。 ./configure \ --with-pcre-jit \ --with-http_ssl_module \ --with-http_realip_module \ --with-http_stub_status_module \ --with-http_v2_module \ --with-openssl=/home/kong/openssl-1.1.1g \ --add-module=/home/kong/lua-kong-nginx-module-0.0.6 # 步骤 5 执行编译安装。 gmake && gmake install # 步骤 6 配置环境变量。 export PATH="$PATH:/usr/local/openresty/bin" # 步骤 7 查看结果。 openresty -V                  4.3 Luarocks编译安装# 步骤 1 下载Luarocks 3.2.1到/home/kong目录下,目录请根据需要自行修改。 cd /home/kong wget https://luarocks.github.io/luarocks/releases/luarocks-3.2.1.tar.gz # 步骤 2 解压。 tar -zxvf luarocks-3.2.1.tar.gz cd luarocks-3.2.1 # 步骤 3 配置编译参数。 ./configure \ --lua-suffix=jit \ --with-lua=/usr/local/openresty/luajit \ --with-lua-include=/usr/local/openresty/luajit/include/luajit-2.1 # 步骤 4 执行编译安装。 # -j后的参数建议小于等于CPU核数,请根据实际情况填写,充分发挥多核性能 make -j96 && make install # 步骤 5 查看结果。 luarocks --version                   4.4 Kong编译安装# 步骤 1 下载kong 2.0.4到/home/kong目录下,目录请根据需要自行修改。 cd /home/kong wget https://github.com/Kong/kong/archive/2.0.4.tar.gz # 步骤 2 解压。 tar -zxvf 2.0.4.tar.gz cd kong-2.0.4 # 步骤 3 执行编译安装。 make install # 步骤 4 配置环境变量。 # 这里的路径请根据实际路径填写 export PATH="$PATH:/home/kong/kong-2.0.4/bin" # 步骤 5 查看结果。 kong version                    4.5 Kong配置(无数据库)本节介绍kong直接启动,不连接数据库的配置方式,如需连接数据库,请参照4.6章节4.5.1 配置kong.conf配置文件# 步骤 1 复制生成kong.conf # Kong默认读取/etc/kong/kong.conf配置文件,也可在执行命令时使用-c指定路径 cd /home/kong/kong-2.0.4 mkdir -p /etc/kong cp kong.conf.default /etc/kong/kong.conf # 步骤 2 生成kong.yaml # 执行命令后会在执行目录生成kong.yaml,路径请根据实际情况配置,本文档将在/etc/kong下生成 cd /etc/kong kong config init # 步骤 3 编辑kong.conf。 # 无数据库模式下,需将database设置为off,需指定declarative_config为kong.yaml,这里需要写绝对路径。 vi kong.conf database = off … declarative_config = /etc/kong/kong.yamlKong默认使用8000和8001端口,分别为监控端口和管理端口,如已被占用,可在kong.conf修改4.5.2 配置tls.lua# 步骤 1 复制tls.lua到kong加载目录 mkdir -p /usr/local/openresty/site/lualib/resty/kong cp /home/kong/lua-kong-nginx-module-0.0.6/lualib/resty/kong/tls.lua /usr/local/openresty/site/lualib/resty/kong                     4.6 Kong配置(PostgreSQL数据库)Kong支持连接PostgreSQL和Cassandra本节介绍kong连接PostgreSQL启动,如无需连接数据库,请参照4.5章节4.6.1 安装PostgreSQL# 步骤 1 安装PostgreSQL # PostgreSQL安装方法参考http://ic-openlabs.huawei.com/openlab/#/knowledgebasequery?task_id=R1S1584D00218718220200103211538161206545 cd /home/kong/kong-2.0.4 mkdir -p /etc/kong cp kong.conf.default /etc/kong/kong.conf # 步骤 2 登录数据库创建数据库角色和指定数据库 /home/pgsql/bin/psql -U postgres CREATE USER kong; CREATE DATABASE kong OWNER kong;                     4.6.2 配置kong.conf配置文件# 步骤 1 复制生成kong.conf # Kong默认读取/etc/kong/kong.conf配置文件,也可在执行命令时使用-c指定路径 cd /home/kong/kong-2.0.4 mkdir -p /etc/kong cp kong.conf.default /etc/kong/kong.conf # 步骤 2 编辑kong.conf。 # 连接数据库模式下,需将database设置为postgres,并配置数据库连接信息。 vi kong.conf                    这里的用户名,密码,数据库请以4.6.1中配置的为准Kong默认使用8000和8001端口,分别为监控端口和管理端口,如已被占用,可在kong.conf修改4.6.3 配置tls.lua# 步骤 1 复制tls.lua到kong加载目录 mkdir -p /usr/local/openresty/site/lualib/resty/kong cp /home/kong/lua-kong-nginx-module-0.0.6/lualib/resty/kong/tls.lua /usr/local/openresty/site/lualib/resty/kong 5 软件运行5.1 启动Kong# 步骤 1 启动Kong服务 # --v 可查看日志信息,--vv查看更详细的日志 kong start -c /etc/kong/kong.conf --v # 步骤 2 查看进程运行情况 ps –ef |grep kong# 步骤 3 验证使用 curl -i http://localhost:8001 6 FAQ1.       Not found: No LuaRocks module found for resty.kong.tls:Kong加载路径缺少tls.lua,需要将其添加到搜索路径任一位置,具体操作参考4.5.2章节。                  7 其他参考文档:https://bbs.huaweicloud.com/forum/thread-39375-1-1.htmlhttps://docs.konghq.com/install/source/
  • [技术干货] Mellanox驱动 适配安装指导书 - CentOS 7.6(TaiShan 服务器)
    目录1 软件介绍 2 环境配置 3 驱动适配 - 3.1 依赖安装 - 3.2 驱动适配 4 驱动安装 - 4.1 驱动安装1 软件介绍Mellanox在提供高性能网络技术方面继续保持领先地位,在ConnectX®-6 EN 10/25/40/50/56/100/200GbE网卡中实现出色的利用率和扩展性,使数据中心事半功倍。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*Kunpeng 920 5250内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)  软件平台软件名称版本号安装方法备注CentOS7.6https://forum.huawei.com/enterprise/zh/thread-697017-1-1.html本文档安装过程选择的环境为“Minimal install”,并附加了“Development Tools”。 3 驱动适配此章节为鲲鹏上Mellanox驱动适配操作,如已有适配后的安装包,可直接查看软件安装章节3.1 依赖安装# 步骤 1 安装epel源。 yum install –y epel-release # 步骤 2 Yum安装依赖。 yum install –y perl createrepo python-devel lsof redhat-rpm-config rpm-build gcc kernel-devel-4.14.0-115.el7a.0.1.aarch64 libtool libusbx gcc-gfortran fuse-libs tcsh tk3.2 驱动适配# 步骤 1 下载驱动。 wget http://www.mellanox.com/downloads/ofed/MLNX_EN-5.5-1.0.3.2/mlnx-en-5.5-1.0.3.2-rhel7.6alternate-aarch64.tgz # 步骤 2 解压并进入文件 tar –xvf mlnx-en-5.5-1.0.3.2-rhel7.6alternate-aarch64.tgz && cd mlnx-en-5.5-1.0.3.2-rhel7.6alternate-aarch64 # 步骤 3 执行sh脚本添加适配。 ./ mlnx_add_kernel_support.sh –m .执行后会检测依赖是否完整,如存在缺失依赖,请按提示安装依赖依赖完整的情况下,生成当前平台的安装包:# 步骤 4 复制安装包到工作目录。 cp /tmp/mlnx-en-5.5-1.0.3.2-rhel7.6alternate-aarch64.ext.tgz /home4 驱动安装4.1 驱动安装# 步骤 1 解压第三章节生成的驱动包。 tar -xvf mlnx-en-5.5-1.0.3.2-rhel7.6alternate-aarch64.ext.tgz cd mlnx-en-5.5-1.0.3.2-rhel7.6alternate-aarch64 # 步骤 2 执行安装。 ./install# 步骤 3 加载驱动。 /etc/init.d/mlnx-en.d restart# 步骤 4 查看驱动。 ethtool –i enp3s0f0 # 网口名称请根据实际情况填写
  • [技术干货] FFmpeg环境搭建指导书 - CentOS 7.6(TaiShan 服务器)
    目录1 软件介绍 2 环境配置 3 系统配置 - 3.1 配置华为镜像yum源(可选) 4 软件安装 - 4.1 依赖安装安装 - 4.2 Libmp3lame编译安装 - 4.3 Yasm编译安装 - 4.4 FFmpeg编译安装 5 软件运行 - 5.1 运行测试 6 其他1 软件介绍FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了目前领先的音/视频编码库libavcodec。 FFmpeg是在 Linux 下开发出来的,但它可以在包括 Windows 在内的大多数操作系统中编译。这个项目是由 Fabrice Bellard 发起的,现在由 Michael Niedermayer 主持。可以轻易地实现多种视频格式之间的相互转换,例如可以将摄录下的视频avi等转成现在视频网站所采用的flv格式。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)  软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Gcc4.8.5Yum源安装 Yasm1.3.0见4.2章节 Lame 3.100见4.3章节  3 系统配置3.1 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache4 软件安装4.1 依赖安装安装# 步骤 1 Yum源安装依赖。 yum install –y make gcc-c++ gcc4.2 Libmp3lame编译安装# 步骤 1 下载并解压lame-3.100。 wget https://sourceforge.net/projects/lame/files/lame/3.100/lame-3.100.tar.gz tar -zxvf lame-3.100.tar.gz && cd lame-3.100 # 步骤 2 配置编译选项。 ./configure # 步骤 3 编译安装。 make -j96 && make install4.3 Yasm编译安装# 步骤 1 下载并解压yasm-1.3.0。 wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz tar –zxvf yasm-1.3.0.tar.gz && cd yasm-1.3.0 # 步骤 2 修改Makefile文件。 sed -i 's#) ytasm.*#)#' Makefile.in # 步骤 3 配置编译选项。 ./configure # 步骤 4 编译安装。 make -j96 && make install4.4 FFmpeg编译安装# 步骤 1 下载并解压ffmpeg 4.1.6。 wget http://ffmpeg.org/releases/ffmpeg-4.1.6.tar.gz tar –zxvf ffmpeg-4.1.6.tar.gz && cd ffmpeg-4.1.6 # 步骤 2 配置编译选项。 ./configure --enable-shared –enable-libmp3lame # 步骤 3 编译安装。 make -j96 && make install # 步骤 4 查看版本。 ffmpeg -version5 软件运行5.1 运行测试# 步骤 1 运行自带的检测用例 make check 6 其他参考文档:https://www.cnblogs.com/lsdb/p/7787547.html
  • [分布式存储] 智能写Cache 特性指南(CentOS 7.6)
    介绍:智能写Cache(Smart Write Cache)包含Bcache内核补丁以及相关配套的工具两部分。智能写Cache通过IO直通、Bcache QoS策略控制、Writeback策略控制以及GC策略控制来提升Bcache性能,最终达到提升Ceph集群性能的目的。安全加固声明建议关注Ceph官网和Ceph官方Github上的漏洞信息,按照需求及时地进行漏洞修复。兼容规格:硬件兼容列表兼容项目兼容性规格描述CPU型号华为鲲鹏916处理器华为鲲鹏920处理器服务器型号TaiShan 100系列服务器TaiShan 200服务器(型号2280)TaiShan 200服务器(型号5280)软件兼容列表软件名称软件版本OSCentOS 7.6 for aarch64内核版本4.14.0-115.10.1.el7aCephCeph 14.2.x适用场景智能写Cache是在使用Bcache设备做为Ceph OSD的存储场景下,对其中的Ceph IO流程进行了优化,仅对采用BlueStore存储引擎的OSD有效,考虑到实际应用中Ceph集群中OSD的增加与修改操作,工具需要获取集群内的OSD信息,因此需要保证OSD部署路径使用官方默认路径“/var/lib/ceph/osd”,如果采用其他路径则不会进行优化。说明:Ceph存储场景介绍如下:均衡型:集群采用SSD盘和HDD盘混合部署OSD,使用SSD盘存储OSD的元数据(DB)、日志数据(WAL),使用HDD盘存储真实数据(Data)。全闪存:集群采用全SSD盘部署OSD,OSD的Data、DB、WAL一起存储在SSD盘中。冷存储:集群采用全HDD盘部署OSD,OSD的Data、DB、WAL一起存储在HDD盘中。Bcache:将SSD与HDD绑定为一个Bcache分区,SSD做为HDD的缓存,集群采用Bcache分区部署OSD,OSD的Data存储在Bcache分区中,DB和WAL存放在单独的NVMe分区。目前智能写Cache只对Bcache场景有效。CentOS 7.6 for aarch64的内核默认为64K PAGESIZE,智能写Cache工具需要运行在4K PAGESIZE环境下。为方便使用,本文提供两种方式供选择:环境为64K PAGESIZE,需要重新编译替换整个内核,可以选择内核与bcache同时编译安装的方式,请参见“内核编译与安装”。环境已为4K PAGESIZE(通过“getconf PAGESIZE”查询),仅需要安装替换bcache.ko时,可以选择单独编译bcache.ko安装的方式,请参见“Bcache编译与安装”使用指导1. 安装Bcache    1)内核编译与安装:https://support.huaweicloud.com/fg-kunpengsdss/kunpengswc_20_0006.html    2)Bcache编译与安装: https://support.huaweicloud.com/fg-kunpengsdss/kunpengswc_20_0007.html2. 安装智能写cache工具     https://support.huaweicloud.com/fg-kunpengsdss/kunpengswc_20_0008.html3. 安装Bcache-tools工具     https://support.huaweicloud.com/fg-kunpengsdss/kunpengswc_20_0009.html4. Ceph使能智能写cache    https://support.huaweicloud.com/fg-kunpengsdss/kunpengswc_20_0010.html
  • [HPC] QE 6.8 移植指南(CentOS 8.2)
    1.1 介绍QUANTUM ESPRESSO是一种用于电子结构计算和材料建模的abinitio量子化学方法的软件套件,在GNU通用公共许可证下免费分发。它基于密度泛函理论,平面波基组和赝势(包括范数守恒和超软)。该程序主要在Fortran-90中编写,其中一些部分在C或Fortran-77中,是根据不同的独立开发的核心软件包的合并和重新设计以及一组旨在互操作的软件包构建的。基本软件包包括Pwscf,它解决了自洽的Kohn和Sham方程,获得了周期性实体,CP实现了Car-Parrinello分子动力学,PostProc实现了数据分析和绘图。关于附加封装,值得注意的是指出赝势生成的原子,PHonon封装,它实现了密度泛函扰动理论(DFPT),用于计算能量相对于原子位移和NEB的二阶和三阶导数。关于QUANTUM ESPRESSO的更多信息请访问QUANTUM ESPRESSO官网。语言:C++/Fortran。一句话描述:可扩展的计算化学工具。开源协议:GPL 2.0。建议的版本建议使用的版本为“QE 6.8”。1.2 环境要求硬件要求硬件要求如表2-1所示。硬件要求项目说明CPU鲲鹏920处理器。GPUNVIDIA Tesla V100。 软件要求软件要求如表2-2所示。软件要求项目版本下载地址QUANTUM ESPRESSO6.8https://github.com/QEF/q-e/archive/refs/tags/qe-6.8.tar.gzOpenBLAS0.3.6https://github.com/xianyi/OpenBLAS/archive/refs/tags/v0.3.6.tar.gzHyper MPI1.1.1https://support.huaweicloud.com/usermanual-kunpenghpcs/userg_huaweimpi_0010.htmlNVIDIA CUDA11.4https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux_sbsa.runNVIDIA HPC SDK21.9https://developer.download.nvidia.com/hpc-sdk/21.9/nvhpc_2021_219_Linux_aarch64_cuda_11.4.tar.gz 操作系统要求操作系统要求如表2-3所示。操作系统要求项目版本下载地址CentOS8.2https://vault.centos.org/8.2.2004/isos/aarch64/CentOS-8.2.2004-aarch64-dvd1.isoKernel4.18.0-193https://vault.centos.org/8.2.2004/BaseOS/Source/SPackages/kernel-4.18.0-193.el8.src.rpm 1.3 移植规划数据本章节给出QE软件在移植过程中涉及到的相关软件安装规划路径的用途及详细说明。移植规划数据序号软件安装规划路径用途说明1-基础环境搭建中的各安装包安装路径。参考《HPC解决方案 基础环境搭建指导书》中“安装规划数据”章 节。2/path/to/qeQUANTUM ESPRESSO的安装规划路径。这里的安装规划路径只是一个举例说明,建议部署在共享路径中。现网需要根据实际情况调整,后续章节凡是遇到安装路径的命令,都以现网实际规划的安装路径为准进行替换,不再单独说明。3/usr/local/cuda-11.4NVIDIA CUDA的安装规划路径。4/path/to/openblasOpenBLAS的安装规划路径。5/opt/nvidia/hpc_sdkNVIDIA HPC SDK的安装规划路径。6/path/to/CASEQUANTUM ESPRESSO的算例文件存放规划路径。 1.4 配置编译环境前提条件使用SFTP工具将各安装包上传至服务器对应目录下。配置流程配置流程序号配置项说明1基础环境搭建参考《HPC解决方案 基础环境搭建指导书》中“集群场景环境搭建”章节。2禁用nouveau驱动参考2.4.1 禁用nouveau驱动。3安装NVIDIA CUDA参考2.4.2 安装NVIDIA CUDA组件。4安装Hyper MPI参考2.4.3 安装Hyper MPI。5安装NVIDIA HPC SDK参考2.4.4 安装NVIDIA HPC SDK。6安装OpenBLAS参考2.4.5 安装OpenBLAS。 1.4.1 禁用nouveau驱动操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令查看nouveau驱动是否已禁用。                    lsmod |grep nouveau若有回显信息,表示nouveau驱动未禁用,则执行步骤3。若无回显信息,表示nouveau驱动已禁用,则结束操作。步骤 3 执行以下命令禁用nouveau驱动。新建文件“disable-nouveau.conf”。                    vi /etc/modprobe.d/disable-nouveau.conf按“i”进入编辑模式,添加如下内容。                    blacklist nouveau                    options nouveau modeset=0按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。步骤 4 执行以下命令备份并生成新的“initramfs”文件                    cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img                    dracut -f /boot/initramfs-$(uname -r).img $(uname -r)步骤 5 执行以下命令重启机器。                    reboot----结束1.4.2 安装NVIDIA CUDA组件操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令确认nouveau驱动是否已禁用。                    lsmod |grep nouveau若有回显信息,表示nouveau驱动未禁用,则执行步骤3~步骤5。若无回显信息,表示nouveau驱动已禁用,则结束操作。步骤 3 执行以下命令安装NVIDIA CUDA组件。                    wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux_sbsa.run                    sudo shcuda_11.4.0_470.42.01_linux_sbsa.run步骤 4 执行以下命令配置环境变量。                    export PATH=/usr/local/cuda-11.4/bin:$PATH                    export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH步骤 5 执行以下命令进行验证。                    nvcc --version若返回结果已包含NVIDIA CUDA组件版本信息,说明安装成功。----结束1.4.3 安装Hyper MPI操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令安装HUCX源码包和XUCG源码包。                    wget -c https://github.com/kunpengcompute/hucx/archive/refs/heads/huawei.zip -O hucx-huawei.zip                    wget -c https://github.com/kunpengcompute/xucg/archive/refs/heads/huawei.zip -O xucg-huawei.zip步骤 3 执行以下命令解压HUCX源码包和XUCG源码包。                    unzip hucx-huawei.zip                    unzip xucg-huawei.zip步骤 4 执行以下命令将XUCG源码包中的内容复制到HUCX源码包中的“src/ucg”目录下。                    cp -r xucg-huawei/* hucx-huawei/src/ucg/步骤 5 执行以下命令进入hucx-huawei目录。                    cd hucx-huawei步骤 6 执行以下命令设置环境变量。                    export SEC_CFLAGS="-Wno-error=deprecated-declarations -DHAVE___CLEAR_CACHE=1 -Wno-error=asm-operand-widths -Wno-error=implicit-int-float-conversion -Wno-error=format -Wno-error=tautological-pointer-compare"步骤 7 执行以下命令创建HUCX安装目录。                    mkdir -p /path/to/ucx步骤 8 执行以下命令安装HUCX。                    ./autogen.sh                    ./contrib/configure-opt --prefix=/path/to/ucx CFLAGS="$SEC_CFLAGS" CXXFLAGS="$SEC_CFLAGS"                    make -j32                    make install步骤 9 执行以下命令获取Hyper MPI源码包。                    wget -c https://github.com/kunpengcompute/hmpi/archive/refs/heads/huawei.zip -O hmpi-huawei.zip步骤 10 执行以下命令解压Hyper MPI源码包。                    unzip hmpi-huawei.zip步骤 11 执行以下命令进入hmpi-huawei目录。                    cd hmpi-huawei步骤 12 执行以下命令安装Hyper MPI。                    ./autogen.pl                    ./configure --prefix=/path/to/ompi --with-platform=contrib/platform/mellanox/optimized --enable-mpi1-compatibility --with-ucx=/path/to/ucx                    make -j16                    make install步骤 13 执行以下命令配置环境变量。                    export PATH=/path/to/ompi/bin:/path/to/ucx/bin:$PATH                    export LD_LIBRARY_PATH=/path/to/ompi/lib:/path/to/ucx/lib:$LD_LIBRARY_PATH                    export OPAL_PREFIX=/path/to/ompi/                    export INCLUDE=/path/to/ompi:$INCLUDE----结束1.4.4 安装NVIDIA HPC SDK操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令获取毕昇编译器软件包。                    wget https://developer.download.nvidia.com/hpc-sdk/21.9/nvhpc_2021_219_Linux_aarch64_cuda_11.4.tar.gz步骤 3 执行以下命令创建毕昇编译器安装目录(这里以/opt/compiler为例)。                    mkdir -p /opt/compiler步骤 4 执行以下命令将毕昇编译器压缩包拷贝到安装目录下。                    cp –r nvhpc_2021_219_Linux_aarch64_cuda_11.4 /opt/compiler步骤 5 执行以下命令进入压缩包目录。                    cd /opt/compiler步骤 6 执行以下命令解压缩软件包。                    tar -zxvf nvhpc_2021_219_Linux_aarch64_cuda_11.4.tar.gz步骤 7 执行以下命令解压目录。                    cd nvhpc_2021_219_Linux_aarch64_cuda_11.4/步骤 8 执行以下命令进行安装。                    ./install按“Enter”键确认安装位置,默认为“/opt/nvidia/hpc_sdk”,再按“1”选择单机安装,安装程序会自行找到之前安装的“cuda toolkit”,安装完成后按“Enter”键结束。步骤 9 执行以下命令配置NVIDIA HPC SDK的环境变量。                    module load /opt/nvidia/hpc_sdk/modulefiles/nvhpc/21.9步骤 10 执行以下命令进行验证。                    pgcc --version若返回结果已包含“PGI Compilers and Tools”字样,说明安装成功。----结束1.4.5 安装OpenBLAS操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令解压OpenBLAS安装包。                    tar -zxvf OpenBLAS-0.3.6.tar.gz步骤 3 执行以下命令进入解压后的目录。                    cd OpenBLAS-0.3.6步骤 4 执行以下命令编译安装OpenBLAS。                    make                    make PREFIX=/path/to/OPENBLAS install步骤 5 执行以下命令设置OpenBLAS的环境变量。                    export LD_LIBRARY_PATH=/path/to/OPENBLAS/lib:$LD_LIBRARY_PATH----结束1.5 获取源码操作步骤步骤 1 下载QUANTUM ESPRESSO安装包。下载地址:https://github.com/QEF/q-e/releases/tag/qe-6.8步骤 2 使用SFTP工具将QUANTUM ESPRESSO安装包上传至服务器“/path/to/qe”目录。----结束1.6 编译和安装操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令进入主程序安装目录。                    cd /path/to/qe步骤 3 执行以下命令解压安装包。                    tar -zxvf q-e-qe-6.8.tar步骤 4 执行以下命令进入解压后路径。                    cd q-e-qe-6.8/步骤 5 执行以下命令开始编译。                    ./configure --with-cuda=yes --with-cuda-runtime=11.4 --with-cuda-cc=80  --enable-openmp --with-scalapack=no“--with-cuda-cc=80”请根据当前机器的显卡架构进行修改,此处测试机器显卡是v100。                    make -j32 pwall若编译机器无法联网,需下载“devicexlib-master.tar.gz”包,并上传至编译机器,编译完成后执行make pp -j32,具体命令如下:                    mv devicexlib-master.tar.gz /path/to/qe-gpu-6.7/external devicexlib.tar.gz                    tar xzf devicexlib.tar.gz --strip-components=1                    export F90FLAGS="-FAST -mCACHE_align -Mpreprocess -Mlarge_arrays"                    ./configure FC=pgf90 CC=pgcc --with-cuda=no --with-cuda-cc= --with-cuda-runtime= --disable-parallel --enable-cuda-env-check=no                    make pp -j32若出现类似如下错误:是由于链接库配置不对,需要更改“inc”文件。   打开“inc”文件。                    vi make.inc按“i”进入编辑模式,在如下位置增加“LD_LIBS = -lcurand”。按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。步骤 6 执行以下命令查看是否生成可执行文件。                    ll /path/to/qe-gpu-6.7/bin/pw.x回显信息中包含“pw.x”文件,表示已生成可执行文件。步骤 7 执行以下命令设置环境变量。                    export PATH=/path/to/qe/bin/:$PATH----结束1.7 运行和验证操作步骤步骤 1 使用PuTTY工具,以root用户登录服务器。步骤 2 执行以下命令进入测试目录。                    cd /path/to/CASE步骤 3 执行以下命令下载测试算例,使用SFTP工具将测试算例上传至服务器“/path/to/CASE”目录。                    wget https://github.com/QEF/benchmarks/archive/refs/tags/bench0.0.tar.gz步骤 4 执行以下命令解压测试算例包,并将需要的文件拷贝到“/path/to/CASE”目录。                    tar xvf benchmarks-bench0.0.tar.gz                    cp benchmarks-master/AUSURF112/* ./步骤 5 执行以下命令运行QE程序。                    mpirun --allow-run-as-root -np 2 -x OMP_NUM_THREADS=1 --mca btl ^openib pw.x -input ./ausurf.in 2>&1 | tee -a qe.log“-np”表示测试使用的总进程数,这里写2是测试机器有2张显卡。“-x OMP_NUM_THREADS=1”表示指定每个进程的线程数为1。需要查看“qe.log”日志中的“WALL”数值,单位是“s”,数值越高性能越低,输出的结果如下图所示。----结束
  • [HPC] fastp 移植指南(CentOS 7.6)
    1 介绍fastp是一种工具,旨在为FastQ文件提供快速的多合一预处理。该工具是用C ++开发的,支持多线程以提供高性能。关于fastp的更多信息请访问GitHub相关页面。语言:C/C++一句话描述:超快速的多合一FASTQ预处理器。开源协议:MIT License建议的版本建议使用版本为“fastp 0.20.1”。2 环境要求硬件要求硬件要求如表2-1所示。表2-1 硬件要求项目说明CPUKunpeng 920 软件要求软件要求如表2-2所示。表2-2 软件要求项目版本下载地址fastp0.20.1https://github.com/OpenGene/fastp/archive/v0.20.1.tar.gz测试算例1ERR1044518_1.fastqftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR104/008/ERR1044518/ERR1044518_1.fastq.gz测试算例2ERR1044518_2.fastqftp://ftp.sra.ebi.ac.uk/vol1/fastq/ERR104/008/ERR1044518/ERR1044518_2.fastq.gz 操作系统要求操作系统要求如表2-3所示。表2-3 操作系统要求项目版本下载地址CentOS7.6https://www.centos.org/download/Kernel4.14.0-115.el7a.0.1https://www.centos.org/download/3 移植规划数据本章节给出fastp软件在移植过程中涉及到的相关软件安装规划路径的用途及详细说明。表3-1 移植规划数据序号软件安装规划路径用途说明1-基础环境搭建中的各安装包安装路径。参考《HPC解决方案 基础环境搭建指南》中“安装规划数据”章节。2/path/to/FASTPfastp的安装规划路径。这里的安装规划路径只是一个举例说明,建议部署在共享路径中。现网需要根据实际情况调整,后续章节凡是遇到安装路径的命令,都以现网实际规划的安装路径为准进行替换,不再单独说明。4 配置编译环境前提条件使用SFTP工具将各安装包上传至服务器对应目录下。配置流程表4-1 配置流程序号配置项说明1基础环境搭建参考《HPC解决方案 基础环境搭建指南》中“集群场景环境搭建”章节。5 获取源码操作步骤步骤 1    下载fastp源码包“fastp-0.20.1.tar.gz”。下载地址:https://github.com/OpenGene/fastp/archive/v0.20.1.tar.gz步骤 2    使用SFTP工具将下载好的软件包上传至服务器“/path/to/FASTP”目录。----结束6 编译和安装操作步骤步骤 1    使用PuTTY工具,以root用户登录服务器。步骤 2    执行以下命令,解压fastp安装包。tar -xvf fastp-0.20.1.tar.gz步骤 3    执行以下命令,进入解压后的目录。cd fastp-0.20.1步骤 4    执行以下命令,编译安装。make -j 16 步骤 5    执行以下命令,设置环境变量。export PATH=/path/to/FASTP/fastp-0.20.1:$PATH----结束7 运行和验证操作步骤步骤 1    使用PuTTY工具,以root用户登录服务器。步骤 2    执行以下命令进入算例目录。cd /path/to/FASTP/testdata步骤 3    执行以下命令解压算例文件。gzip -d ERR1044518_1.fastq.gzgzip -d ERR1044518_2.fastq.gz步骤 4    执行以下命令,运行算例。{ time fastp -i ERR1044518_1.fastq -I ERR1044518_2.fastq -w 16 ; } 2>&1 |tee fastp.log运行完成后,将回显以下信息:    Duplication rate: 0.581538%    Insert size peak (evaluated by paired-end reads): 169    JSON report: fastp.json    HTML report: fastp.html说明:    fastp支持多线程运行,-w指定线程数,但最多使用16个线程。运行完成后会生成fast.json和fast.html两份报告,可以通过-j和-h参数分别指定两个文件的路径和名称。更多参数信息可以使用fastp --help命令查看。----结束8 更多资源获取更多资源,请访问fastp的GitHub页面:https://github.com/OpenGene/fastp。
  • [技术干货] Seaweedfs环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目  录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 关闭防火墙 - 3.2 修改SELINUX为disabled(可选) - 3.3 配置华为镜像yum源(可选) - 4 软件安装 - 4.1 Yum安装依赖 - 4.2 安装Golang - 4.3 预编译包安装 - 4.4 dlv编译安装 - 4.5 seaweedfs编译安装 5 软件运行 - 5.1 运行测试 6 其他1 软件介绍SeaweedFS 是简单,高伸缩性的分布式文件系统,包含两部分:存储数十亿的文件;快速为文件服务。SeaweedFS 作为支持全 POSIX 文件系统语义替代,Seaweed-FS 选择仅实现 key-file 的映射,类似 "NoSQL",也可以说是 "NoFS"。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)   软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。go1.14.1见4.2章节  3 系统配置3.1 关闭防火墙# 步骤 1 停止防火墙。 systemctl stop firewalld.service # 步骤 2 关闭防火墙。 systemctl disable firewalld.service3.2 修改SELINUX为disabled(可选)# 步骤 1 关闭防火墙。 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux3.3 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache4 软件安装4.1 Yum安装依赖# 步骤 1 安装相关依赖。 yum install -y wget git gcc gcc-c++ make cmake4.2 安装Golang# 步骤 1 下载并解压golang。 # /home/go 为自定义的软件包安装位置(GOPATH),修改需对应修改环境变量信息 # /usr/local 为GOROOT的地址,可根据实际情况修改 mkdir /home/go wget https://studygolang.com/dl/golang/go1.14.1.linux-arm64.tar.gz tar -zxvf go1.14.1.linux-arm64.tar.gz -C /usr/local # 步骤 2 配置go环境变量。 vi /etc/profile.d/golang.sh export GOROOT=/usr/local/go export GOPATH=/home/go export PATH=$GOPATH/bin:$GOROOT/bin:$PATH export GOPROXY=https://goproxy.io # 配置代理,加速go get,如不需要,请删除 # 步骤 3 使环境变量生效。 source /etc/profile # 步骤 4 验证版本。 go versionseaweedfs安装有两种方式,一种是使用官方提供的预编译包直接部署使用,详见4.3;另一种是源码编译安装,详见4.4~4.54.3 预编译包安装# 步骤 1 下载并解压官方的预编译包。 wget https://github.com/chrislusf/seaweedfs/releases/download/2.16/linux_arm64.tar.gz tar –zxvf linux_arm64.tar.gz ls -l# 步骤 2 配置环境变量。 # 可选,也可以直接运行weed echo 'export PATH=/home/seaweedfs:$PATH' > /etc/profile.d/seaweedfs.sh source /etc/profile4.4 dlv编译安装# 步骤 1 下载源码。 mkdir -p $GOPATH/src && cd $GOPATH/src git clone https://github.com/derekparker/delve.git # 步骤 2 编译安装。 cd delve/cmd/dlv go build && go install4.5 seaweedfs编译安装# 步骤 1 下载源码。 git clone https://github.com/chrislusf/seaweedfs.git cd seaweedfs git checkout –b 2.16 2.16 # 步骤 2 编译安装。 make && make install5 软件运行5.1 运行测试# 步骤 1 创建文件夹 mkdir –r /home/sea/data mkdir –r /home/sea/vol/vol1 mkdir –r /home/sea/vol/vol2 mkdir –r /home/sea/vol/vol3 mkdir –r /home/sea/logs # 步骤 2 启动服务 nohup weed master -mdir=/home/sea/data -port=9333 -defaultReplication="001" -ip="172.16.20.71" &>> /home/sea/logs/master.log &6 其他参考文档:https://github.com/chrislusf/seaweedfs#quick-start              
  • [技术干货] Yasm环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目  录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 配置华为镜像yum源(可选) - 4 软件安装 - 4.1 依赖安装安装 - 4.2 Yasm编译安装 - 5 软件运行 - 5.1 运行测试 - 6 其他1 软件介绍Yasm是一个完全重写的NASM汇编。接受NASM和气体汇编语法,产出二进制, ELF32 , ELF64 , COFF , Mach - O的( 32和64 ) , RDOFF2 ,的Win32和Win64对象的格式,并生成STABS 调试信息的来源,DWARF 2 ,CodeView 8格式。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)   软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Gcc4.8.5Yum源安装 Make 3.82Yum源安装  3 系统配置3.1 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache 4 软件安装4.1 依赖安装安装# 步骤 1 Yum源安装依赖。 yum install –y make gcc-c++ gcc4.2 Yasm编译安装# 步骤 1 下载并解压yasm-1.3.0。 wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz tar –zxvf yasm-1.3.0.tar.gz && cd yasm-1.3.0 # 步骤 2 修改Makefile文件。 sed -i 's#) ytasm.*#)#' Makefile.in # 步骤 3 配置编译选项。 ./configure # 步骤 4 编译安装。 make -j96 && make install5 软件运行5.1 运行测试# 步骤 1 运行自带的测试套 make check6 其他参考文档:http://yasm.tortall.net/Guide.html              
  • [技术干货] ShengBTE环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目  录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 配置本地yum源(可选) - 4 软件编译 - 4.1 安装Cmake - 4.2 安装openmpi - 4.3 安装spglib - 4.4 安装OpenBLAS - 4.5 ShengBTE编译 - 5 软件运行 - 5.1 运行Test-QE测试 - 6 FAQ - 7 其他1 软件介绍ShengBTE是求解声子玻尔兹曼传输方程的软件包。它的主要目的是计算晶格对大块晶体固体热导系数的贡献,但在扩散边界条件的假设下也可以对纳米线进行处理。除了热导系数本身之外,ShengBTE还计算并输出了大量关于所研究系统的附加信息。2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)   软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。cmake2.8.12.2见4.1章节 openmpi4.0.0见4.2章节 spglib1.14.0见4.3章节 OpenBLAS0.3.9见4.4章节代替MKL 3 系统配置3.1 配置本地yum源(可选)若环境有外网条件,可不用配置本地源,直接用系统配置好的网上源或者自己添加网上源即可。# 步骤 1 配置源文件 mv /etc/yum.repos.d/ /etc/yum.repos.d-bak mkdir /etc/yum.repos.d echo -e "[local]\nname=local\nbaseurl=file:///mnt\ngpgcheck=0\nenabled=1" > /etc/yum.repos.d/local.repo #步骤 2 执行cat确认上一步操作写入成功,显示如下图 cat /etc/yum.repos.d/local.repo                      # 步骤 3 挂载源镜像,将系统镜像通过KVM挂载 mount /dev/cdrom /mnt 4 软件编译4.1 安装Cmake# 步骤 1 Yum安装cmake。 yum install –y cmake                     4.2 安装openmpi# 步骤 1 下载openmpi-4.0.0软件包。 wget https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.0.tar.gz # 步骤 2 解压并进入目录。 tar –zxvf openmpi-4.0.0.tar.gz cd openmpi-4.0.0 # 步骤 3 生成Makefile。 ./configure # 步骤 4 编译安装。 # 这里-j后面的数字小于等于机器的核数,请根据实际需要填写,重复发挥多核优势。 make -j96 && make install 4.3 安装spglib# 步骤 1 下载spglib并切换到1.14.0。 git clone https://github.com/atztogo/spglib.git cd spglib git checkout v1.14.0 # 步骤 2 执行cmake。 mkdir build && cd build cmake .. # 步骤 3 编译并安装。 make –j96 && make install4.4 安装OpenBLAS# 步骤 1 下载OpenBLAS并切换到0.3.9。 git clone https://github.com/xianyi/OpenBLAS.git cd OpenBLAS git checkout v0.3.9 # 步骤 2 编译并安装。 # 这里建议安装在/usr/local,默认安装在/opt/OpenBLAS下,后续需要手动添加到动态链接库,具体请见FAQ make TARGET=ARMV8 && make install PREFIX=/usr/local                     4.5 ShengBTE编译# 步骤 1 下载ShengBTE并切换到v1.1.1 git clone https://bitbucket.org/sousaw/shengbte.git cd shengbte git checkout v1.1.1 # 步骤 2 修改编译脚本。 cp arch.make.example Src/arch.make cd Src vi arch.make export FFLAGS=-debug -O2 export LDFLAGS=-L/usr/local/lib -lsymspg export MPIFC=mpifort BLAS=-L/usr/local/lib –lopenblas –lm # 这里填充openblas/lib的路径,请根据4.4修改 export LAPACK=$(BLAS) export LIBS=$(LAPACK) # 步骤 3 编译并生成可执行文件。 make 5 软件运行5.1 运行Test-QE测试# 步骤 1 将可执行文件复制到Test-QE目录下 cp ShengBTE Test-QE # 步骤 2 执行测试 cd Test-QE ./ShengBTE                     6 FAQ1.       运行时出现‘error while loading shared libraries: libopenblas.so’执行make install安装OpenBLAS时,如果不声明PREFIX=/usr/local,会默认安装到/opt/OpenBLAS下,该目录并非默认链接库,除了需要修改ShengBTE编译文件arch.mark之外,还需要将该/opt/OpenBLAS/lib加入到动态库中。在/etc/ld.so.conf后添加一行 /opt/OpenBLAS/lib,之后运行一下ldconfig# vi /etc/ld.so.conf include ld.so.conf.d/*.conf /opt/OpenBLAS/lib # ldconfig                7 其他参考文档:https://github.com/open-mpi/ompihttps://github.com/atztogo/spglibhttps://github.com/xianyi/OpenBLAShttps://aur.archlinux.org/packages/shengbte/             
  • [技术干货] Harbor1.10.2环境搭建指导书 – CentOS 7.6(基于TaiShan 服务器)
    目  录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 关闭防火墙(可选) - 3.2 修改SELINUX为disabled(可选) - 3.3 配置本地yum源(可选) - 4 软件编译 - 4.1 Docker-ce安装 - 4.2 Docker-compose安装 - 4.3 Harbor安装 - 4.4 制作harbor-core-base镜像(可选) - 5 软件运行 - 5.1 启动Harbor - 6 FAQ - 7 其他                        1 软件介绍Harbor是构建企业级私有docker镜像的仓库的开源解决方案,是Docker Registry的更高级封装。除了提供友好的Web UI界面,角色和用户权限管理,用户操作审计等功能外,还整合了K8s的插件(Add-ons)仓库,即Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可以提供存储chart数据的仓库。2 环境配置 硬件平台服务器TaiShan 200 2280处理器         2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Docker-ce19.03.8见4.1章节支持版本最低为17.06.0-ceDocker-compose1.18.0见4.2章节支持版本最低为1.18.03 系统配置3.1 关闭防火墙(可选)# 步骤 1 停止防火墙。 systemctl stop firewalld.service # 步骤 2 关闭防火墙。 systemctl disable firewalld.service3.2 修改SELINUX为disabled(可选)# 步骤 1 关闭防火墙。 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux3.3 配置本地yum源(可选)若环境有外网条件,可不用配置本地源,直接用系统配置好的网上源或者自己添加网上源即可。# 步骤 1 配置源文件 mv /etc/yum.repos.d/ /etc/yum.repos.d-bak mkdir /etc/yum.repos.d echo -e "[local]\nname=local\nbaseurl=file:///mnt\ngpgcheck=0\nenabled=1" > /etc/yum.repos.d/local.repo # 步骤 2 执行cat确认上一步操作写入成功,显示如下图 cat /etc/yum.repos.d/local.repo # 步骤 3 挂载源镜像,将系统镜像通过KVM挂载 mount /dev/cdrom /mnt4 软件编译4.1 Docker-ce安装所有节点都需要安装Docker,这里安装的是19.03.8。# 步骤 1 安装Docker 所需的软件包。 yum install -y yum-utils # 步骤 2 设置docker yum源。 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 步骤 3 查看可安装的版本 # yum源有时候会更新,请根据实际情况选择具体的版本安装 yum list docker-ce --showduplicates | sort -r # 步骤 4 安装Docker-ce。 # 安装指定版本的方法是:软件名称-版本.软件后缀,如下: yum install docker-ce-3:19.03.8-3.el7.aarch64 # 步骤 5 启动Docker。 systemctl start docker # 步骤 6 Docker自启动 systemctl enable docker4.2 Docker-compose安装# 步骤 1 安装EPEL源。 yum install –y epel-release # 步骤 2 安装docker-compose。 yum install –y docker-compose -enablerepo=epel4.3 Harbor安装# 步骤 1 Harbor源码下载解压。 wget https://github.com/goharbor/harbor/archive/v1.10.2.tar.gz tar –zxvf v1.10.2.tar.gz cd harbor-1.10.2 # 步骤 2 编辑Makefile文件,启动编译组件功能。 vi Makefile ... 82 BUILDBIN=true ... 99 REGISTRYVERSION=v2.7.1# 步骤 3 编辑yml文件。 # 修改hostname和https配置,本文档屏蔽了https的使用,如需使用https,请生成证书并配置到对应路径下。 vi make/harbor.yml# 步骤 4 编辑文件,将X86的源镜像修改为arm64的镜像。 # 本步骤涉及的base镜像均对应1.10.2版本,如编译其他大于1.10版本的harbor,可在dockerhub搜索是否有对应版本Arm64的镜像(base镜像不同版本差异较小),也可根据4.4章节的步骤,使用官方提供的Dockerfile.base自行打包。 find ./ -type f|grep "Dockerfile$"|grep -v "\.D"|xargs sed -i "s#photon:2.0#photon:3.0#g" sed -i "s/goharbor/liar/g" ./make/photon/log/Dockerfile find ./make/photon -type f|grep "Dockerfile$"|grep -v "\.D"|xargs sed -i "s/goharbor/glongzh/g" # 步骤 5 拉取golang 1.12.12官网镜像。 docker pull golang:1.12.12 # 步骤 6 编译、安装和启动harbor服务。 make install GOBUILDIMAGE=golang:1.12.12 VERSIONTAG=v1.10.2 PKGVERSIONTAG=v1.10.2 UIVERSIONTAG=v1.10.2 BASEIMAGETAG=v1.10.2 # 步骤 7 编译离线安装包(可选)。 make package_offline GOBUILDIMAGE=golang:1.12.12 VERSIONTAG=v1.10.2 PKGVERSIONTAG=v1.10.2 UIVERSIONTAG=v1.10.2 BASEIMAGETAG=v1.10.2 # 步骤 8 启动harbor,执行如下步骤(可选)。 tar -xvf harbor offline installer xxx.tgz && cd harbor sh install.sh4.4 制作harbor-core-base镜像(可选)Harbor 1.10后将各个组件镜像打包分成两步,先官方会先打包一个预编译好的base镜像,实际打包过程拉取base镜像,然后配置环境就可以了。官方的base镜像是X86平台下的,迁移到Arm64平台需要重新打包。除了redis外,大部分组件base镜像的迁移方式相同,本章节以core为例,如需要打包redis.base,请参考https://github.com/docker-library/redis。# 步骤 1 复制Dockerfile。 cd make/photon/core mkdir base cp Dockerfile.base base/Dockerfile cd base # 步骤 2 修改Dockerfile。 # 将photon:2.0修改为photon:3.0,是因为photon 3.0才开始支持aarch64。 sed -i "s/2.0/3.0/g" Dockerfile # 步骤 3 打包镜像。 # 镜像前缀和版本请自行填写,本例为xxxx和1.10.2,但是注意4.3章节替换时需对应上 docker build -t xxxx/harbor-core-base:1.10.2 .# 步骤 4 查看生成的镜像。 docker images |grep xxxx5 软件运行5.1 启动Harbor# 步骤 1 查看各个模块运行状态 docker-compose ps# 步骤 2 浏览器访问 6 FAQRedis 状态为down,查看日志报错“Unsupported system page size”redis在新版本中默认使用了jemalloc进行内存管理,由于jemalloc 在编译时就决定了page size的大小,而这个page size 会由于kernel的配置而改变,因此jemalloc在某个机器上编译,然后运行在其它机器上时可能会出现问题。这里出现这个报错的原因是docker镜像打包的环境pagesize为4k,而CentOS 7.6 for arm默认为64k解决方法:参照4.3章节修改redis源镜像信息 7 其他参考文档:        http://ic-openlabs.huawei.com/openlab/#/knowledgebasequery?task_id=R1S1584D00303813520191125094129756587245         
  • [技术干货] LibMCrypt环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 配置华为镜像yum源(可选) - 4 软件安装 - 4.1 依赖安装安装 - 4.2 LibMCrypt编译安装 - 5 软件运行 - 5.1 运行测试 - 6 其他1 软件介绍MCrypt 是php里面重要的加密支持扩展库,linux环境下该库在默认情况下不开启。window环境下,PHP>=5.3,默认开启mcrypt扩展。MCrypt基于libMCrypt,但libMCrypt自2007年开始没再继续维护,所以mcrypt拓展从PHP7.2之后删除。2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)  软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Gcc4.8.5Yum源安装  3 系统配置3.1 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache 4 软件安装4.1 依赖安装安装# 步骤 1 Yum源安装依赖。 yum install –y make gcc-c++ gcc4.2 LibMCrypt编译安装# 步骤 1 下载并解压LibMCrypt v2.0.15。 wget https://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz tar -zxvf libmcrypt-2.5.8.tar.gz && cd libmcrypt-2.5.8 # 步骤 2 配置编译选项。 ./configure --build=arm # 步骤 3 编译安装。 make -j96 && make install5 软件运行5.1 运行测试# 步骤 1 运行自带的测试套 make check6 其他参考文档:https://blog.csdn.net/nianyixiaotian/article/details/82706927          
  • [技术干货] Libopus环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 关闭防火墙(可选) - 3.2 修改SELINUX为disabled(可选) - 3.3 配置华为镜像yum源(可选) - 4 软件安装 - 4.1 Yum安装依赖 - 4.2 升级GCC - 4.3 编译安装Libopus - 5 软件运行 - 5.1 运行测试 - 6 其他1 软件介绍opus是一个有损声音编码的格式,由Xiph.Org基金会开发,之后由IETF互联网工程任务组进行标准化,目标用希望用单一格式包含声音和语音,取代Speex和Vorbis,且适用于网上上低延迟的即时声音传输,标准格式定义于RFC 6716文件。Opus格式是一个开放格式,使用上没有任何专利或限制。  2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)  软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Gcc7.3.0见4.2章节依赖Neon指令,需升级到7.3.0及之后的版本 3 系统配置3.1 关闭防火墙(可选)# 步骤 1 停止防火墙。 systemctl stop firewalld.service # 步骤 2 关闭防火墙。 systemctl disable firewalld.service3.2 修改SELINUX为disabled(可选)# 步骤 1 关闭防火墙。 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux3.3 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache 4 软件安装4.1 Yum安装依赖# 步骤 1 安装相关依赖。 yum -y install bison ncurses ncurses-devel libaio-devel openssl openssl-devel gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel gcc* git autoconf automake libtool make4.2 升级GCC# 步骤 1 下载并解压gcc。 # 目录请根据实际需要放置 cd /home wget https://mirror.bjtu.edu.cn/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz tar -xvf gcc-9.3.0.tar.gz && cd /home/gcc-9.3.0 # 步骤 2 配置编译脚本。 ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-bootstrap --perfix=PATH:指定gcc软件安装目录。默认路径/usr --mandir=PATH:指定gcc软件文档目录。默认路径/usr/share/man --infodir=PATH:指定gcc软件日志信息目录。默认路径/usr/share/info --enable-bootstrap:指定启用bootstrap方式安装 # 步骤 3 编译安装。 # -j96 参数充分利用多核CPU优势,加快编译速度,可以用lscpu查看总共有多少核 make -j96 && make install # 步骤 4 检查版本。 gcc -v4.3 编译安装Libopus# 步骤 1 下载并解压官方的预编译包。 wget https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz tar –zxvf opus-1.3.1.tar.gz cd opus-1.3.1 # 步骤 2 配置编译脚本。 # 此处用的默认配置,可通过./configure -h查看可配置项 ./configure # 步骤 3 编译安装。 make -j96 && make install 5 软件运行5.1 运行测试# 步骤 1 运行自带的测试套 make check 6 其他参考文档:https://gitlab.xiph.org/xiph/opus             
  • [技术干货] unixODBC环境搭建指导书 – CentOS 7.6(基于TaiShan 服务器)
    目录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 关闭防火墙(可选) - 3.2 修改SELINUX为disabled(可选) - 3.3 配置远程yum源(可选) - 4 软件编译 - 4.1 unixODBC Yum源安装 - 4.2 unixODBC源码安装 - 5 软件运行 - 5.1 使用unixODBC连接MySQL - 6 FAQ                                                                              1 软件介绍unixODBC是一个来连接数据库的组件。ODBC是Open Database Connect 即开发数据库互连的简称,它是一个用于访问数据库的统一界面标准。ODBC引入一个公共接口以解决不同数据库潜在的不一致性,从而很好的保证了基于数据库系统的应用程序的相对独立性。 2 环境配置硬件平台服务器TaiShan 200 2280处理器         2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。gcc4.8.5见4.1章节 3 系统配置3.1 关闭防火墙(可选)# 步骤 1 停止防火墙。 systemctl stop firewalld.service # 步骤 2 关闭防火墙。 systemctl disable firewalld.service3.2 修改SELINUX为disabled(可选)# 步骤 1 关闭防火墙。 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux3.3 配置远程yum源(可选)若环境有外网条件,可不用配置本地源,直接用系统配置好的网上源或者自己添加网上源即可。# 步骤 1 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 2 配置华为源 wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 3 清除Yum缓存 yum clean all # 步骤 4 重建缓存 yum makecache 4 软件编译4.1 unixODBC Yum源安装yum源已有unixODBC的2.3.1版本,可以直接通过yum源安装,也可以通过源码编译安装,本章节介绍yum源安装的方式,如需通过源码安装,请见4.2章节。# 步骤 1 yum安装。 yum install unixodbc unixodbc-devel # 步骤 2 查看版本和配置 odbcinst -j4.2 unixODBC源码安装# 步骤 1 安装依赖。 yum install –y gcc gcc-c++ # 步骤 2 下载源码并解压。 wget http://www.unixodbc.org/unixODBC-2.3.7.tar.gz tar -zxvf unixODBC-2.3.7.tar.gz cd unixODBC-2.3.7 # 步骤 3 执行配置。 ./configure# 步骤 4 执行编译安装。 # -j后的参数请根据机器的具体核数填写,充分发挥多核性能。 make -j96 && make install# 步骤 5 验证版本。 odbcinst -j5 软件运行5.1 使用unixODBC连接MySQL# 步骤 1 安装MySQL # 参考《数据库(mysql)环境搭建指导书.pdf》安装MySQL # 步骤 2 安装mysql-connector-odbc yum install –y mysql-connector-odbc # 步骤 3 查看unixODBC配置文件读取位置 odbcinst -j其中odbcinst.ini是驱动信息,odbc.ini是数据库连接信息# 步骤 4 配置驱动信息 # 这里修改的文件请根据步骤3查询到的读取位置修改 #本例为MySQL的驱动信息 vi /etc/odbcinst.ini [MySQL] # 驱动名称,配置连接时需要使用 Description = ODBC for MySQL Driver = /usr/lib/libmyodbc5.so Setup = /usr/lib/libodbcmyS.so Driver64 = /usr/lib64/libmyodbc5.so Setup64 = /usr/lib64/libodbcmyS.so FileUsage = 1# 步骤 5 配置数据库连接信息 vi /etc/odbc.ini [mysql] # 连接名称 Description = The Database for mysql Trace = On TraceFile = stderr Driver = MySQL # 驱动名称,对应驱动配置中的信息 SERVER = 127.0.0.1 # 连接数据库IP/Host USER = root # 连接数据库角色 PASSWORD = 123456 # 数据库连接密码 PORT = 3306 # 数据库连接端口 DATABASE = test1 # 要连接的数据库名称 charset = UTF8 option = 3# 步骤 6 使用unixODBC连接 isql mysql6 FAQERROR: Could not SQLConnect配置完使用isql连接的时候出现报错,但是没有具体的报错信息解决方法:调用时加上-v参数,显示打印报错信息,如下
  • [技术干货] EMQ X环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 配置华为镜像yum源(可选) - 4 软件安装 - 4.1 rpm包安装 - 4.2 Zip包安装 - 4.3 源码编译安装 - 5 软件运行 - 5.1 运行EMQ X - 6 其他1 软件介绍EMQ X (Erlang/Enterprise/Elastic MQTT Broker) 是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器。Erlang/OTP是出色的软实时 (Soft-Realtime)、低延时 (Low-Latency)、分布式 (Distributed)的语言平台。MQTT 是轻量的 (Lightweight)、发布订阅模式 (PubSub) 的物联网消息协议。EMQ X 设计目标是实现高可靠,并支持承载海量物联网终端的MQTT连接,支持在海量物联网设备间低延时消息路由:稳定承载大规模的 MQTT 客户端连接,单服务器节点支持50万到100万连接。分布式节点集群,快速低延时的消息路由,单集群支持1000万规模的路由。消息服务器内扩展,支持定制多种认证方式、高效存储消息到后端数据库。完整物联网协议支持,MQTT、MQTT-SN、CoAP、LwM2M、WebSocket 或私有协议支持。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)   软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Gcc4.8.5Yum源安装  3 系统配置3.1 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache 4 软件安装4.1 – 4.3是三种安装方式,请根据需求选择一种即可。4.1 rpm包安装EMQ X从4.2.0开始,官方提供CentOS 7 aach64的rpm包,可直接下载rpm包安装,低于4.2.0的版本,可采用源码编译安装的方式。# 步骤 1 下载emqx 4.2.0 rpm包。 wget https://www.emqx.io/downloads/broker/v4.2.0/emqx-centos7-4.2.0-aarch64.rpm # 步骤 2 安装rpm包。 rpm -ivh emqx-centos7-4.2.0-aarch64.rpm4.2 Zip包安装EMQ X从4.2.0开始,官方提供CentOS 7 aach64的zip包,可直接下载zip包安装,低于4.2.0的版本,可采用源码编译安装的方式。# 步骤 1 下载emqx 4.2.0 zip包。 # 实际目录请自行选择,这里以home为例 cd /home wget https://www.emqx.io/downloads/broker/v4.2.0/emqx-centos7-4.2.0-aarch64.zip # 步骤 2 解压并进入目录。 unzip emqx-centos7-4.2.0-aarch64.zip && cd emqx # 步骤 3 配置环境变量。 echo export PATH=/home/emqx/bin:$PATH >> /etc/profile source /etc/profile4.3 源码编译安装# 步骤 1 安装依赖。 yum install -y gcc* libtool libtool-ltdl-devel libevent-devel lua ncurses-devel openssl-devel flex # 步骤 2 下载并解压erlang 22.0。 # 编译EMQ X 3.2之后的版本要求erlang版本不低于21.3 wget http://erlang.org/download/otp_src_22.0.tar.gz tar –zxvf otp_src_20.0.tar.gz && cd otp_src_22.0 # 步骤 3 编译安装erlang。 # -j96 参数充分利用多核CPU优势,加快编译速度,可以用lscpu查看总共有多少核 ./configure make –j96 && make install # 步骤 4 下载EMQX 4.2.0源码。 # 实际目录请自行选择,这里以home为例 cd /home git clone -b v4.2.0 https://github.com/emqx/emqx-rel.git cd emqx-rel # 步骤 5 添加编译变量。 export EMQX_DEPS_DEFAULT_VSN=v4.0.0 # 步骤 6 执行编译。 make –j96 # 步骤 7 配置环境变量。 echo export PATH=/home/emqx-rel/_build/emqx/rel/emqx/bin:$PATH >> /etc/profile source /etc/profile5 软件运行5.1 运行EMQ X# 步骤 1 启动EMQ X emqx start# 步骤 2 查询运行状态 emqx_ctl status# 步骤 3 停止EMQ X emqx stop6 其他参考文档:https://www.huaweicloud.com/kunpeng/software/erlang.htmlhttps://docs.emqx.net/broker/latest/cn/getting-started/install.html#build              
  • [技术干货] ProxySQL环境搭建指导书 - CentOS 7.6(基于TaiShan 服务器)
    目录- 1 软件介绍 - 2 环境配置 - 3 系统配置 - 3.1 配置华为镜像yum源(可选) - 4 软件安装 - 4.1 依赖安装安装 - 4.2 Openssl安装 - 4.3 Proxysql编译安装 - 4.4 Proxysql打包RPM包(可选) - 5 软件运行 - 5.1 运行测试 -6 其他1 软件介绍ProxySQL 是基于 MySQL 的一款开源的中间件的产品,是一个灵活的 MySQL 代理层,可以实现读写分离,支持 Query 路由功能,支持动态指定某个 SQL 进行缓存,支持动态加载(无需重启 ProxySQL 服务),故障切换和一些 SQL 的过滤功能。 2 环境配置本文档基于TaiShan 200服务器硬件环境展开。服务器TaiShan 200 2280处理器2*KunPeng 920 4826内存16*32G 2666MHz系统盘1 * 1.2T SATA HDD数据盘1 * 960G SSD网络1 * GE(板载)  1 * 10GE(1822)   软件平台软件名称版本号安装方法备注CentOS7.6https://support.huawei.com/enterprise/zh/doc/EDOC1100088654/3e971c8d本文档安装过程选择的环境为“Server with GUI”,并附加了“Development Tools”。Gcc4.8.5Yum源安装 Openssl1.1.1g详见4.2章节依赖1.1.0后的版本 3 系统配置3.1 配置华为镜像yum源(可选)若环境无外网条件,请配置本地源。# 步骤 1 安装依赖 yum install –y wget # 步骤 2 备份配置文件 cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 步骤 3 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-AltArch-7.repo # 步骤 4 刷新缓存 yum clean all yum makecache4 软件安装4.1 依赖安装安装# 步骤 1 Yum源安装依赖。 yum install –y automake bzip2 cmake make gcc-c++ gcc git openssl openssl-devel gnutls gnutls-devel libtool patch4.2 Openssl安装# 步骤 1 下载并解压openssl 1.1.1g。 # 实际目录请自行选择,这里以home为例 cd /home wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz tar –zxvf openssl-1.1.1g.tar.gz && cd openssl-1.1.1g # 步骤 2 配置编译选项。 ./config # 步骤 3 编译安装。 # -j后面参数建议填写CPU核数,可使用lscpu查看 make –j96 && make install4.3 Proxysql编译安装# 步骤 1 下载Proxysql v2.0.15。 git clone –b v2.0.15 https://github.com/sysown/proxysql.git cd proxysql # 步骤 2 编译。 make –j96 # 这里执行完会在src目录生成proxysql的可执行文件,此时已经可以直接使用,安装只是将相关文件放到bin目录下 # 步骤 3 安装。 make install4.4 Proxysql打包RPM包(可选)# 步骤 1 下载Proxysql v2.0.15。 git clone –b v2.0.15 https://github.com/sysown/proxysql.git cd proxysql # 步骤 2 安装依赖。 # Proxysql使用docker镜像来打包rpm包,需要安装docker和docker-compose yum install -y yum-utils epel-release yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install -y docker-ce-3:19.03.7-3.el7.aarch64 docker-compose systemctl start docker # 步骤 3 打包rpm。 # 这一步需要根据目标安装机器的操作系统版本来打包,这里以centos7_arm64为例,可以通过Makefile查看支持哪些操作系统 make centos7_arm64 # 打包完成后,会在binaries文件夹生成对应的rpm包5 软件运行5.1 运行测试# 步骤 1 登录管理端口 # 默认管理账号admin,密码admin,管理端口6032,客户端口6033 mysql –uadmin –padmin -h127.0.0.1 –P6032# 步骤 2 添加服务器信息 # mysql服务信息请以实际情况为准 Mysql> insert into mysql_servers(hostgroup_id,hostname,port) values(10,'127.0.0.1',3306); Mysql> insert into mysql_servers(hostgroup_id,hostname,port) values(10,'127.0.0.1',3307); # 步骤 3 保存修改 Mysql> load mysql servers to runtime; Mysql> save mysql servers to disk; # 步骤 4 在两个mysql服务添加监控账号 Mysql> create user monitor@'%' identified by '123'; Mysql> grant all on *.* to monitor@'%'; # 步骤 5 proxysql 管理端口配置监控账号信息 Mysql> set mysql-monitor_username='monitor'; Mysql> set mysql-monitor_password='123'; Mysql> load mysql servers to runtime; Mysql> save mysql servers to disk; # 步骤 6 检查监控状态 Mysql> select * from mysql_server_connect_log;6 其他参考文档:https://github.com/sysown/proxysql/blob/v2.1.0/INSTALL.mdhttps://blog.csdn.net/qq_31144297/article/details/103988435