disconf搭建
简介:
Distributed Configuration Management Platform(分布式配置管理平台)
它是百度的一套完整的基于zookeeper的分布式配置统一解决方案,具有如下特性:
- 部署极其简单:同一个上线包,无须改动配置,即可在 多个环境中(RD/QA/PRODUCTION) 上线
- 部署动态化:更改配置,无需重新打包或重启,即可 实时生效
- 统一管理:提供web平台,统一管理 多个环境(RD/QA/PRODUCTION)、多个产品 的所有配置
- 支持微服务架构
模块架构图
模块信息
- CLIENT: client目标是支持多语言。目前只提供了java语言客户端。
- disconf-core: 分布式配置基础包模块
- disconf-client: 分布式配置客户端模块, 依赖disconf-core包。 用户程序使用它作为Jar包进行分布式配置编程。
- disconf-tool: 分布式配置工具包,依赖disconf-core包。 Disconf-tool是disconf的辅助工具类, 目前使用不多,建议不使用。
- 管理端:disconf-web是统一的分布式配置管理平台。disconf-web: 分布式配置平台服务模块, 依赖disconf-core包。采用SpringMvc+纯HTML方式(前后端分离架构)实现。用户使用它来进行日常的分布式配置管理。
java client: disconf-client 使用
在您的 Maven POM 文件里加入:
<dependency>
<groupId>com.baidu.disconf</groupId>
<artifactId>disconf-client</artifactId>
<version>2.6.31</version>
</dependency>
server: disconf-web 使用
部署方法请参见:https://github.com/knightliao/disconf/tree/master/disconf-web
根据官方文档,web部署基本上以下几步:
1.配置环境
disconf运行需要的软件:zookeeper、redis、mysql、nginx、tomcat
2.下载代码
cd work/github
git clone https://github.com/knightliao/disconf.git
3.修改环境
sudo vi /etc/profile,在文件的末尾加上
ONLINE_CONFIG_PATH=/usr/local/xxx/disconf/source
WAR_ROOT_PATH=/usr/local/xxx/disconf/war
export ONLINE_CONFIG_PATH
export WAR_ROOT_PATH
4.配置更改
cp
work/github/disconf/disconf-web/profile/rd/application-demo.properties
jdbc-mysql.properties
redis-config.properties zoo.properties
log4j.properties logback.xml rabbit.properties /usr/local/xxx/disconf/source
将application-demo.properties修改成application.properties(mv或者cp命令都可以)
然后将/usr/local/xxx/disconf/source下的这4个配置文件修改成自己环境相关的配置
application.properties
该文件中主要是配置了监控邮件发送和接受的服务器和邮箱地址
zoo.properties
主要修改里面的hosts,指定zookeeper集群的host的端口
jdbc-mysql.properties
主要修改数据库的host和mysql的用户名和密码
redis-config.properties
主要修改2个实例的host和端口
log4j.properties
主要修改日志存放的路径
log4j.appender.dailyRolling.File=/home/xxx/xxx/tomcat/log/disconf-log4j.log
logback.xml
主要修改web和监控的log存放位置
<property name="log.base" value="/home/xxx/tomcat/log/disconf-web"/>
<property name="log.monitor" value="/home/xxx/tomcat/log/monitor"/
rabbit.properties
修改用户名和密码以及端口(自己安装的默认端口是5672)
5.生成war包
cd disconf/disconf-web
sh deploy/deploy.sh
6.初始化数据库
如何初始化根据disconf-web下的sql文件夹下的README.md来初始化
7.tomcat配置,nginx配置
在tomcat的server.xml中加入
<Context path="" docBase="/usr/local/xxx/disconf/war"></Context>
在http这个标记对里面加上如下配置(/etc/nginx/nginx.conf):
upstream disconf {
server 127.0.0.1:8080;
}
listen 8991;
server_name localhost;
access_log /home/xxx/nginx/log/disconf/access.log;
error_log /home/xxx//nginx/log/disconf/error.log;
root /usr/local/xxx/disconf/war/html;
if ($query_string) {
expires max;
}
}
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;
}
}
upstream disconf 配置中的端口必须与tomcat启动的端口一致
server中listen是启动该disconf前端的端口
里面需要修改access_log和error_log指定log的位置
disconf使用前后端分离的部署方式,前端配置在nginx是那个,后端api部署在tomcat中
8.启动
启动tomcat和nginx,浏览器输入:http://localhost:8991/
用户名和密码都是admin
ok,disconf的web操作服务搭建完成
disconf搭建的更多相关文章
- 分布式配置管理--百度disconf搭建过程和详细使用
先说官方文档:http://disconf.readthedocs.io/zh_CN/latest/index.html 不管是否要根据官方文档来搭建disconf,都应该看一下这一份文档.精炼清晰地 ...
- Disconf 学习系列之全网最详细的最新稳定Disconf 搭建部署(基于Ubuntu14.04 / 16.04)(图文详解)
不多说直接上干货! https://www.cnblogs.com/wuxiaofeng/p/6882596.html (ubuntu16.04) https://www.cnblogs.com/he ...
- disconf---分布式配置管理平台的搭建(windows版本)
本人由刚开始接触博客,难免会有不足和错误,写博客只是记录本人在学习和工作的过程中的成长,如有不足,欢迎各位指正,谢谢~ 一.废话不多说,直接进入正题: ①获取github代码 https://gith ...
- Windows环境下执行hadoop命令出现Error: JAVA_HOME is incorrectly set Please update D:\SoftWare\hadoop-2.6.0\conf\hadoop-env.cmd错误的解决办法(图文详解)
不多说,直接上干货! 导读 win下安装hadoop 大家,别小看win下的安装大数据组件和使用 玩过dubbo和disconf的朋友们,都知道,在win下安装zookeeper是经常的事 ...
- 【disconf】环境搭建【linux】
1.搭建disconf需要安装的配置. 安装Linux:CentOS7 安装Zookeeper:zookeeper-3.4.6 安装Redis:redis-3.0.0 安装N ...
- Docker搭建disconf环境,三部曲之一:极速搭建disconf
Docker下的disconf实战全文链接 <Docker搭建disconf环境,三部曲之一:极速搭建disconf>: <Docker搭建disconf环境,三部曲之二:本地快速构 ...
- Docker搭建disconf环境,三部曲之二:本地快速构建disconf镜像
Docker下的disconf实战全文链接 <Docker搭建disconf环境,三部曲之一:极速搭建disconf>: <Docker搭建disconf环境,三部曲之二:本地快速构 ...
- Docker搭建disconf环境,三部曲之三:细说搭建过程
Docker下的disconf实战全文链接 <Docker搭建disconf环境,三部曲之一:极速搭建disconf>: <Docker搭建disconf环境,三部曲之二:本地快速构 ...
- disconf原理 “入坑”指南
之前有了解过disconf,也知道它是基于zookeeper来做的,但是对于其运行原理不太了解,趁着周末,debug下源码,也算是不枉费周末大好时光哈 :) .关于这篇文章,笔者主要是参考discon ...
随机推荐
- 星型数据仓库olap工具kylin介绍
星型数据仓库olap工具kylin介绍 数据仓库是目前企业级BI分析的重要平台,尤其在互联网公司,每天都会产生数以百G的日志,如何从这些日志中发现数据的规律很重要. 数据仓库是数据分析的重要工具, 每 ...
- ORacle修改表列长度
alter table 表名 modify column_name varchar2(32) alter table 表名 modify (column_name1 varchar(20) defau ...
- OC中的多继承
可以间接实现,方法有: 1.消息转发 2.协议 3.组合模式 4.代理 5.分类 直接上code,分别说明集中方法的实现 一.消息转发 消息转发可以参考我的另外一篇博客:http://www.cnbl ...
- bzoj 1146 [CTSC2008]网络管理Network
很久之前写过 count on the tree. 然后一直不懂树状数组是怎么套上这个主席树的. 看了两小时发现它套的就是个权值线段树, 看不出来可持久化在哪里. 因为动态开点所以空间nlog2n. ...
- 一次sql注入中转
今天一朋友丢过来一个注入让我看看 url:http://xxxx/ 先看下页面 常规测试一下 用户名输入:' or 1=1 -- - 密码任意 返回 用户名输入:' or 1=2 -- - 返回 基本 ...
- java中HashMap重要性质和优化总结
原文: http://www.cnblogs.com/junyuhuang/p/4519257.html
- 记一次WinForm中屏蔽空格键对按钮的作用
事件的起因是在做一个项目功能时,添加快捷键关闭声音,这个键最终选择了空格键,但是当按下空格键时,会把窗体中获取焦点的控件(比如按钮,文本框等)的单击事件触发,所以要屏蔽这个现象. 开始使用各种方法,在 ...
- PHPMailer < 5.2.18 - RCE EXP(Bash)
#!/bin/bash# CVE-2016-10033 exploit by opsxcq# https://github.com/opsxcq/exploit-CVE-2016-10033echo ...
- CSS样式收集
1.改变浏览器滚动条样式(适合webkit内核,摘自www.webhek.com/scrollbar) ::-webkit-scrollbar{width:2px;} ::-webkit-scroll ...
- 异常详细信息: System.ComponentModel.Win32Exception: 拒绝访问。
本地win7 本地正常,服务器win2008r2,服务器报错! 异常详细信息: System.ComponentModel.Win32Exception: 拒绝访问. 拒绝访问. 说明: 执行当前 W ...