Consul命令选项

指定配置文件

使用配置文件的方式:

-config-file

-config-dir

要加载的配置文件目录。Consul将加载后缀为“ .json”或“ .hcl”的所有文件。加载顺序为字母顺序,并且使用与config-file以上选项相同的合并例程。可以多次指定此选项以加载多个目录。config目录的子目录未加载。有关配置文件格式的更多信息,请参见“配置文件”部分。

{
  "data_dir": "./data",
  "log_level": "INFO",
  "node_name": "foobar",
  "server": true,
  "watches": [
    {
        "type": "checks",
        "handler": "/usr/bin/health-check-handler.sh"
    }
  ],
  "telemetry": {
     "statsite_address": "127.0.0.1:2180"
  }
}

命令

必须的存储状态目录:-data-dir

此标志为代理提供数据目录以存储状态。

-bind:内部通信地址

内部集群通信应绑定的地址。这是群集中所有其他节点应可访问的IP地址。默认情况下,这是“0.0.0.0”,这意味着领事会绑定到所有地址在本地机器上

运行在那个数据中心:-datacenter

则默认为“ dc1”

-dns-port:侦听的DNS端口

默认8600

-encrypt:流量加密

指定用于加密Consul网络流量的密钥。该密钥必须是经过Base64编码的32字节。创建加密密钥的最简单方法是使用consul keygen。集群中的所有节点必须共享相同的加密密钥才能进行通信。每次重新启动代理程序时,提供的密钥将自动保留在数据目录中并自动加载。这意味着要加密Consul的八卦协议,只需在每个代理的初始启动序列上提供一次此选项。如果在使用加密密钥初始化Consul之后提供该密钥,则将忽略提供的密钥,并显示警告。

来源: Configuration | Consul by HashiCorp

-grpc-port:监听的gRPC API端口。

默认值-1(禁用gRPC)

-http-port 监听的HTTP API端口

使用的话,这将覆盖默认端口8500。

-https-port 用于侦听的HTTPS API端口

默认值-1(禁用https)。

-log-file 将所有Consul代理日志消息写入文件

此值用作日志文件名的前缀。当前时间戳将附加到文件名。如果该值以路径分隔符结尾,consul- 则将应用于该值。如果文件名缺少扩展名,.log 则会附加。例如,设置log-file/var/log/将导致日志文件路径为/var/log/consul-{timestamp}.loglog-file可以-log-rotate-bytes-log-rotate-duration结合使用 , 以获得细粒度的日志轮换体验。

-log-rotate-bytes 指定在需要轮换之前应写入日志的字节数

除非指定,否则对可写入日志文件的字节数没有限制。

-log-rotate-duration 指定在轮换日志之前应该写入的最大持续时间

必须为持续时间值,例如30s。默认为24h。

-log-rotate-max-files 指定要保留的最大旧日志文件归档的最大数量。

默认值为0(不会删除任何文件)。设置为-1可在创建新日志文件时丢弃旧日志文件。

-join-启动时要加入的另一个代理的地址

-retry-join-类似,-join

但允许重试连接,直到成功为止。一旦成功加入成员列表中的成员,它将不再尝试再次加入。然后,代理商将仅通过八卦保持其会员资格。在您知道该地址最终可用的情况下,这很有用。可以多次指定此选项以指定要加入的多个代理。该值可以包含IPv4,IPv6或DNS地址。在Consul 1.1.0及更高版本中,可以将其设置为 go-sockaddr 模板。如果Consul在非默认的Serf LAN端口上运行,则也必须指定此端口。IPv6必须使用“括弧式”语法。如果给出了多个值,则按列出的顺序尝试并重试它们,直到第一个成功。这里有些例子:

# Using a DNS entry
$ consul agent -retry-join "consul.domain.internal"
# Using IPv4
$ consul agent -retry-join "10.0.4.67"
# Using IPv6
$ consul agent -retry-join "[::1]:8301"
# Using multiple addresses
$ consul agent -retry-join "consul.domain.internal" -retry-join "10.0.4.67"

云自动加入

从Consul 0.9.1开始,retry-join使用go-discover库接受统一接口,以 使用云元数据进行自动集群加入。有关更多信息,请参阅Cloud Auto-join页面

# Using Cloud Auto-Joining
$ consul agent -retry-join "provider=aws tag_key=..."

-retry-interval-等待两次连接尝试之间的时间

默认为30秒。

-retry-max--join 使用返回码1退出之前的最大尝试次数

默认情况下,该值设置为0,这被解释为无限重试。

-join-wan-启动时加入的另一个WAN代理的地址

可以多次指定,以指定要加入的多个WAN代理。如果Consul无法使用任何指定地址加入,则代理启动将失败。默认情况下,代理-join-wan启动时不会包含任何节点。

在Consul 1.1.0及更高版本中,可以将其设置为 go-sockaddr 模板。

-retry-join-wan-与类似

retry-join 但如果第一次尝试失败,则允许重试wan join。对于我们知道地址最终可用的情况,这很有用。从0.9.3版开始, 还支持Cloud Auto-Joining

在Consul 1.1.0及更高版本中,可以将其设置为 go-sockaddr 模板

-retry-interval-wan-等待之间的时间

-join-wan。默认为30秒。

-log-levelConsul代理启动后显示的日志记录级别。

默认为“ info”。可用的日志级别为“跟踪”,“调试”,“信息”,“警告”和“错误”。您始终可以通过consul monitor和使用任何日志级别连接到代理。此外,可以在配置重新加载期间更改日志级别。

-log-json-使用此标志,代理可以以JSON格式输出日志。

默认情况下为false。

-node-群集中此节点的名称。

在集群中,它必须是唯一的。默认情况下,这是计算机的主机名。

-node-id节点的唯一标识符

在Consul 0.7.3和更高版本中可用,即使节点或地址的名称发生更改,它始终是该节点的唯一标识符。必须采用十六进制字符串的形式,长度为36个字符,例如adf4238a-882b-9ddc-4a9d-5b6758e4159e。如果没有提供(这是最常见的情况),那么代理将在启动时生成一个标识符并将其保留在数据目录中,以便在代理重新启动时保持不变。除非-disable-host-node-id设置为true ,否则将尽可能使用来自主机的信息来生成确定性节点ID 。

-pid-file-此标志提供代理存储其PID的文件路径

这对于向SIGINT 代理发送信号(例如,关闭代理或SIGHUP更新支票定义)很有用。

-rejoin该标志允许使用先前的状态来重新加入集群。

提供后,领事将忽略先前的离开,并在启动时尝试重新加入集群。默认情况下,Consul将离开视为永久意图,并且在启动时不尝试再次加入集群。该标志允许使用先前的状态来重新加入集群。

-serf-lan-port-要监听的Serf LAN端口

这将覆盖默认的Serf LAN端口8301。这在Consul 1.2.2和更高版本中可用。

-serf-wan-port-Serf WAN端口以进行侦听

这将覆盖默认的Serf WAN端口8302。这在Consul 1.2.2和更高版本中可用。

-server-此标志用于控制代理是处于服务器还是客户端模式

提供后,代理将充当Consul服务器。每个Consul群集必须至少具有一台服务器,并且每个数据中心最好不超过5台。所有服务器都参与Raft共识算法,以确保事务以一致的,可线性化的方式发生。事务会修改群集状态,群集状态将在所有服务器节点上维护,以确保在发生节点故障时可用。服务器节点还与其他数据中心中的服务器节点一起参与WAN闲话池。服务器充当其他数据中心的网关,并根据需要转发流量。

-server-port-要侦听的服务器RPC端口

这将覆盖默认的服务器RPC端口8300。这在Consul 1.2.2和更高版本中可用。

-non-voting-server 服务器不参与Raft仲裁

-此标志用于使服务器不参与Raft仲裁,并使其仅接收数据复制流。在需要对服务器进行大量读取的情况下,这可用于为群集增加读取可伸缩性。

-ui-启用内置的Web UI服务器和所需的HTTP路由

这消除了与二进制文件分开维护Consul Web UI文件的需要。

-ui-content-path-该标志提供了更改Consul UI加载路径的选项,并将在浏览器中显示。

默认情况下,路径/ui/http://localhost:8500/ui/。在自定义路径中仅允许使用字母数字, -_/v1/不允许,因为它将覆盖API端点。

使用的端口

Consul最多需要6个不同的端口才能正常工作,某些端口需要使用TCP,UDP或同时使用这两种协议。

查看所需端口表,以获取所需端口及其默认设置的列表。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值