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

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

1. 硬件环境检查

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

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

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

# 检查CPU核心数
# nproc
16

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

生产环境建议:最小内存8GB(测试环境),生产环境建议32GB以上。磁盘空间:系统盘至少50GB,数据盘根据业务需求配置,建议至少200GB。CPU:测试环境至少4核心,生产环境建议8核心以上。

2. 操作系统检查

Cassandra 4.0支持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

# 关闭防火墙(生产环境建议开放特定端口而非完全关闭)
# systemctl stop firewalld
# systemctl disable firewalld

3. 安装准备

在安装Cassandra之前,需要进行一系列准备工作,包括下载安装介质、创建用户和组、配置网络等。

# 下载Cassandra 4.0安装介质
# 从Apache官网下载Cassandra 4.0安装包
# 下载地址:https://cassandra.apache.org/download/

# 创建Cassandra用户和组
# 创建组
# groupadd -g 1001 cassandra

# 创建用户
# useradd -u 1001 -g cassandra cassandra

# 设置密码
# passwd cassandra

# 创建安装目录
# mkdir -p /data/cassandra
# chown -R cassandra:cassandra /data/cassandra

# 配置网络
# 确保服务器IP地址为192.168.1.51
# ip addr show eth0
2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.1.51/24 brd 192.168.1.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe12:3456/64 scope link noprefixroute
valid_lft forever preferred_lft forever

# 配置主机名
# vi /etc/hosts
192.168.1.51 fgedudb01 fgedudb01.fgedu.net.cn
192.168.1.52 fgedudb02 fgedudb02.fgedu.net.cn
192.168.1.53 fgedudb03 fgedudb03.fgedu.net.cn

风哥提示:Cassandra安装需要root权限,建议使用root账户进行安装。

4. Cassandra软件安装

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

# 上传安装介质到服务器
# scp apache-cassandra-4.0.0-bin.tar.gz root@192.168.1.51:/tmp

# 解压安装包
# cd /tmp
# tar -xzf apache-cassandra-4.0.0-bin.tar.gz
# mv apache-cassandra-4.0.0 /usr/local/cassandra
# chown -R cassandra:cassandra /usr/local/cassandra

# 验证安装
# ls -la /usr/local/cassandra/
total 40
drwxr-xr-x 10 cassandra cassandra 4096 Mar 31 10:00 .
drwxr-xr-x 3 root root 4096 Mar 31 10:00 ..
drwxr-xr-x 2 cassandra cassandra 4096 Mar 31 10:00 bin
drwxr-xr-x 2 cassandra cassandra 4096 Mar 31 10:00 conf
drwxr-xr-x 3 cassandra cassandra 4096 Mar 31 10:00 data
drwxr-xr-x 2 cassandra cassandra 4096 Mar 31 10:00 interface
drwxr-xr-x 4 cassandra cassandra 4096 Mar 31 10:00 lib
drwxr-xr-x 2 cassandra cassandra 4096 Mar 31 10:00 logs
drwxr-xr-x 2 cassandra cassandra 4096 Mar 31 10:00 pylib
drwxr-xr-x 3 cassandra cassandra 4096 Mar 31 10:00 tools

5. 集群配置

配置Cassandra集群,包括节点配置和网络设置。

# 以cassandra用户登录
# su – cassandra

# 配置环境变量
$ vi ~/.bashrc

# 添加以下内容
export CASSANDRA_HOME=/usr/local/cassandra
export PATH=$CASSANDRA_HOME/bin:$PATH

# 使环境变量生效
$ source ~/.bashrc

# 编辑Cassandra配置文件
$ vi /usr/local/cassandra/conf/cassandra.yaml

# 修改以下配置
cluster_name: ‘fgedu_cassandra_cluster’
seed_provider:
– class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
– seeds: “192.168.1.51,192.168.1.52,192.168.1.53”
data_file_directories:
– /data/cassandra/data
commitlog_directory: /data/cassandra/commitlog
saved_caches_directory: /data/cassandra/saved_caches
listen_address: 192.168.1.51
rpc_address: 192.168.1.51
endpoint_snitch: GossipingPropertyFileSnitch
dc_suffix: dc1
rack: rack1

# 启动Cassandra
$ cassandra -f

# 验证Cassandra状态
# 另开一个终端
$ nodetool status
Datacenter: dc1
==============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
— Address Load Tokens Owns (effective) Host ID Rack
UN 192.168.1.51 100.0 KB 256 33.3% 5509c7a0-9c8a-4f0e-9b4e-1a9c1c3c5c5c rack1
UN 192.168.1.52 100.0 KB 256 33.3% 5509c7a0-9c8a-4f0e-9b4e-1a9c1c3c5c5d rack1
UN 192.168.1.53 100.0 KB 256 33.3% 5509c7a0-9c8a-4f0e-9b4e-1a9c1c3c5c5e rack1

6. 测试验证

创建测试键空间和表,验证Cassandra功能正常。学习交流加群风哥QQ113257174

# 连接Cassandra
$ cqlsh 192.168.1.51

# 创建键空间
cqlsh> CREATE KEYSPACE fgedudb WITH replication = {‘class’: ‘SimpleStrategy’, ‘replication_factor’: 3};

# 使用键空间
cqlsh> USE fgedudb;

# 创建测试表
cqlsh> CREATE TABLE fgedu_employees (
id INT PRIMARY KEY,
name TEXT,
salary DECIMAL
);

# 插入测试数据
cqlsh> INSERT INTO fgedu_employees (id, name, salary) VALUES (1, ‘张三’, 5000.00);
cqlsh> INSERT INTO fgedu_employees (id, name, salary) VALUES (2, ‘李四’, 6000.00);
cqlsh> INSERT INTO fgedu_employees (id, name, salary) VALUES (3, ‘王五’, 7000.00);

# 查询测试数据
cqlsh> SELECT * FROM fgedu_employees;

id | name | salary
—-+——+——–
1 | 张三 | 5000.0
2 | 李四 | 6000.0
3 | 王五 | 7000.0

(3 rows)

7. 备份配置

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

# 创建备份目录
# mkdir -p /backup/cassandra
# chown -R cassandra:cassandra /backup/cassandra

# 执行备份
# 以cassandra用户执行
$ su – cassandra
$ nodetool snapshot -t fgedudb_backup_20260331 fgedudb

# 验证备份文件
$ ls -la /data/cassandra/data/fgedudb/fgedu_employees/snapshots/
fgedudb_backup_20260331/

# 配置自动备份
# 创建备份脚本
$ vi ~/backup_cassandra.sh

#!/bin/bash

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

# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR

# 执行备份
nodetool snapshot -t fgedudb_backup_$DATE fgedudb

# 复制备份文件到备份目录
cp -r /data/cassandra/data/fgedudb/*/snapshots/fgedudb_backup_$DATE $BACKUP_DIR/

# 保留最近7天的备份
find $BACKUP_DIR -name “fgedudb_backup_*” -type d -mtime +7 -exec rm -rf {} \;

# 给脚本添加执行权限
$ chmod +x ~/backup_cassandra.sh

# 添加到crontab
$ crontab -e

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

8. 升级迁移

Cassandra数据库的升级和迁移过程。

# 升级Cassandra版本
# 1. 下载Cassandra 4.1安装包
# 2. 上传安装包到服务器
# 3. 停止Cassandra服务
$ nodetool stopdaemon

# 4. 解压安装包
# cd /tmp
# tar -xzf apache-cassandra-4.1.0-bin.tar.gz
# mv apache-cassandra-4.1.0 /usr/local/cassandra-4.1
# chown -R cassandra:cassandra /usr/local/cassandra-4.1

# 5. 复制配置文件
# cp /usr/local/cassandra/conf/cassandra.yaml /usr/local/cassandra-4.1/conf/
# cp /usr/local/cassandra/conf/cassandra-env.sh /usr/local/cassandra-4.1/conf/

# 6. 更新符号链接
# ln -sf /usr/local/cassandra-4.1 /usr/local/cassandra

# 7. 启动Cassandra
$ cassandra -f

# 8. 验证升级结果
$ nodetool status
$ cqlsh -e “SELECT * FROM fgedudb.fgedu_employees;”

# 数据库迁移
# 从旧版本Cassandra迁移到Cassandra 4.0

# 1. 在旧系统上创建备份
# 2. 将备份文件复制到新系统
# 3. 在新系统上恢复备份
$ su – cassandra
$ nodetool refresh fgedudb fgedu_employees

# 4. 验证迁移结果
$ cqlsh -e “SELECT * FROM fgedudb.fgedu_employees;”

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

9. 总结

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

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

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

联系我们

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

微信号:itpux-com

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