Skip to content

Instantly share code, notes, and snippets.

@yangbajing
Last active April 6, 2016 09:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save yangbajing/12461fcab190689f2499 to your computer and use it in GitHub Desktop.
Save yangbajing/12461fcab190689f2499 to your computer and use it in GitHub Desktop.
#!/bin/sh
# 升级cassandra脚本,假定cassandra安装目录在:/opt,待安装tarball文件在 ~/ 用户主目录
OLD_CASSANDRA=dsc-cassandra-2.2.4
CASSANDRA=dsc-cassandra-2.2.5
cd /opt
if [ ! -d "archive" ]; then
sudo mkdir archive
fi
# 解压、设置
sudo tar zxf ~/$CASSANDRA-bin.tar.gz
sudo chown -R cassandra:root $CASSANDRA
sudo cp -f $OLD_CASSANDRA/bin/cassandra.in.sh $CASSANDRA/bin/
sudo cp -f $OLD_CASSANDRA/conf/cassandra-env.sh $CASSANDRA/conf/
sudo cp -f $OLD_CASSANDRA/conf/cassandra.yaml $CASSANDRA/conf/
sudo cp -f $OLD_CASSANDRA/conf/cassandra-rackdc.properties $CASSANDRA/conf/
sudo cp -f $OLD_CASSANDRA/conf/cassandra-topology.properties $CASSANDRA/conf/
# 创建快照
sudo -u cassandra cassandra/bin/nodetool snapshot crawler_spider -t snapshot_`date "+%Y-%m-%d"`
sudo -u cassandra cassandra/bin/nodetool snapshot crawler -t snapshot_`date "+%Y-%m-%d"`
# 停止服务
sudo -u cassandra cassandra/bin/nodetool drain
sudo -u cassandra cassandra/bin/nodetool stopdaemon
# 设置新的cassandra
sudo rm cassandra
sudo ln -sf $CASSANDRA cassandra
sudo mv $OLD_CASSANDRA archive/
# 启动新服务
sudo -u cassandra cassandra/bin/cassandra
# 更新 sstables
# sudo -u cassandra cassandra/bin/nodetool upgradesstables
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment