开始部署之前,建议先按照Ubuntu切换到国内镜像源操作一下,能省下大把宝贵时间!
示例机器
主机 | IP |
---|---|
cassandra-1 | 192.168.0.1 |
cassandra-2 | 192.168.0.2 |
cassandra-3 | 192.168.0.3 |
安装Cassandra
echo "deb http://www.apache.org/dist/cassandra/debian 39x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
sudo apt update
sudo apt -y install cassandra
sudo apt install openjdk-8-jdk-headless
## 更多参考:http://cassandra.apache.org/download/#installation-from-debian-packages
修改配置文件
sudo vi /etc/cassandra/cassandra.yaml
seed_provider:
- seeds: "192.168.0.1,192.168.0.2,192.168.0.3" # 这里填所有集群内网IP,有多少节点就填多少,建议奇数个
concurrent_writes: 64
concurrent_counter_writes: 64
concurrent_counter_writes: 64
concurrent_materialized_view_writes: 64
compaction_throughput_mb_per_sec: 128
file_cache_size_in_mb: 1024
buffer_pool_use_heap_if_exhausted: true
disk_optimization_strategy: spinning
#listen_address: localhost
listen_interface: eth0
#rpc_address: localhost
rpc_interface: eth0
enable_user_defined_functions: true
auto_bootstrap: false
## 优化cassandra jvm配置
sudo vi /etc/cassandra/jvm.options
#-XX:+UseParNewGC
#-XX:+UseConcMarkSweepGC
#-XX:+CMSParallelRemarkEnabled
#-XX:SurvivorRatio=8
#-XX:MaxTenuringThreshold=1
#-XX:CMSInitiatingOccupancyFraction=75
#-XX:+UseCMSInitiatingOccupancyOnly
#-XX:CMSWaitDuration=10000
#-XX:+CMSParallelInitialMarkEnabled
#-XX:+CMSEdenChunksRecordAlways
# 这里根据实际情况略作调整
-XX:+UseG1GC
-XX:G1RSetUpdatingPauseTimePercent=5
-XX:MaxGCPauseMillis=500
-XX:InitiatingHeapOccupancyPercent=70
-XX:ParallelGCThreads=16
-XX:ConcGCThreads=16
# ==========================我是分割线===========================
sudo vi /etc/cassandra/cassandra-env.sh
## 配置为主机内网地址
JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=192.168.0.1"
#if [ "x$LOCAL_JMX" = "x" ]; then
# LOCAL_JMX=yes
# fi
if [ "x$LOCAL_JMX" = "x" ]; then
LOCAL_JMX=no
fi
#JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.authenticate=true"
JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
#JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.password.file=/etc/cassandra/jmxremote.password"
sudo systemctl stop cassandra
迁移配置导数据盘(可选)
sudo mv /var/lib/cassandra /data/cassandra
sudo ln -s /data/cassandra /var/lib/cassandra
sudo systemctl start cassandra
集群内其他机器,重复以上步骤步骤,修改对应IP
常用命令
sudo systemctl start cassandra # 启动cassandra
sudo systemctl stop cassandra # 停止cassandra
sudo systemctl restart cassandra # 重启cassandra
sudo journalctl -n100 -f -ucassandra # 打印实时日志
如果本篇博客对您有一定的帮助,大家记得留言+点赞+收藏哦。
我是阿晨,在技术的道路上我们一起砥砺前行!