Consul

ContainerPilot使用Hashicorp的consul在作为服务的容器中注册工作。 Watches查询consul找出其他服务的状态。

Client configuration

ContainerPilot配置文件中的consul域配置ContainerPilot的Consul客户端。 要使用领事的ACL系统,请使用CONSUL_HTTP_TOKEN环境变量。

如果您正在通过TLS与Consul进行沟通,则可以包含该方案(例如:https:// consul:8500 )。 请注意,一般来说,领事客户端将与本地主机上的代理进行通信,因此TLS可能不是必需的。

如果您需要TLS的额外配置选项,可以使用以下可选字段(或consul文档中描述的环境变量选项),而不是简单的字符串:

consul: {
address: "consul.example.com:8500",
scheme: "https",
token: "aba7cbe5-879b-999a-07cc-2efd9ac0ffe", // or CONSUL_HTTP_TOKEN
tls: {
cafile: "ca.crt", // or CONSUL_CACERT
capath: "ca_certs/", // or CONSUL_CAPATH
clientcert: "client.crt", // or CONSUL_CLIENT_CERT
clientkey: "client.key", // or CONSUL_CLIENT_KEY
servername: "consul.example.com", // or CONSUL_TLS_SERVER_NAME
verify: true, // or CONSUL_HTTP_SSL_VERIFY
}
}

Consul agent configuration

在诸如Joyent的Triton 基础架构容器或虚拟机之类的典型应用程序部署中,最终用户将在每个主机(基础架构容器或VM)上部署Consul代理。 该主机上的所有应用程序将在主机上的本地主机或桥接网络中找到代理。

这在Triton Elastic Docker主机或其他最终用户无法部署主机本地服务的其他容器即服务部署环境中不起作用。 在这种部署中,用户可能会尝试在每个底层主机上部署Consul代理(使用部署API提供的任何主机关联选项),但容器通常不会有一种方法来查找该代理。

在这种情况下,我们建议在每个容器内部署一个Consul代理。 所有进程(包括ContainerPilot)都可以通过localhost与代理进行通信,代理可以通过基础架构支持的DNS(如Triton CNS )找到consul服务器。

Consul客户端的建议配置和Consul代理的job如下,假设环境变量CONSUL代表领事服务器的DNS名称:

consul: "localhost:8500",
jobs: [
{
name: "consul-agent",
exec: [
"consul", "agent",
"-config-file=/etc/consul/consul.json",
"-rejoin",
"-retry-join", "{{ .CONSUL }}",
"-retry-max", "10",
"-retry-interval", "10s"
],
restarts: "unlimited"
}
]
 

Containerpilot 配置文件 之 consul的更多相关文章

  1. Containerpilot 配置文件模板

    { "consul": "{{ .CONSUL }}:8500", "logging": { "level": &quo ...

  2. Containerpilot 配置文件reload

    containerpilot -reload -config ./containerpilot.json 进程号不变,重新加载配置文件

  3. Containerpilot 配置文件 之 Telemetry

    如果提供telemetry选项,ContainerPilot将公开可用于刮擦性能telemetry的Prometheus HTTP客户端界面. telemetry接口被公告为consul服务. tel ...

  4. Containerpilot 配置文件 之 Watches

    watch是在consul进行监视的服务配置. watch轮询服务的状态,并在服务变得健康,变得不健康或者实例数量发生变化时发出事件. 请注意,watch不包括行为; watch只发出事件,以便job ...

  5. Containerpilot 配置文件示例

    { consul: "localhost:8500", logging: { level: "INFO", format: "default" ...

  6. Containerpilot 配置文件 之 Jobs

    ContainerPilot job是用户定义的进程和规则,用于何时执行它,如何进行健康检查,以及如何向Consul做广告. 这些规则旨在允许灵活性覆盖几乎可能要运行的任何类型的进程. 一些可能的jo ...

  7. 服务发现 consul cluster 的搭建【转】

    consul cluster setup 介绍和指南: consul用于服务发现.当底层服务发生变化时,能及时更新正确的mysql服务IP. 并提供给业务查询.但需要自行编写脚本,监测数据库状态和切断 ...

  8. 032:基于Consul和MGR的MySQL高可用架构

    目录 一.Consul 1.Consul简介 2.准备环境 3.Consul 安装 4.Consul配置文件 5.Consul 服务检查脚本 6.Consul启动 二.MGR搭建 1.MGR配置 2. ...

  9. .net core Ocelot Consul 实现API网关 服务注册 服务发现 负载均衡

    大神张善友 分享过一篇 <.NET Core 在腾讯财付通的企业级应用开发实践>里面就是用.net core 和 Ocelot搭建的可扩展的高性能Api网关. Ocelot(http:// ...

随机推荐

  1. wxWidgets:简单消息处理

    早期的wxWidgets使用类似MFC的方式进行消息处理:在新版中这种映射方式仍然得以保留. 在MyFrame.h中添加: private: void OnQuitButton(wxCommandEv ...

  2. js引用类型之valueof和tostring(三)

    一.摘要: <javascript高级程序设计第三版>一书中单独有一章对js的引用类型(Object.Array.RegExp.Function:基本包装类型:Boolean.Number ...

  3. Java-Runoob-高级教程-实例-数组:07. Java 实例 – 数组合并

    ylbtech-Java-Runoob-高级教程-实例-数组:07. Java 实例 – 数组合并 1.返回顶部 1. Java 实例 - 数组合并  Java 实例 以下实例演示了如何通过 List ...

  4. 1110 Complete Binary Tree (25 分)

    1110 Complete Binary Tree (25 分) Given a tree, you are supposed to tell if it is a complete binary t ...

  5. [UE4]C++三种继承方式

    (1) 公有继承(public) 公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问. (2)私有继承(pri ...

  6. Redis 密码设置和查看密码

    Redis 密码设置和查看密码 redis没有实现访问控制这个功能,但是它提供了一个轻量级的认证方式,可以编辑redis.conf配置来启用认证. 1.初始化Redis密码: 在配置文件中有个参数: ...

  7. 深度强化学习:入门(Deep Reinforcement Learning: Scratching the surface)

    RL的方案 两个主要对象:Agent和Environment Agent观察Environment,做出Action,这个Action会对Environment造成一定影响和改变,继而Agent会从新 ...

  8. ajax控制页面跳转

    一开始我是这么写的,一直报错,跳转路径解析不了,显示为问号: 前台html: <form> <table style="margin: 200px auto;"& ...

  9. ORA:01745 无效的主机 绑定变量名

    原因是:mybatis中的mapping映射时,sql语句中忘了加逗号,且逗号处有换行

  10. sql server 定期自动清理日志

    https://blog.csdn.net/dqs78833488/article/details/51372491