OushuDB集群启动停止方式

2022-04-06 00:00:00 集群 启动 脚本 关闭 停止

Ⅰ. 启动OushuDB集群
安装OushuDB集群会依次部署Zookeeper集群,HDFS集群,OushuDB集群,因此启动OushuDB集群需要将这三者依次启动。

一. 启动Zookeeper集群
1)使用hawq脚本进行群起,命令中注意需要切换到zookeeper用户

hawq ssh -f zkhostfile -e 'sudo -u zookeeper /usr/hdp/current/zookeeper-server/bin/zkServer.sh start'

启动后,查看status确认状态

hawq ssh -f zkhostfile -e 'sudo -u zookeeper /usr/hdp/current/zookeeper-server/bin/zkServer.sh status'



2)如果没有hawq脚本,可通过shell脚本来实现

for host in `cat zkhostfile`
do

ssh $host "sudo –u zookeeper /usr/hdp/current/zookeeper-server/bin/zkServer.sh start"

done

其中zkhostfile记录了Zookeeper集群所有节点的ip



二. 启动HDFSr集群
所有群起命令都要切到hdfs用户下执行:

1. 启动journalnode:
jhostfile:保存了journalnode的节点ip,一般是三个,内容同zkhostfile

1)通过hawq脚本启动

hawq ssh -f jhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start journalnode'

2)通过shell脚本启动:

for host in `cat jhostfile ` do

ssh $host "sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start journalnode"

done



2. 启动namenode:
nnhostfile保存了主namenode和备namenode的ip;

1)通过hawq脚本启动

hawq ssh -f nnhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start namenode'

2)通过shell脚本启动:

for host in `cat hostfile_namenode `

do

ssh $host "sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start namenode"

done



3. 启动datanode:
dnhostfile:保存了所有datanode节点的ip

1)通过hawq脚本启动

hawq ssh -f dnhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start datanode'

2)通过shell脚本启动:

for host in `cat dnhostfile `

do

ssh $host "sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start datanode"

done



4. 启动zkfc:
zkfc只会在namenode节点启动,作为Zookeeper的客户端监控namenode状态,并进行切换;

1)通过hawq脚本启动

hawq ssh -f nnhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start zkfc'

2)通过shell脚本启动:

for host in `cat nnhostfile `

do

ssh $host "sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh start zkfc"

done



三. 启动OushuDB集群
su - gpadmin

source /usr/local/hawq/greenplum_path.sh

hawq start cluster -a

-a:表示不需要输入Y,直接启动

Ⅱ. 关闭OushuDB集群
依次关闭OushuDB集群,HDFS集群,Zookeeper集群

一. 停止OushuDB集群
su - gpadmin

source /usr/local/hawq/greenplum_path.sh

hawq stop cluster [-a] [-M smart | fast | immediate]

-a:表示不需要输入Y,直接关闭

-M选项提供了smart、fast、immediate三种停止方式,它们类似于Oracle中shutdown命令的normal、immediate和abort。

Smart是缺省值,如果发现数据库中有活动的连接,停止失败,并发出一个错误消息。
Fast方式中断并回滚当前处理的任何事务。
Immediate方式终止正在处理的事务,并立即杀掉所有相关postgres进程。数据库服务器不会完成事务处理,也不会清除任何临时数据或使用中的工作文件。(工作文件的概念与MySQL的临时文件类似。查询执行过程中,如果不能在内存进行,则会在磁盘创建工作文件。)因此,不推荐使用immediate停止方式。在某些情况下,immediate可能造成数据库损坏,并需要手工恢复。
如果已经修改并希望重载服务器参数设置,并且HAWQ数据库上的有活动连接,使用命令:hawq stop master -u -M fast



二. 停止HDFS集群
1. 停止zkfc:
1)通过hawq脚本停止

hawq ssh -f nnhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop zkfc'

2)通过shell脚本启动:

for host in `cat nnhostfile `

do

ssh $host “sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop zkfc”

done



2. 停止datanode:
1)通过hawq脚本停止:

hawq ssh -f dnhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop datanode'

2)通过shell来停止:

for host in `cat dnhostfile `

do

ssh $host “sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop datanode”

done



3. 停止namenode:
1)通过hawq脚本停止:

for host in `cat nnhostfile ` do ssh $host “sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop namenode” done

2)通过shell来停止:

for host in `cat nnhostfile `

do

ssh $host “sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop journalnode”

done



4. 停止journalnode:
1)通过hawq脚本停止:

hawq ssh -f jhostfile -e 'sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop journalnode'

2)通过shell脚本启动:

for host in `cat jhostfile `

do

ssh $host "sudo -u hdfs /usr/hdp/current/hadoop-client/sbin/hadoop-daemon.sh stop journalnode"

done



三. 停止ZooKeeper集群
1)使用hawq脚本关闭:

hawq ssh -f zkhostfile -e 'sudo -u zookeeper /usr/hdp/current/zookeeper-server/bin/zkServer.sh stop'

确认是否关闭:

hawq ssh -f zkhostfile -e 'sudo -u zookeeper /usr/hdp/current/zookeeper-server/bin/zkServer.sh status'

2)使用shell脚本关闭:

for host in `cat zkhostfile `

do

ssh $host “sudo –u zookeeper /usr/hdp/current/zookeeper-server/bin/zkServer.sh stop”

done
————————————————
版权声明:本文为CSDN博主「fangmiao_haha」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fangmiao_haha/article/details/116123959

相关文章