linux 环境下的Qconf安装与配置

参照搭建之前请仔细阅读相关安装配置信息及注意事项:

启动顺序,先启动数据库-->再启动zookeeper-->再启动zkdash

在做qconfig管理的时候需要启动各个节点的qconfig客户端根据实际情况确定!

 

qconf安装与配置


一、安装QConf :

1. 使用源码安装

    1)git clonehttps://github.com/Qihoo360/QConf.git

    2) cd QConf

    3) mkdir build

    4) cdbuild && cmake ..

    5) make

    6) make install

 

cmake编译前准备条件

yum install m4 autoconf automake gcc-c++ libtool

2.cmake编译报错

CMakeFiles/cmTryCompileExec2834106963.dir/CheckSymbolExists.c.o:In function `main':

CheckSymbolExists.c:(.text+0xc):undefined reference to `pthread_create'

collect2: ld returned 1exit status

//如果出错,也就下面几个错误了

ln -s /usr/bin/aclocal/usr/bin/aclocal-1.14

ln -s /usr/bin/automake/usr/bin/automake-1.15

yum install -ytexinfo

mkdir /usr/local/qconf

 

下载安装最新的autoconf

wgethttp://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz

tar xzf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure --prefix=/usr/local
make
make install

 

3.make 报错

  3.1缺少libgdbm.a静态库

make[2]: *** No rule tomake target `../agent/../deps/gdbm/_install/lib/libgdbm.a', needed by`agent/qconf_agent'.  Stop.

自己上网下载https://ftp.gnu.org/gnu/gdbm/gdbm自己编译出libgdbm.a静态库

./configure 执行报错

checking host systemtype... Invalid configuration `x86_64-unknown-linux-gnu': machine`x86_64-unknown' not recognized

make && makeinstall

 

cp /usr/share/libtool/config/config.guess .
cp /usr/share/libtool/config/config.sub .
 
3.2参数检查不通过

修改/usr/local/src/QConf/agent/qconf_dump.cc:63增加(char *)进行强转

 

二、使用QConf

1. 启动qconf-agent

    1) cd /usr/local/qconf

    2) cd bin && sh agent-cmd.sh start

    3) export PATH=$PATH:/usr/local/qconf/bin

 

2. 先部署zookeeper服务器

    1) wgethttp://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz

    2) tar -zxv -f zookeeper-3.3.6.tar.gz

    3) cd zookeeper-3.3.6/conf && cpzoo_sample.cfg zoo.cfg

    4) cd ../bin && sh zkServer.shstart

    5) 使用客户端链接到zookeeper: sh zkCli.sh

  6)创建配置节点(这个后续会提供页面来处理):

       create /demo demo

       create /demo/confs confs

       create /demo/confs/conf1 111111111111111111111

       create /demo/confs/conf2 222222222222222222222

       create /demo/confs/conf3 333333333333333333333

 

3. 获取值

   1) 使用shell 命令获取:

       qconf get_conf /demo/confs/conf1

       qconf get_batch_keys /demo/confs

 

三、安装过程中可能遇到的问题:

(1)安装jdk:

检查电脑是否已安装jdk

yum list installed|grep java

查看yum中的jdk版本

[root@localhostbin]# yum -y list java*

安装jdk

yum -y installjava-1.8.0-openjdk*

 

(2)环境变量:

exportPATH=$PATH:/usr/local/qconf/bin:$HOME/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin

 

(3)安装后其他机器无法连接到zookeeper

防火墙中开放zookeeper所在服务器的2181端口:

#(允许qconf:2181端口通过防火墙)
vi /etc/sysconfig/iptables

-A INPUT -m state--state NEW -m tcp -p tcp --dport 2181 -j ACCEPT

(4)zookeeper客户端操作:

ls(查看当前节点数据),
ls2(查看当前节点数据并能看到更新次数等数据) ,
create(创建一个节点) ,
get(得到一个节点,包含数据和更新次数等数据),
set(修改节点)
delete(删除一个节点)

 

搭建zookeeper管理qconfig页面

zkdash是一个zookeeper的管理界面,也可以作为任何基于zookeeper的配置管理项目比如:Qconf

zkdash页面展示

安装与运行
安装步骤

·        安装并运行mysql

·        安装python2.7, 版本最好 >= 2.7.6(参照http://www.cnblogs.com/dudu/p/4294238.html)

·        下载zkdash

·         
git clone https://github.com/ireaderlab/zkdash.git
·        安装依赖项

·        下载安装pip

wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9

# tar -xzvf pip-1.5.4.tar.gz

# cd pip-1.5.4

先下载安装setuptools包

# wget http://pypi.python.org/packages/source/s/setuptools/setuptools-2.0.tar.gz

# tar zxvfsetuptools-2.0.tar.gz

# cd setuptools-2.0

# python setup.py build

# python setup.py install

然后再安装pip

# python setup.py install

参照:http://blog.csdn.net/u013372487/article/details/51726002

·         
cd zkdash
·         
pip install -r requirements.txt
执行报错
请参照
http://www.cnblogs.com/yuechaotian/archive/2013/06/03/3115472.html
 
·        设置配置文件

根据需要修改当前目录下./conf/conf.yml中相关配置信息,配置文件详细说明见后面

·        同步数据库表结构首先创建数据库zkdash,并设置数据库的用户名和密码将配置文件的数据库的用户名和密码进行修改

·         
DATABASE:
·         
  db: 'zkdash'
·         
  host: '192.168.1.1'   # 
修改为你的数据库地址
·         
  port: 3306   # 
设置端口号
·         
  user: 'tokyo'   

修改用户名
·         
  passwd: 'tokyo!'  

修改密码
·         
设置完成后进行初始化数据库
·         
cd zkdash
·         
python ./bin/syncdb.py   # 
注意执行路径必须为
./bin/syncdb.py
说明:数据库使用mysql,创建表结构前请先配置数据库连接信息

·        运行

·         
cd zkdash
·         
python init.py -port=8888
说明:初次运行zkdash时需要到zookeeper管理菜单下增加监控的zookeeper集群ip信息

配置文件说明
配置文件详细说明

数据库配置项(DATABASE)

db: 数据库名称
host: ip地址
port: 端口号
user: 用户名
passwd: 密码
全局配置项

USE_QCONF: 是否通过QConf获取zookeeper数据(使用该项可以提高树形展示配置信息的响应速度)
与QConf的搭配使用
反馈服务器地址:http://ip:port/api/v1/feedback(Agent同步状况查看依赖此反馈信息)
注意事项
1.       新增节点需要先指定父节点,并且只能逐级增加

2.       当设置使用QConf获取zookeeper数据时,zookeeper管理菜单下的zookeeper集群名称需要与QConf 客户端Agent配置文件的idc名称一致

 

五、在补充一下qconf原理及zookeeper集群配置

1.   qconf架构:https://github.com/Qihoo360/QConf/wiki/QConf-%E6%9E%B6%E6%9E%84

2.   zookeeper集群的安装与配置:http://blog.chinaunix.net/uid-20498361-id-3184380.html

3.   qconf管理界面的安装:https://github.com/Qihoo360/QConf/wiki/QConf-%E7%AE%A1%E7%90%86%E7%95%8C%E9%9D%A2%E4%BD%BF%E7%94%A8
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

罗亚方舟

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

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

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

打赏作者

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

抵扣说明:

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

余额充值