---端口
-查看这些端口是否被占用:
netstat -tunlp | grep 80
netstat -tunlp | grep 443
---主机名
/etc/hosts 文件中的所有 IP 地址都必须是唯一。
---JDK 设置
---CPU Scaling Governor
该配置项为可选配置项。如果您的 CPU 不支持 Scaling Governor,则可以跳过该项。
CPU Scaling Governor 用于控制 CPU 能耗模式。如果您的 CPU 支持该配置项,建议您将其设置为 performance 以获得更好的 CPU 性能:
echo 'performance' | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
---内存设置
Memory Overcommit
Memory Overcommit 允许操作系统将额外的内存资源分配给进程。建议您启用 Memory Overcommit。
echo 1 | sudo tee /proc/sys/vm/overcommit_memory
---Transparent Huge Pages
Transparent Huge Pages 默认启用。因其会干扰内存分配,进而导致性能下降,建议您禁用此功能。
echo 'madvise' | sudo tee /sys/kernel/mm/transparent_hugepage/enabled
---Swap Space
建议您禁用 Swap Space。
检查并禁用 Swap Space 操作步骤如下:
关闭 Swap Space。
swapoff /<path_to_swap_space>
从 /etc/fstab 文件中删除 Swap Space 信息。
/<path_to_swap_space> swap swap defaults 0 0
确认 Swap Space 已关闭。
free -m
---Swappiness
Swappiness 会对性能造成影响,因此建议您禁用 Swappiness。
echo 0 | sudo tee /proc/sys/vm/swappiness
---SELinux
建议您禁用 SELinux。
sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
sed -i 's/SELINUXTYPE/#SELINUXTYPE/' /etc/selinux/config
setenforce 0
---防火墙
如果您启用了防火墙,请为 FE、BE 和 Broker 开启内部端口。
systemctl stop firewalld.service
systemctl disable firewalld.service
---LANG 变量
您需要使用以下命令手动检查和配置 LANG 变量:
echo "export.UTF8" >> /etc/profile
source /etc/profile
---时区
请根据您所在的实际时区设置此项。
以下示例将时区设置为 /Asia/Shanghai。
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock
ulimit 设置
如果最大文件描述符和最大用户进程的值设置得过小,StarRocks 运行可能会出现问题。
最大文件描述符
您可以通过运行以下命令设置最大文件描述符数:
ulimit -n 65535
最大用户进程
您可以通过运行以下命令设置最大用户进程数:
ulimit -u 40960
文件系统配置
建议您使用 ext4 或 xfs 日志文件系统。您可以运行以下命令来检查挂载类型:
df -Th
网络配置
tcp_abort_on_overflow
如果系统当前因后台进程无法处理的新连接而溢出,则允许系统重置新连接:
echo 1 | sudo tee /proc/sys/net/ipv4/tcp_abort_on_overflow
somaxconn
设置监听 Socket 队列的最大连接请求数为 1024:
echo 1024 | sudo tee /proc/sys/net/core/somaxconn
---NTP 设置
需要在 StarRocks 集群各节点之间配置时间同步,从而保证事务的线性一致性。您可以使用 pool.ntp.org 提供的互联网时间服务,也可以使用离线环境内置的 NTP 服务。例如,您可以使用云服务提供商提供的 NTP 服务。
查看 NTP 时间服务器是否存在。
rpm -qa | grep ntp
如不存在,运行以下命令安装 NTP 时间服务器。
sudo yum install ntp ntpdate && \
sudo systemctl start ntpd.service && \
sudo systemctl enable ntpd.service
---检查 NTP 服务。
systemctl list-unit-files | grep ntp
检查 NTP 服务连接和监控状态。
netstat -tlunp | grep ntp
检查服务是否与 NTP 服务器同步。
ntpstat
检查网络中的 NTP 服务器。
ntpq -p
---高并发配置
echo 120000 > /proc/sys/kernel/threads-max
echo 262144 > /proc/sys/vm/max_map_count
echo 200000 > /proc/sys/kernel/pid_max