VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

操作系统参数调优

在性能调优过程中,可以根据实际业务情况修改关键操作系统(OS)配置参数,以提升Vastbase数据库的性能。

前提条件

需要用户手动检查操作系统参数是否和建议值一致,如果不一致,用户可根据实际业务情况去手动修改。

如果使用OM工具进行Vastbase的安装,可使用OM工具gs_check进行检查操作。

内存相关参数设置

配置“sysctl.conf”文件,修改内存相关参数vm.extfrag_threshold为1000(参考值),如果文件中没有内存相关参数,可以手动添加。

vi /etc/sysctl.conf

修改完成后,请执行如下命令,使参数生效。

sysctl -p 

网络相关参数设置

1、配置“sysctl.conf”文件,修改网络相关参数,如果文件中没有网络相关参数,可以手动添加。详细说明请参见表1

vi /etc/sysctl.conf

2、在修改完成后,请执行如下命令,使参数生效。

sysctl -p 

表 1 网络相关参数

参数名

参考值

说明

net.ipv4.tcp_timestamps

1

表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭,1表示打开。

net.ipv4.tcp_mem

94500000 915000000 927000000

第一个数字表示,当tcp使用的page少于 94500000 时,kernel不对其进行任何的干预。

第二个数字表示,当tcp使用的page超过 915000000 时,kernel会进入“memory pressure”压力模式。

第三个数字表示,当tcp使用的pages超过 927000000 时,就会报:Out of socket memory。

net.ipv4.tcp_max_orphans

3276800

最大孤儿套接字(orphan sockets)数。

net.ipv4.tcp_fin_timeout

60

表示系統默认的TIMEOUT时间。

net.ipv4.ip_local_port_range

26000 65535

TCP和UDP能够使用的port段。

  • 示例1:设置10GE网卡最大传输单元(MTU),使用ifconfig命令设置。10GE网卡推荐设置为8192,可提升网络带宽利用率。

    #ifconfig ethx mtu 8192
    #ifconfig ethx
    ethx   Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX
    inet addr:xxx.xxx.xxx.xxx  Bcast:xxx.xxx.xxx.xxx  Mask:xxx.xxx.xxx.0
    inet6 addr: fxxx::9xxx:bxxx:xxxa:1d18/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST  MTU:8192  Metric:1
    RX packets:179849803 errors:0 dropped:0 overruns:0 frame:0
    TX packets:40492292 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:17952090386 (17120.4 Mb)  TX bytes:171359670290 (163421.3 Mb)
    
    • ethx为10GE数据库内部使用的业务网卡。
    • 第一条命令设置MTU,第二条命令验证是否设置成功,MTU的值为“MTU:8192”。
    • 需使用root用户设置。
  • 示例2:设置10GE网卡接收(rx)、发送队列(tx)长度,使用ethtool工具设置。10GE网卡推荐设置为4096,可提升网络带宽利用率。

    # ethtool -G ethx rx 4096 tx 4096
    # ethtool -g ethx
    Ring parameters for ethx:
    Pre-set maximums:
    RX:             4096
    RX Mini:        0
    RX Jumbo:       0
    TX:             4096
    Current hardware settings:
    RX:             4096
    RX Mini:        0
    RX Jumbo:       0
    TX:             4096
    
  • ethx为10GE数据库内部使用的业务网卡。
  • 第一条命令设置网卡接收、发送队列长度,第二条命令验证是否设置成功,示例的输出表示设置成功。
  • 需使用root用户设置。

I/O相关参数设置

设置透明大页属性

1、使用root用户,通过配置如下系统服务实现永久关闭透明大页的目的。

vi /etc/systemd/system/disable-thp.service

[Unit]
Description=Disable Transparent Huge Pages (THP)
[Service]
Type=simple
ExecStart=/bin/sh -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled && echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag"

[Install]
WantedBy=multi-user.target

2、修改完成后,执行如下命令加载系统服务,并设置开机自启动。

systemctl daemon-reload
systemctl start disable-thp
systemctl enable disable-th

3、查看THP状态,当返回结果均为always madvise [never]时表示成功设置透明大页永久关闭。

cat /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/transparent_hugepage/defrag