配置环境

- 本文中所有未作特别说明的操作皆需在Host1和Host2同步进行,仅需在某台服务器单独进行的操作将注明Host1和Host2进行区分。
- 本文命令中所涉及Mellanox的PF网口名皆以enp1s0f0/1为例,VF端口皆以enp1s0f0_$为例,PCI端口号皆以0000:01:00/1.$为例,用户操作中请以实际为准进行更换。
BIOS设置
- 进入BIOS,选择 。
- 将“Support Smmu”设置为“Enabled”。
- 返回上一级目录,选择 。
- 将“SRIOV”设置为“Enable”。
配置内存大页
- 使用SSH远程登录工具,登录到服务器上,切换到root账户下。
- 查看是否已经配置内存大页。
1
cat /proc/meminfo |grep -i huge
- “HugePages_Total”和“Hugepagesize”均大于0,且“Hugepagesize”超过5GB,则无须再进行配置,操作结束。
- “HugePages_Total”和“Hugepagesize”至少有一个为0,则执行3。
- 编辑“/boot/efi/EFI/centos/grub.cfg”文件,修改启动设置。
1
vim /boot/efi/EFI/centos/grub.cfg
- 配置开机挂载大页。
- 编辑“/etc/fstab”文件。
1
vim /etc/fstab
新增以下文本:
1
nodev /mnt/huge hugetlbfs defaults 0 0
- 保存退出。
1
:wq
- 编辑“/etc/fstab”文件。
- 创建“/mnt/huge”目录。
1
mkdir -p /mnt/huge
- 重启服务器生效。
1
reboot
- 再次执行2,确认配置是否生效。
开启IOMMU及CPU隔离
- 编辑“/etc/grub2-efi.cfg”文件。
1
vim /etc/grub2-efi.cfg
在开机启动项(第100行末尾处)后面添加IOMMU设置:
isolcpus=0-5 iommu.passthrough=1
- 重启服务器生效配置。
1
reboot
关闭NetworkManager
执行以下命令,关闭NetworkManager。
1 2 | systemctl stop NetworkManager
systemctl disable NetworkManager
|
关闭SELinux
- 关闭防火墙。
1 2
systemctl stop firewalld.service systemctl disable firewalld.service
- 编辑“/etc/selinux/config”文件。
1
vim /etc/selinux/config
将“SELINUX”设置为“disabled”。
临时关闭SELinux,使用命令setenforce 0
- 重启服务器生效配置。
1
reboot
配置本地镜像源

为匹配系统对应的kernel-devel,需配置本地镜像源。
- 配置本地yum源。
1 2 3 4 5
mkdir /mnt/repo mount -o loop /home/iso/CentOS-7-aarch64-Everything-1810.iso /mnt/repo cd /etc/yum.repos.d mkdir backup mv *.repo backup
- 编辑local.repo。
1
vim /etc/yum.repo.d/local.repo
- 添加以下内容:
1 2 3 4 5 6
[local] name=local baseurl=file:///mnt/repo enable=1 gpgcheck=0 gpgkey=file:///mnt/repo/RPM-GPG-KEY-CentOS-7
- 保存退出。
1
:wq
- 添加以下内容:
- 清除所有缓存。
1
yum clean all
- 构建缓存。
1
yum makecache
安装Mellanox网卡驱动
- 将下载好的Mellanox网卡驱动包从本地上传至服务器。
- 解压驱动包并进入解压后的文件夹。
1 2
tar -zxvf MLNX_OFED_LINUX-5.1-2.3.7.1-rhel7.6alternate-aarch64.tgz cd MLNX_OFED_LINUX-5.1-2.3.7.1-rhel7.6alternate-aarch64
- 安装依赖。
1
yum install unbound tcl gcc-gfortran fuse-libs tk createrepo kernel-devel python-devel redhat-rpm-config rpm-build gcc gcc-c++
- 安装驱动。
1
./mlnxofedinstall --ovs-dpdk --upstream-libs --add-kernel-support
- 更新initramfs。
1
dracut -f
- 加载驱动。
1
/etc/init.d/openibd restart
加载驱动如果报如下失败,可以执行rmmod hns_roce_hw_v2,然后再次加载驱动。
若环境上有1822网卡,会因为1822网卡产生大量的软中断导致服务器性能降低,因此建议关闭1822网卡。
执行如下命令关闭1822网卡。
1
rmmod hinic
每次服务器重启后,都需要执行一次此操作。
