【分布式协调zookeeper】部署篇
发表于:2024-12-13 作者:千家信息网编辑
千家信息网最后更新 2024年12月13日,一、环境准备操作系统:centOS-6.8 2.6.32-642.el6.x86_64【虚拟机环境】节点主机:10.0.55.3、10.0.55.5、10.0.55.6目录结构: /opt/软件版本:
千家信息网最后更新 2024年12月13日【分布式协调zookeeper】部署篇创建、编辑、删除
一、环境准备
操作系统:centOS-6.8 2.6.32-642.el6.x86_64【虚拟机环境】节点主机:10.0.55.3、10.0.55.5、10.0.55.6目录结构: /opt/软件版本: jdk-7u67-linux-x64.rpm zookeeper-3.5.0-alpha.tar.gz
二、安装Java环境
$ rpm -ivh jdk-7u67-linux-x64.rpm $ cat /etc/profileexport JAVA_HOME=/usr/java/jdk1.7.0_67export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin立即生效$ source /etc/profile
三、下载zookeeper包并创建zookeeper管理数据
$ wget http://archive.apache.org/dist/zookeeper/zookeeper-3.5.0-alpha/zookeeper-3.5.0-alpha.tar.gz$ ln -s /opt/zookeeper-3.5.0-alpha /opt/zookeeper$ mkdir /opt/zookeeper/data$ echo "1" > /opt/zookeeper/data/myid
四、编辑zookeeper/conf/zoo.cfg配置文件,启动时需要
$ cp /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg--- 查看zoo.cfg内容 ---tickTime=2000initLimit=10syncLimit=5dataDir=/opt/zookeeper/dataclientPort=2181server.1=10.0.55.3:2888:3888server.2=10.0.55.5:2888:3888server.3=10.0.55.6:2888:3888
五、启动zookeeper服务并查看
--- 启动服务 ---$ /opt/zookeeper/bin/zkServer.sh startJMX enabled by defaultUsing config: /opt/zookeeper/bin/../conf/zoo.cfgStarting zookeeper ... STARTED--- 检查端口 ---netstat -lnptActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22678 0.0.0.0:* LISTEN 1074/sshd tcp 0 0 :::2181 :::* LISTEN 121685/java tcp 0 0 :::55369 :::* LISTEN 121685/java tcp 0 0 ::ffff:10.0.55.3:3888 :::* LISTEN 121685/java tcp 0 0 :::8080 :::* LISTEN 121685/java tcp 0 0 :::22678 :::* LISTEN 1074/sshd
使用自动化运维工具 ansible 进行批量分发
这里只介绍如何使用ansible的命令组件模块进行节点部署
为了节省篇幅,这里不介绍ansible的部署安装
1、远程安装zookeeper节点
$ ansible webservers -m copy -a 'src=zookeeper-3.5.0-alpha.tar.gz dest=/opt/ owner=root group=root mode=0644'$ ansible webservers -m shell -a 'tar fxz /opt/zookeeper-3.5.0-alpha.tar.gz -C /opt/'$ ansible webservers -m shell -a 'ln -s /opt/zookeeper-3.5.0-alpha /opt/zookeeper'$ ansible webservers -m shell -a 'mkdir /opt/zookeeper/data'$ ansible webservers -m shell -a 'echo "2" >/opt/zookeeper/data/myid'
2、将配置文件copy到远端节点
$ ansible webservers -m copy -a 'src=/opt/zookeeper/conf/zoo.cfg dest=/opt/zookeeper/conf/zoo.cfg owner=root group=root mode=0644'
3、批量启动zookeeper服务并查看
$ ansible webservers -m shell -a '/opt/zookeeper/bin/zkServer.sh stats'$ ansible webservers -m shell -a 'netstat -lnpt'
4、批量坚持zookeeper状态
$ ansible webservers -m shell -a '/opt/zookeeper/bin/zkServer.sh status'10.0.55.5 | SUCCESS | rc=0 >>Client port found: 2181Mode: leaderJMX enabled by default ## 这里面的mode信息中,该主机被选举为 LeaderUsing config: /opt/zookeeper/bin/../conf/zoo.cfg10.0.55.3 | SUCCESS | rc=0 >>Client port found: 2181Mode: followerJMX enabled by default ## 这里面的mode信息中,该主机被选举为 followerUsing config: /opt/zookeeper/bin/../conf/zoo.cfg10.0.55.6 | SUCCESS | rc=0 >>Client port found: 2181Mode: followerJMX enabled by default ## 这里面的mode信息中,该主机被选举为 followerUsing config: /opt/zookeeper/bin/../conf/zoo.cfg
zookeeper基础操作
启动一个CLI客户端
[root@lbl opt]# ./zookeeper/bin/zkCli.sh
创建、编辑、删除znode
--- 创建一个/workers路径的znode ---[zk: localhost:2181(CONNECTED) 0] create /workers helloworldCreated /workers--- 使用get -s命令查看znode数据 ---[zk: localhost:2181(CONNECTED) 1] get -s /workershelloworldcZxid = 0x500000006ctime = Sat Apr 22 10:33:42 CST 2017mZxid = 0x500000006mtime = Sat Apr 22 10:33:42 CST 2017pZxid = 0x500000006cversion = 0dataVersion = 0aclVersion = 0ephemeralOwner = 0x0dataLength = 6numChildren = 0--- 使用get -w选项,进行监听/factory的变化 ---[zk: localhost:2181(CONNECTED) 11] get -w /workersstrong--- 在 follower节点上启动客户端,并修改/workers ---[root@lbl bin]# ./zkCli.sh [zk: localhost:2181(CONNECTED) 2] set /workers weakness---查看监听那台主机,返回的通知信息如下: ---[zk: localhost:2181(CONNECTED) 12] WATCHER::WatchedEvent state:SyncConnected type:NodeDataChanged path:/workers--- 删除workers的znode ---[zk: localhost:2181(CONNECTED) 7] delete /workers
创建序列znode
[zk: localhost:2181(CONNECTED) 13] create -s /workers/worker-Created /workers/worker-0000000000[zk: localhost:2181(CONNECTED) 14] create -s /workers/worker-Created /workers/worker-0000000001[zk: localhost:2181(CONNECTED) 15] create -s /workers/worker-Created /workers/worker-0000000002[zk: localhost:2181(CONNECTED) 16] create -s /workers/worker-Created /workers/worker-0000000003
通过stat命令,进行查看workers状态
[zk: localhost:2181(CONNECTED) 18] stat /workerscZxid = 0x500000006ctime = Sat Apr 22 10:33:42 CST 2017mZxid = 0x500000008mtime = Sat Apr 22 10:35:25 CST 2017pZxid = 0x50000000ccversion = 4dataVersion = 1aclVersion = 0ephemeralOwner = 0x0dataLength = 8numChildren = 4
通过浏览器查看zookeeper状态
--- 从zookeeper-3.5.0版本以上,可以使用http接口提交4字命令的请求;--- 在zookeeper服务中嵌入了Jetty server作为AdminServer管理服务器,其默认端口为8080;--- 服务访问的URL格式是"/commands/[command name]",例如:访问stats命令--- 服务器返回的结果是以JSON格式显示http://10.0.55.3:8080/commandshttp://10.0.55.3:8080/commands/stats
【分布式协调系统zookeeper】基础篇
服务
主机
命令
节点
信息
状态
环境
面的
选举
基础
客户
客户端
数据
文件
服务器
格式
版本
端口
系统
监听
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器mzmg口
做一个彩票数据库需要什么
局域网电脑登陆云服务器
画一幅很难的网络安全手抄报
计算机网络技术第二章总结
数据库测试闺蜜结婚
计算机网络技术的认识与理解
软件开发特色功能
重庆条码软件开发官方完整版
lol的各大服务器
关于数据库安全性
软件开发行业频繁跳槽
东土科技工业互联网大会
优酷网络安全平台
数据库软件2008
房价统计数据库
互联网金融科技监管
网络安全稿子800
国外数据库的字段代码
软件测试中什么是数据库
软件开发提离职被老板挽留
万科物业软件开发工资
怎么拥有一个自己的服务器
轻量版服务器不固定怎么办
oa办公系统与网络安全的关系
工作生活网络安全案例
数据库怎么给用户名改密码
动产监管软件开发定制落地实践
如何自己搭建云服务器
MC登入服务器