confd】的更多相关文章

1.前言 最近在项目中用nginx做反向代理,需要动态生成nginx的配置.大概流程是用户在页面上新增域名.http或https协议以及端口信息,后台会根据域名自动生成一个nginx的server配置,在nginx.conf配置文件中使用include将所有的server配置加载进来.遇到一个问题就是如何动态生成nginx的配置,以及配置更新.在此之前也接触过配置生成及更新,当时配置的格式都是基于xml的,使用protobuf与xml结合,先采用protobuf定义好配置的数据结构,然后将pro…
基于docker+etcd+confd + haproxy构建高可用.自发现的web服务 2016-05-16 15:12 595人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载. 各个工具介绍 (1)docker:Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化,docker是集群世界中的“进程”.通过docker我们可以非常方便的管理服务以及服务之间的依赖…
前面我们已经通过jenkins+docker搭建了基本的持续集成环境,实现了服务的自动构建和部署,但是,我们遇到一个问题,jenkins构建出来的镜像部署后,需要通过ip:port去访问,有什么更好的方法吗?肯定是通过域名啊!前提是你注册一个域名,或者修改机器hosts文件. 本文介绍通过引入etcd+confd实现部署服务的自动注册,自动生成nginx配置文件,实现每个服务独立域名访问. 配置域名 假设你的域名是: example.com,那么我们可以规划 dev.$servicename.e…
Confd是什么 Confd是一个轻量级的配置管理工具. 通过查询后端存储,结合配置模板引擎,保持本地配置最新,同时具备定期探测机制,配置变更自动reload. 对应的后端存储可以是etcd,redis.zookeeper等等 我们以etcd为后端来演示confd的使用,用最简单粗暴的方式教大家学会动态生成配置 一.准备confd依赖的存储etcd etcd -listen-client-urls="http://0.0.0.0:2379" --advertise-client-url…
Template Resources Template resources are written in TOML and define a single template resource. Template resources are stored under the/etc/confd/conf.d directory by default. Required dest (string) - The target file. keys (array of strings) - An arr…
一.需求 我们使用Nginx做七层负载均衡,后端是Tomcat.项目采用灰度发布方式,每次项目升级,都要手动先从Nginx下摘掉一组,然后再升级这组,当项目快速迭代时,手动做这些操作显然会增加部署时间,于是就想通过脚本实现自动化管理Nginx配置文件. 当时考虑自己写Shell脚本对Nginx配置文件操作,需要用到sed流编辑器,sed本身没有条件判断语句,并不能灵活判断配置文件中要添加/删除位置,因此会增加配置错误风险. 在查资料无意间发现confd能自动管理配置文件,通过模板渲染生成配置文件…
1.下载安装confd ]# wget https://github.com/kelseyhightower/confd/releases/download/v0.15.0/confd-0.15.0-linux-amd64 ]# mkdir -p /opt/confd/bin ]# mv confd-0.15.0-linux-amd64 /opt/confd/bin/confd ]# chmod +x /opt/confd/bin/confd ]# export PATH="$PATH:/opt…
下载安装confd $ mkdir -p $GOPATH/src/github.com/kelseyhightower $ git clone https://github.com/kelseyhightower/confd.git $GOPATH/src/github.com/kelseyhightower/confd $ cd $GOPATH/src/github.com/kelseyhightower/confd $ ./build root@ubuntu:~# confd -versio…
各个工具介绍 (1)Docker:Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化,docker是集群世界中的“进程”.通过docker我们可以非常方便的管理服务以及服务之间的依赖. (2)etcd:是一个高可用的集中配置管理和协作平台,功能和zookeeper很相似,两者的优劣势比较可以参考网上相关文档.分布式系统相关的配置信息可以集中的存储在etcd中统一管理. (3)confd:一个轻量…
vi /etc/confd/confd.toml backend = "consul"confdir = "/etc/confd"log-level = "debug"interval = 600nodes = [  "127.0.0.1:8500",]noop = false ./confd -onetime ./confd…