简易配置中心Confd入手

改成动态更新配置文件,如下每五秒重新生成配置文件

confd与etcd的使用

Add keys

This guide assumes you have a working etcd, or consul server up and running and the ability to add new keys.

/tmp/test-etcd/etcdctl set /myapp/database/url db.example.com
/tmp/test-etcd/etcdctl set /myapp/database/user rob

Create the confdir

The confdir is where template resource configs and source templates are stored.

sudo mkdir -p /etc/confd/{conf.d,templates}

Create a template resource config

Template resources are defined in TOML config files under the confdir.

/etc/confd/conf.d/myconfig.toml

[template]
src = "myconfig.conf.tmpl"
dest = "/tmp/myconfig.conf"
keys = [
    "/myapp/database/url",
    "/myapp/database/user",
]

Create the source template

Source templates are Golang text templates.

/etc/confd/templates/myconfig.conf.tmpl

[myconfig]
database_url = {{getv "/myapp/database/url"}}
database_user = {{getv "/myapp/database/user"}}

Process the template

confd supports two modes of operation daemon and onetime. In daemon mode confd polls a backend for changes and updates destination configuration files if necessary.

etcd

confd -onetime -backend etcd -node http://127.0.0.1:2379




posted @ 2019-12-20 00:46  离地最远的星  阅读(1587)  评论(0编辑  收藏  举报