disconf mysql_分布式配置中心 Disconf实践- 安装篇

Updated on 五月 23, 2018

分布式配置中心 Disconf实践- 安装篇

disconf 环境准备:

Nginx:处理静态资源请求、动态请求转发到Tomcat

Tomcat:处理Nginx的请求

Zookeeper:管理Disconf配置信息,配置变更通过zk通知

Redis:用户session管理

MySQL:应用管理、用户管理、角色管理、环境管理、配置持久化

Mavean:编译disconf源码打包;

一、下载DisConf :

wget https://codeload.github.com/knightliao/disconf/zip/master

将你的配置文件放到此地址目录下(以下地址可自行设定):

/opt/program/servers/disconfig/online-resources

拷贝/disconf-web/profile/rd/目录下的文件,拷贝过去后修改即可。

配置文件包括

7c03055bc2a4818f3ba0e33cfc1208dd.png

cp application-demo.properties application.properties

注意,即使只有一个redis,也应该配置两个redis client,redis必须是主从模式,否则将造成内部错误。*

设置War包将要被部署的地址(以下地址可自行设定):

/opt/program/servers/disconfig/war

构建

ONLINE_CONFIG_PATH=/home/work/dsp/disconf-rd/online-resources

WAR_ROOT_PATH=/home/work/dsp/disconf-rd/war

export ONLINE_CONFIG_PATH

export WAR_ROOT_PATH

cd disconf-web

sh deploy/deploy.sh

编译打包:

vi /etc/profile

ONLINE_CONFIG_PATH=/home/disconf/online-resources

WAR_ROOT_PATH=/home/disconf/war

export ONLINE_CONFIG_PATH

export WAR_ROOT_PATH

source  /etc/profile

cd disconf-web

sh deploy/deploy.sh

这样会在 /opt/program/servers/disconfig/war 生成以下结果:

2964a6a1adee16a517be3d993fe97668.png

还有其他的配置文件也都会在这个目录下

上线前的初始化工作

初始化数据库:

可以参考 sql/readme.md 来进行数据库的初始化。注意顺序执行

0-init_table.sql

1-init_data.sql

201512/20151225.sql

20160701/20160701.sql

里面默认有6个用户(请注意线上环境删除这些用户以避免潜在的安全问题)

name

pwd

admin

admin

testUser1

MhxzKhl9209

testUser2

MhxzKhl167

testUser3

MhxzKhl783

testUser4

MhxzKhl8758

testUser5

MhxzKhl112

如果想自己设置初始化的用户名信息,可以参考代码来自己生成用户:

src/main/java/com/baidu/disconf/web/tools/UserCreateTools.java

部署War

修改server.xml文件,在Host结点下设定Context:

并设置端口为 8015

启动Tomcat,即可。

一、安装Nginx :

1、Nginx官网下载源码包

下载稳定版本:nginx-1.12.0.tar.gz

2、安装到/usr/local/nginx

不懂Nginx  是可以看我之前的Nginx 系列文章:

3、修改监听端口:

修改 nginx.conf

upstream disconf {

server 127.0.0.1:8086;

}

server {

listen   1111;

server_name localhost;

access_log logs/disconf_access.log;

error_log logs/disconf_error.log;

location / {

root /opt/program/tools/disconfig/war/html;

if ($query_string) {

expires max;

}

}

location ~ ^/(api|export) {

proxy_pass_header Server;

proxy_set_header Host $http_host;

proxy_redirect off;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Scheme $scheme;

proxy_pass http://disconf;

}

}

二、安装Zookeeper

1、Zookeeper官网下载安装包

zookeeper-3.4.11.tar.gz

2、启动Zookeeper

cd zookeeper-3.4.11/bin

./zkServer start #ps aux | grep zoo验证进程是否起来

./zkCli.sh #zk客户端

不懂Zookeeper是可以看我之前的Zookeeper 系列文章:

三、安装Redis

1、下载Redis源码包,Redis官网2、解压安装

tar zxvf  redis-3.2.9.tar.gz

cd redis-3.2.9

make

make install #安装后在/usr/local/bin会有redis的脚本

mkdir -p /usr/local/redis/bin

mkdir -p /usr/local/redis/etc

cd  src

cp  mkreleasehdr.sh  redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server  /usr/local/redis/bin ;

cp  redis.conf /usr/local/redis/etc

3、启动

启动时并指定配置文件:./redis-server  /usr/local/redis/etc/redis.conf(注意要使用后台启动,所以修改redis.conf里的 daemonize 改为yes)

验证启动是否成功:

ps -ef | grep redis 查看是否有redis服务 或者 查看端口:netstat -tunpl | grep 6379

4、配置主从

由于Disconf至少需要配置两台redis-client,所以我们可以在一台机器(本机)上安装master/slave模式的redis集群

cp /usr/local/redis/etc/redis.conf    /usr/local/redis/etc/redis_6380.conf #redis2启动在6380端口

22505b95052acf7473c3f092e5c613ff.png

vi redis_6380.conf  #配置slaveof 127.0.0.1 6379

5、设置主从的shardname

./redis-cli    #redis_6379.conf

auth foobared

set name ‘BeidouRedis1’

./redis.cli    #redis6380.conf

auth foobared

set name ‘BeidouRedis2’

不懂Redis是可以看我之前的Redis 系列文章:

四、安装MySQL

1、下载MySQL源码包,MySQL官网2、安装MySQL

自行百度;

3、导入disconf的sql脚本:上述有提过;

如果以上配置都OK的话,启动本地Tomcat,访问http://localhost:1111,默认账户admin/admin。

23e8e489bf41f5a1c003e0e8ced956ab.png

0dafd5ec1d97dad1dea86d5e0dab70a7.png

至此,全部安装结束,本地搭建Disconf成功,下一步就是让应用接入Disconf了!

编译好的Disconf安装包: 直接放入Tomcat就可运行;

Category: SOA服务化 Tags: Disconf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值