1. 首页 > 软件安装教程 > 正文

starrocks安装-starrocks 2.5.8 for RHEL 9安装配置及升级迁移详细过程

1. 硬件环境检查

在安装starrocks之前,必须对服务器的硬件环境进行全面检查,确保满足starrocks 2.5.8的最低要求。更多学习教程www.fgedu.net.cn

# 检查内存大小
# free -h
total used free shared buff/cache available
Mem: 64G 2.1G 60G 8.5M 1.8G 61G
Swap: 32G 0B 32G

# 检查磁盘空间
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 8.5M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda1 50G 15G 36G 30% /
/dev/sdb1 2000G 20G 1980G 1% /data

# 检查CPU核心数
# nproc
16

# 检查系统架构
# uname -m
x86_64

生产环境建议:StarRocks建议内存32GB以上,CPU 8核心以上,磁盘空间500GB以上。数据目录建议使用SSD,以提高性能。

2. 操作系统检查

starrocks 2.5.8支持RHEL 7.3+、RHEL 8.0+、RHEL 9.0+等操作系统。本文以RHEL 9为例。学习交流加群风哥微信: itpux-com

# 检查操作系统版本
# cat /etc/redhat-release
Red Hat Enterprise Linux release 9.0 (Plow)

# 检查内核版本
# uname -r
5.14.0-70.22.1.el9_0.x86_64

# 检查SELinux状态
# getenforce
Disabled

# 关闭SELinux(如未关闭)
# vi /etc/selinux/config
SELINUX=disabled

# 检查防火墙状态
# systemctl status firewalld

# 开放starrocks相关端口
# firewall-cmd –permanent –add-port=8030/tcp
# firewall-cmd –permanent –add-port=9020/tcp
# firewall-cmd –permanent –add-port=9030/tcp
# firewall-cmd –permanent –add-port=9010/tcp
# firewall-cmd –permanent –add-port=9060/tcp
# firewall-cmd –permanent –add-port=8040/tcp
# firewall-cmd –permanent –add-port=9050/tcp
# firewall-cmd –reload

3. 安装准备

在安装starrocks之前,需要进行一系列准备工作,包括安装Java、配置网络等。

# 安装Java
# dnf install -y java-1.8.0-openjdk-devel

# 检查Java版本
# java -version
openjdk version “1.8.0_382”
OpenJDK Runtime Environment (build 1.8.0_382-b05)
OpenJDK 64-Bit Server VM (build 25.382-b05, mixed mode)

# 安装必要的依赖
# dnf install -y wget tar gcc-c++

# 下载StarRocks安装包
# wget https://www.starrocks.io/download/request-download/2.5.8/StarRocks-2.5.8.tar.gz

# 创建安装目录
# mkdir -p /opt/starrocks

风哥提示:StarRocks安装需要Java环境,建议使用Java 8。

4. starrocks软件安装

现在开始安装starrocks 2.5.8软件,按照以下步骤进行。

# 解压安装包
# tar -xzvf StarRocks-2.5.8.tar.gz
# mv StarRocks-2.5.8 /opt/starrocks

# 配置环境变量
# vi /etc/profile.d/starrocks.sh
export STARROCKS_HOME=/opt/starrocks
export PATH=$PATH:$STARROCKS_HOME/bin

# 使环境变量生效
# source /etc/profile

# 创建存储目录
# mkdir -p /data/starrocks/be/storage
# chown -R root:root /data/starrocks

5. 数据库配置

配置StarRocks数据库,包括FE和BE的配置。

# 配置FE
# vi $STARROCKS_HOME/fe/conf/fe.conf

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
hostname=localhost
http_port=8030
rpc_port=9020
query_port=9030
timer_port=9010
external_address=localhost:8030
mem_limit=32g

# 配置BE
# vi $STARROCKS_HOME/be/conf/be.conf

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
be_port=9060
webserver_port=8040
heartbeat_service_port=9050
external_address=localhost:9060
storage_root_path=/data/starrocks/be/storage
mem_limit=32g

# 启动FE
# $STARROCKS_HOME/fe/bin/start_fe.sh –daemon

# 启动BE
# $STARROCKS_HOME/be/bin/start_be.sh –daemon

# 添加BE节点
# mysql -h localhost -P 9030 -u root -e “ALTER SYSTEM ADD BACKEND ‘localhost:9050’;”

# 检查状态
# mysql -h localhost -P 9030 -u root -e “SHOW PROC ‘/backends’;”
# mysql -h localhost -P 9030 -u root -e “SHOW PROC ‘/frontends’;”

6. 测试验证

连接StarRocks并验证功能正常。学习交流加群风哥QQ113257174

# 连接StarRocks
# mysql -h localhost -P 9030 -u root

# 测试查询
MySQL [(none)]> CREATE DATABASE test;
MySQL [(none)]> USE test;
MySQL [test]> CREATE TABLE test_table (id INT, name VARCHAR(100)) DISTRIBUTED BY HASH(id) PROPERTIES(“replication_num” = “1”);
MySQL [test]> INSERT INTO test_table VALUES (1, ‘test’);
MySQL [test]> SELECT * FROM test_table;

+——+——+
| id | name |
+——+——+
| 1 | test |
+——+——+

# 检查服务状态
# $STARROCKS_HOME/fe/bin/show_fe.sh
# $STARROCKS_HOME/be/bin/show_be.sh

7. 备份配置

配置StarRocks备份策略,确保数据安全。

# 创建备份目录
# mkdir -p /backup/starrocks

# 备份FE元数据
# cp -r $STARROCKS_HOME/fe/meta /backup/starrocks/

# 备份BE数据
# cp -r /data/starrocks/be/storage /backup/starrocks/

# 备份配置文件
# cp -r $STARROCKS_HOME/fe/conf /backup/starrocks/
# cp -r $STARROCKS_HOME/be/conf /backup/starrocks/

# 配置自动备份
# 创建备份脚本
# vi /root/backup_starrocks.sh

#!/bin/bash

DATE=$(date +%Y%m%d)
BACKUP_DIR=”/backup/starrocks/$DATE”

# 创建备份目录
mkdir -p $BACKUP_DIR

# 备份FE元数据
cp -r $STARROCKS_HOME/fe/meta $BACKUP_DIR/

# 备份BE数据
cp -r /data/starrocks/be/storage $BACKUP_DIR/

# 备份配置文件
cp -r $STARROCKS_HOME/fe/conf $BACKUP_DIR/
cp -r $STARROCKS_HOME/be/conf $BACKUP_DIR/

# 给脚本添加执行权限
# chmod +x /root/backup_starrocks.sh

# 添加到crontab
# crontab -e

# 添加以下内容(每天凌晨2点执行备份)
0 2 * * * /root/backup_starrocks.sh

生产环境建议:备份策略应包括每日全量备份,备份文件应存储在不同的物理位置,定期测试备份恢复以确保备份有效性。

8. 升级迁移

StarRocks的升级和迁移过程。

# 升级StarRocks版本
# 1. 备份配置和数据
# /root/backup_starrocks.sh

# 2. 停止服务
# $STARROCKS_HOME/fe/bin/stop_fe.sh
# $STARROCKS_HOME/be/bin/stop_be.sh

# 3. 下载新版本
# wget https://www.starrocks.io/download/request-download/2.5.8/StarRocks-2.5.8.tar.gz

# 4. 解压安装包
# tar -xzvf StarRocks-2.5.8.tar.gz
# mv /opt/starrocks /opt/starrocks-old
# mv StarRocks-2.5.8 /opt/starrocks

# 5. 复制配置文件
# cp -r /opt/starrocks-old/fe/conf/* /opt/starrocks/fe/conf/
# cp -r /opt/starrocks-old/be/conf/* /opt/starrocks/be/conf/

# 6. 启动服务
# $STARROCKS_HOME/fe/bin/start_fe.sh –daemon
# $STARROCKS_HOME/be/bin/start_be.sh –daemon

# 7. 验证升级结果
# mysql -h localhost -P 9030 -u root -e “SHOW PROC ‘/frontends’;”

# 数据库迁移
# 从旧版本StarRocks迁移到StarRocks 2.5.8

# 1. 在旧系统上导出数据
# 导出数据库列表
# mysql -h old-server -P 9030 -u root -e “SHOW DATABASES” > databases.txt

# 导出表结构和数据
while read db; do
if [ “$db” != “information_schema” ] && [ “$db” != “performance_schema” ]; then
mysql -h old-server -P 9030 -u root -e “SHOW TABLES FROM $db” > ${db}_tables.txt
while read table; do
mysql -h old-server -P 9030 -u root -e “SHOW CREATE TABLE $db.$table” > ${db}_${table}.sql
mysql -h old-server -P 9030 -u root -e “SELECT * FROM $db.$table” INTO OUTFILE “${db}_${table}.tsv”
done < ${db}_tables.txt fi done < databases.txt # 2. 将备份文件复制到新系统 # scp -r *.txt *.sql *.tsv root@new-server:/backup/starrocks/ # 3. 在新系统上恢复数据 # 创建数据库 while read db; do if [ "$db" != "information_schema" ] && [ "$db" != "performance_schema" ]; then mysql -h localhost -P 9030 -u root -e "CREATE DATABASE IF NOT EXISTS $db" fi done < databases.txt # 创建表并导入数据 while read db; do if [ "$db" != "information_schema" ] && [ "$db" != "performance_schema" ]; then while read table; do mysql -h localhost -P 9030 -u root -e "$(cat ${db}_${table}.sql)" mysql -h localhost -P 9030 -u root -e "LOAD DATA LOCAL INFILE '${db}_${table}.tsv' INTO TABLE $db.$table" done < ${db}_tables.txt fi done < databases.txt

风哥提示:StarRocks升级和迁移前,建议先在测试环境进行演练,确保升级过程顺利。同时,备份所有重要数据,以防万一。

9. 总结

本文详细介绍了starrocks 2.5.8 for RHEL 9的安装、配置、升级和迁移过程。通过按照本文的步骤操作,可以成功部署StarRocks服务并确保其稳定运行。from:fengge

生产环境建议:
– 定期备份StarRocks数据和配置,建议每天执行一次全备份
– 监控StarRocks性能,定期检查服务状态和日志
– 定期更新StarRocks版本,确保系统安全性和性能
– 合理规划StarRocks存储,避免空间不足
– 配置合适的参数,优化StarRocks性能
– 对于生产环境,建议部署多节点集群,提高可用性和可靠性

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息