一、准备工作
1.1 部署规划
这里我打算部署存算一体模式,三节点。即三个FE节点,三个BE节点。假设三台IP分别为:10.10.10.50、10.10.10.51、10.10.10.52
我将采用三台centos7.9进行部署,单台配置为128C 256G 3T。
1.2 服务器检查项
关闭防火墙(或者只需能确保集群间机器相关端口的正常访问即可)
安装有JDK
进行机器设置和配置检查:
运行以下脚本,进行环境检查
#!/bin/bash
##说明:
##1、该脚本为StarRocks部署环境检测脚本,用来检测StarRocks运行的必要条件及重要系统参数。
##2、本脚本适用于红帽系系统,Ubuntu系及Debian系请根据检测项自行验证部署环境。
##3、当前不再检测系统中的Java环境,StarGo或Manager会使用自带的OpenJDK8为StarRocks配置程序级的运行环境。
##4、检测通过的项会显示为绿色的success,未通过的项会用红色字体给出提示及临时调整命令(服务器重启会失效)。
##5、在部署前请务必根据提示调整环境,以避免后续安装或使用过程中出现不必要的问题。
function cpu_check(){
echo ""
echo "############################ CPU检查 #############################"
cat /proc/cpuinfo | grep avx2 2>&1 >/dev/null
if [ $? -ne 0 ];then
echo -e "\033[31mStarRocks BE需要CPU支持AVX2指令集才可启动,请更换至符合要求的x86架构服务器\033[0m"
else
echo -e "\033[32msuccess\033[0m"
fi
}
function linuxversion_check(){
echo ""
echo "########################## Linux版本检查 ##########################"
num_tmp=$(cat /etc/redhat-release | tr -cd "[0-9]")
linux_version=${num_tmp:0:1}
if [ $linux_version -ne 7 ];then
echo -e "\033[31m若无特殊原因,建议您更换使用CentOS7部署StarRocks,该系统当前测试最为充分\033[0m"
else
echo -e "\033[32msuccess\033[0m"
fi
}
function glibc_check(){
echo ""
echo "########################## Glibc版本检查 ##########################"
glibc_version=$(ldd --version | head -n 1 | tail -c 3)
if [ $glibc_version -lt 17 ];then
echo -e "\033[31mStarRocks BE要求glibc版本最低为2.17才可启动,请升级glibc或使用更高内核版本的系统\033[0m"
elif [ $glibc_version -ge 37 ];then
echo -e "\033[31m检测到较高的glibc版本,StarRocks BE或将无法启动,请更换或降级系统为CentOS7\033[0m"
else
echo -e "\033[32msuccess\033[0m"
fi
}
function swap_check(){
echo ""
echo "############################ Swap检查 ############################"
swap_number=$(cat /proc/sys/vm/swappiness)
if [ $swap_number -ne 0 ];then
echo -e "\033[31m检查项1:使用swap分区可能影响查询性能,建议配置为不优先使用,临时配置命令:echo 0 | sudo tee /proc/sys/vm/swappiness\033[0m"
else
echo -e "\033[32msuccess\033[0m"
fi
swap_file=$(free -m | grep -i swap | awk '{print $2}')
if [ $swap_file -ne 0 ];then
echo -e "\033[31m检查项2:检查到s