Geode滚动升级手册

1 先备份

确保新软件与locatorserver上的旧软件一起在节点上。

  1. 连接到主locator

  2. 导出configuration

export cluster-configuration --zip-file-name=./cluser-config-backup.zip
  1. 备份locatorserver的启动脚本。
    您必须自己执行此操作,确保跟踪定位器端口,服务器端口,客户端主机名等内容。
    例如通过进入gfsh来查看:
gfsh>connect --jmx-manager=${主locator的IP}
gfsh>list members
gfsh>status server --name=${server_name}

#例如:
gfsh>connect --jmx-manager=127.0.0.1
Connecting to Manager at [host=127.0.0.1, port=1099] ..
Successfully connected to: [host=127.0.0.1, port=1099]

gfsh>list members
  Name   | Id
-------- | ----------------------------------------------------------------
locator1 | 192.168.68.17(locator1:23350:locator)<ec><v0>:1024 [Coordinator]
locator2 | 192.168.68.18(locator2:62538:locator)<ec><v1>:1024
server3  | 192.168.68.20(server3:26242)<v4>:1024
server4  | 192.168.68.21(server4:10821)<v5>:1024
server1  | 192.168.68.17(server1:23563)<v2>:1025
server2  | 192.168.68.18(server2:62712)<v3>:1025

gfsh>status server --name=server1
Server in /opt/geode_work/server1 on T1[40401] as server1 is currently online.
Process ID: 23563
Uptime: 95 days 19 hours 51 minutes 50 seconds
Geode Version: 1.7.0
Java Version: 1.8.0_121
Log File: /opt/geode_work/server1/server1.log
JVM Arguments: -Dgemfire.locators=T1[10334],T2[10334] -Dgemfire.start-dev-rest-api=false -Dgemfire.use-cluster-configuration=true -XX:OnOutOfMemoryError=kill -KILL %p -Dgemfire.launcher.registerSignalHandlers=true -Djava.awt.headless=true -Dsun.rmi.dgc.server.gcInterval=9223372036854775806
Class-Path: /opt/apache-geode-1.7.0/lib/geode-core-1.7.0.jar:/opt/apache-geode-1.7.0/lib/geode-dependencies.jar

或者ps -ef | grep geode | grep -v grep来查看启动参数

最好通过ps -ef | grep geode | grep -v grep来查看,并备份起来!,例如:

ps -ef | grep geode | grep -v grep

root     14903 14815 20 15:05 pts/2    00:01:45 /usr/java/jdk1.8.0_121/jre/bin/java -server -classpath /opt/apache-geode-1.8.0/lib/geode-core-1.8.0.jar:/opt/apache-geode-1.8.0/lib/geode-dependencies.jar -Dgemfire.locators=T1[10334],T2[10334] -Dgemfire.enable-cluster-configuration=true -Dgemfire.load-cluster-configuration-from-dir=false -Dgemfire.launcher.registerSignalHandlers=true -Djava.awt.headless=true -Dsun.rmi.dgc.server.gcInterval=9223372036854775806 org.apache.geode.distributed.LocatorLauncher start locator1 --port=10334

root     23563     1  0  2018 ?        17:59:22 /usr/java/jdk1.8.0_121/jre/bin/java -server -classpath /opt/apache-geode-1.7.0/lib/geode-core-1.7.0.jar:/opt/apache-geode-1.7.0/lib/geode-dependencies.jar -Dgemfire.locators=T1[10334],T2[10334] -Dgemfire.start-dev-rest-api=false -Dgemfire.use-cluster-configuration=true -XX:OnOutOfMemoryError=kill -KILL %p -Dgemfire.launcher.registerSignalHandlers=true -Djava.awt.headless=true -Dsun.rmi.dgc.server.gcInterval=9223372036854775806 org.apache.geode.distributed.ServerLauncher start server1 --server-port=40401
  1. 导出数据
    这是为了防止出现问题。

注意: 停止locatorserver最好在一个管理机器上通过gfsh来执行!
connect --jmx-manager=${master_locator_ip}
stop locator --name=${locator_name}
stop server --name=${server_name}


2 拷贝新版本的geode压缩文件到各个节点并解压

# 所有节点
# 复制`apache-geode-${version}.zip`到目录`/opt/`
# 然后执行
cd /opt
# unzip ./apache-geode-${new_version}.zip
# rm ./apache-geode-${new_version}.zip

tar zxvf ./apache-geode-${new_version}.tgz
rm ./apache-geode-${new_version}.tgz

3 重启locator

注意: 启动locatorserver要在各自的节点上执行!

3.1 停止旧的主locator

gfsh>stop locator --name=${locator_name}

停止主locator要特别注意,经常停止不了,要用ps来查看ps -ef | grep "LocatorLauncher" | grep -v grep,如果不能正常停止就用kill -9 ${locator的PID}来强行停止

3.2 修改 /etc/profile, 把新版的geode路径更改到你的 PATH 环境变量里:

执行 vi /etc/profile,修改成:

#wjw_add
export JAVA_HOME=/usr/java/default
export PATH=$JAVA_HOME/bin:/opt/apache-geode-${new_version}/bin:$PATH

启动新的gfsh, 并检查版本

cd /opt/geode_work/
source /etc/profile
gfsh version --full

3.3 启动新的主locator

gfsh>start locator --name=${主locator_name} --各种参数 

3.4 检查新的主locator是否正常

gfsh>connect --jmx-manager=${主locator_ip}

3.5 重启所有剩下的locator.

#1
stop locator --name=${locator_name}

#2
vi /etc/profile

#3
cd /opt/geode_work/
source /etc/profile
gfsh version --full

#4
gfsh
start locator --name=${主locator_name} --各种参数 

4 重启server

4.1 停止旧版本的server:

注意: 要在主locator节点上的gfsh里执行:

gfsh>stop server --name=${server_name}

ps来查看ps -ef | grep "ServerLauncher" | grep -v grep

4.2 修改 /etc/profile, 把新版的geode路径更改到你的 PATH 环境变量里:

执行 vi /etc/profile,修改成:

#wjw_add
export JAVA_HOME=/usr/java/default
export PATH=$JAVA_HOME/bin:/opt/apache-geode-${new_version}/bin:$PATH

启动新的gfsh, 并检查版本

cd /opt/geode_work/
source /etc/profile
gfsh version --full

4.3 启动新版本的server:

注意: 要在各个server节点上执行:

gfsh>start server --name=${server_name} --各种参数 

4.4 重启所有剩下的server.

#1
stop server --name=${server_name}

#2
vi /etc/profile

#3
cd /opt/geode_work/
source /etc/profile
gfsh version --full

#4
gfsh
start server --name=${server_name} --各种参数 

5 升级客户端

6 附录

6.1 禁用TCP SYN Cookies

大多数默认Linux安装使用SYN cookie来保护系统免受泛滥TCP SYN数据包的恶意攻击(例如DDOS)。

此功能与稳定和繁忙的Geode群集不兼容。 SYN Cookie保护会被正常的Geode流量错误地激活,严重限制带宽和新的连接速率,并破坏SLA。 安全实现应该通过将Geode服务器集群置于高级防火墙保护之下来寻求防止DDOS类型的攻击。

要永久禁用SYN cookie:

  1. 编辑/etc/sysctl.conf文件以包含以下行:

    net.ipv4.tcp_syncookies = 0
    
    

    将此值设置为零将禁用SYN Cookie。

  2. 重新加载sysctl.conf

    sysctl -p
    
    

6.2 检查locatorserver:

gfsh>list members
...

gfsh>describe member  --name=${locator_name}
...

gfsh>describe member  --name=${server_name}
...

6.3 检查region:

gfsh>list regions
...

gfsh>describe region --name=${region_name}
...

6.4 WEB控制台pulse地址:

http://${主locator的IP}:7070/pulse/

<<<<<<<<<<<< ⌛ >>>>>>>>>>>>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱游泳的老白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值