一、硬件环境检查,确认硬件资源是否满足部署需要
1、操作系统安装情况:确认服务器是否安装操作系统。
2、是否安装操作系统常用工具:例如nmon(监控系统资源使用情况)/perf(诊断、解析指定程序问题)/tar等操作系统工具。
3、CPU信息:lscpu查看cpu信息,如CPU架构、颗数、核数
4、存储划分及挂载:建议划分至少3块盘符,分别是dmdata实例盘、dmbak备份盘和dmarch归档盘。Fdisk -l查看磁盘情况。Df -Th查看文件类型及挂载点
5、网络环境是否具备:检查网卡个数及带宽集群
6、端口确定:确定端口是否可用。检查对应的防火墙是否关闭,防火墙开启可能会导致数据库搭建失败。
7、查看glibc/gcc版本:安装达梦数据库,glibc版本不能低于2.3,linux内核不能低于2.6。
二、软件环境检查,确认数据库与操作系统版本
1、操作系统版本:不同版本和架构的操作系统对应的达梦数据库安装包有所不同。可参考指令如下:
- cat /etc/issue
- Cat /etc/os-release |grep “PRETTY_NAME”
- Cat /etc/.productinfo
2、数据库版本:查看数据库版本标识:查看软件授权许可证,ent企业版、sec安全版
三、环境检查及修改调整操作
1、操作系统时间检查
操作系统时间不正确可能会出现以下问题:
- 试用授权产品,如果试用授权过期,会出现无法继续使用现象;
- 集群自动切换场景,可能会导致集群检测节点服务异常,引发误切换;
- 数据库运行日志、数据库服务日志、归档日志、备份集等时间记录错误。
查看当前操作系统时间与数据库运行系统时间是否一致:
操作系统时间:
[root@dm3 ~]# date
数据库运行系统时间
SQL> select sysdate;
如果操作系统时间与正常北京时间相差很大,可手动修改调整操作系统时间,命令如下:date -s “yyyy-mm-dd HH:MM:SS”,建议将数据库服务器加入时间自动同步服务中,避免每次均需手动调整。
2、安全防护软件检查
不通防护软件,影响的情况不同,常见的如下:
(1)360软件,windows环境下会将达梦数据库后台服务判断为非法的服务,会自动清理该数据库服务。(linux或windows均建议卸载360软件)
(2)奇安信网神终端安全管理系统,会自动防护端口。
3、关闭SELinux
SELinux是安全增强型Linux系统,它是一个Linux内核模块,也是Linux的一个安全子系统。
Selinux一共有3中状态,分别是enforcing/permissive和disabled。
(1)enforcing:强制模式,代表selinux在运行中,且已经开始限制domain/type之间的验证关系;
(2)permissive:宽容模式,代表selinux在运行中,不过不会限制domain/type之间的验证关系,即使验证不正确,进程仍可以对文件进行操作,不过如果验证不正确会出现警告。
(3)disabled:关闭模式,selinux没有实际运行。
4、防火墙检查
如果未关闭防火墙,系统默认只开放22端口,部署单机DM数据库,出现数据库无法访问情况;而集群无法部署成功。
(1)关闭防火墙指令
临时关闭防火墙:systemctl stop firewalld
关闭开机自启动:systemctl disable firewalld
(2)添加端口到防火墙白名单
查看防火墙端口开放情况:
--redhat7/8
[root@dm3 ~]# firewall-cmd --zone=public --list-ports
FirewallD is not running
--redhat6
iptables -L
添加端口到防火墙:
--redhat7/8
添加时需加入--permanent表示永久生效,否则只是临时添加,重启后就失效:
添加:firewall-cmd --zone=public --add-port=5236/tcp --permanent
重新加载使其生效:firewall-cmd --reload
查看是否生效:firewall-cmd --zone=public --query-port=5236/tcp
删除:firewall-cmd --zone=public -remove-port=5236/tcp --permanent
--redhat6修改系统文件/etc/sysconfig/iptables,永久修改,需要重启防火墙服务:
[root@dm3 ~]# vi /etc/sysconfig/iptables #添加5236端口到防火墙
-A INPUT -p tcp -m tcp --dport 5236 -j ACCEPT
[root@dm3 ~]# service iptables save;service iptables restart #保存后重启防火墙
5、检查网络
(1)检查网络的命令如下
--拷贝一个文件到远程服务器的指定目录下(/opt):
[root@dm3 ~]# scp -r xxx dmdba@ip:/opt/
--拷贝一个文件,指定端口到远程服务器指定目录下(/opt)
[root@dm3 ~]# scp -r -P 端口 xxx dmdba@ip:/opt/
--网络配置以及速度是否正常
[root@dm3 ~]# ethtool ens33
Settings for ens33:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
--查看网络信息
[root@dm3 ~]# sar -n DEV 1 100
Linux 3.10.0-862.el7.x86_64 (dm3) 05/25/2023 _x86_64_ (8 CPU)
04:35:21 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
04:35:22 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:35:22 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:35:22 PM virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:35:22 PM ens33 0.00 0.00 0.00 0.00 0.00 0.00 0.00
(2)测试网络命令如下
a.服务器大于1台,测试服务器间网络性能情况,上传netperf、netserver文件至服务器,并增加执行权限,其中netserver需复制到每台服务器。
[root@dm3 ~]# chmod +x netperf netserver
b.在每台服务器均启动netserver服务并确认进程存在
[root@dm3 ~]# ./netserver -p 12306
[root@dm3 ~]# ps -ef |grep netserver
c.在其中一台服务器使用netperf测试至所有服务器,并记录测试结果
[root@dm3 ~]# ./netperf -H ip -p 12306 -f M -l 60
6、检查NUMA是否关闭
关闭NUMA命令
--编辑/etc/default/grub文件,加上“numa=off”,重新生成/etc/grub2.cfg配置文件,然后重启操作系统,确认是否生效。
[root@dm3 ~]# vi /etc/default/grub
[root@dm3 ~]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet numa=off"
GRUB_DISABLE_RECOVERY="true"
[root@dm3 ~]# grub2-mkconfig -o /etc/grub2.cfg #重新生成/etc/grub2.cfg配置文件
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-862.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-862.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-11f52a8ef1fe496ea81a92deb1fb340c
Found initrd image: /boot/initramfs-0-rescue-11f52a8ef1fe496ea81a92deb1fb340c.img
done
[root@dm3 ~]# reboot #重启操作系统
[root@dm3 ~]# dmesg | grep numa #确认numa关闭是否生效
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-862.el7.x86_64 root=/dev /mapper/rhel-root ro crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rh gb quiet numa=off
[ 0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-3.10.0-862.el7.x86_64 ro ot=/dev/mapper/rhel-root ro crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/ swap rhgb quiet numa=off
7、禁用透明大页
--查看是否启用透明大页
[root@dm3 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
其中[always]表示透明大页启用,[never]表示透明大页禁用
永久禁用透明大页命令,即修改/etc/default/grub配置文件,添加“transparent_hugepage=never”:
[root@dm3 ~]# vi /etc/default/grub
[root@dm3 ~]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet numa=off transparent_hugepage=never"
GRUB_DISABLE_RECOVERY="true"
[root@dm3 ~]#
[root@dm3 ~]# grub2-mkconfig -o /etc/grub2.cfg #重新生成/etc/grub2.cfg配置文件
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-862.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-862.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-11f52a8ef1fe496ea81a92deb1fb340c
Found initrd image: /boot/initramfs-0-rescue-11f52a8ef1fe496ea81a92deb1fb340c.img
done
重启操作系统后再次确认透明大页是否关闭:
[root@dm3 ~]# reboot
[root@dm3 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
8、调整sysctl.conf参数
修改/etc/sysctl.conf,添加“vm.overcommit_memory=0”,然后执行sysctl -p使配置永久生效
9、调整system.conf参数
编辑配置文件/etc/systemd/system.conf
DefaultLimitNOFILE=65536 #用户默认最大打开文件数
DefaultLimitNPROC=65535 #用户默认最大进程数
10、设置DM数据库运行参数限制
在/etc/security/limits.conf中添加达梦用户文件打开最大数等限制
[root@dm3 ~]# cp /etc/security/limits.conf /etc/security/limits.conf_bak0418
[root@dm3 ~]# vi /etc/security/limits.conf
添加以下内容(可根据实际情况设置限制最大值):
dmdba soft nproc 10240
dmdba hard nproc 10240
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba hard data unlimited
dmdba soft data unlimited
dmdba hard fsize unlimited
dmdba soft fsize unlimited
dmdba hard core unlimited
dmdba soft core unlimited
学习社区: 达梦在线服务平台(https://eco.dameng.com)