关于Consul

  Consul是一个资劳务登记和发现,健康监测,Key/Value存储以及大部分依中心存储的分布式框架。官网地址是https://www.consul.io/,公司初步应用后我们老大觉得这东西有点意思,随即有了翻译文档的想法,由于精力有限工作繁忙,急需志同道合的道友一起来翻译下,毕竟好东西还是需要大家一起推广的,翻译链接是:http://consul.la/,本文主要留下一点DNS转发的简单应用。

优势

  基于Consul提供的DNS查询接口可以管注册在Consul内部的劳务可坐使:服务名.service.consul的方法取得该服务的ip地址,相较给53端口底体系层赛权力的DNS查询服务,Consul可以透过正规监测动态的提供可用服务的DNS查询,同时因多数据基本存储的分布式特性,Consul提供的DNS服务啊重新便于管理。

准备

下载

  在Consul官网https://www.consul.io/downloads.html可以下载对应操作系统的Consul,Consul同时提供一个管理界面Web
UI。

简单布置

     
Consul启动时的布参数可以经过命令执行传递也可以经读取配置文件夹的不二法门就(-config-file),现在备选一个Server端单机版自身为leader的实例配置方式:

    {
        "datacenter": "dc_yu",
        "data_dir": "./consul-data",
     "ui_dir": "./consului",
        "log_level": "TRACE",
        "server": true,
        "bootstrap": true,
        "node_name":"server_1",
        "bind_addr":"127.0.0.1"
     }

consul识别的配置文件要以.json后缀,以读取配置文件加载配置信息的主意会加载指向文件夹下之所有.json文件,并为文件称首字母排序进行加载。

启动

consul启动方式及配备方式于不同操作系统中一样:

图片 1

 

配置一个劳动

这里当dotnet core快速生成个web服务

图片 2

 

 
 随后以劳动登记到Consul中,并安装健康监测,这里可以由此安排文件进行劳动登记,将文件放到-config-file指向的公文夹目录下:

    {
         "services": [{
         "id":"dotnetcoresample",
         "name":"dotnetcoresample",
         "tags":["dotnetcoresample"],
         "address": "10.1.18.58",
         "port": 5000,
         "checks": [
           {
             "http": "http://10.1.18.58:5000/",
             "interval": "10s"
          }
         ]
       }]
     } 

下一场consul需要再行加载一下,通过命令行consul
reload完成。然后可以通过Consul提供的Web页面查看转

于浏览器被改变到http://127.0.0.1:8500/即可

图片 3

应用

 Consul通过8600端口提供DNS服务,这里可以优先感受一下,这为是合法提供的措施:

图片 4

 

   
接下就好透过有器为所欲为的配置使用本地的域名了,Linux操作系统中可以下DNSmasq,iptables等,这些当官文档有demo:https://www.consul.io/docs/guides/forwarding.html[
](http://www.netfilter.org/)

   
在windows操作系统被属下去用之是一个应用C#支出的开源DNS工具DNSAgent:https://github.com/stackia/DNSAgent

DNSAgent配置

  下充斥编译好的管还是clone代码自己编译随意,编译后底目是

    图片 5

  通过简单布置有限单cfg后缀的文件即可,这里根本配置rules.cfg即可,添加一个配置起,将DNS查询指向Consul的DNS查询接口:

    [
      {
        "Pattern": "^(.*\\.)?consul$",
        "NameServer": "127.0.0.1:8600",
        "QueryTimeout": 30,
        "CompressionMutation": false
      }
    ]

  配置局域网DNS服务器地址:

      图片 6

  运行DNSAgent.exe或者直接登记及windows服务被即可。

   然后测试一下名堂:

  图片 7

       图片 8

  接下去把报及consul中之事务服务已下然后以观下:

      图片 9

 

结束

经Consul提供的DNS服务以场景还是好多之,这个就算可以为所欲为了- –

  

  

 

相关文章

网站地图xml地图