consul 变更端口
1. 打开consul.exe的根目录 ,在次目录下创建一个 basic.json 的文本 (具体步骤是新建一个txt文本,把名字以及后缀改为 basic.json),以及一个data命名的空文件夹.
2. 使用文本编辑器,把以下代码拷贝进去 (代码中的http就是你的服务端口,在这里我的服务端口是9500)
{"ports": {"server": 9300,"serf_lan": 9301,"serf_wan": 9302,"http": 9500,"dns": 9600} }Consul最多需要6个不同的端口才能正常工作,有些使用TCP,UDP或两种协议。下面我们记录每个端口的要求。 服务器RPC(默认8300)。这由服务器用来处理来自其他代理的传入请求。仅限TCP。 Serf LAN(默认8301)。这是用来处理局域网中的八卦。所有代理都需要。TCP和UDP。 Serf WAN(默认8302)。这被服务器用来在WAN上闲聊到其他服务器。TCP和UDP。从Consul 0.8开始,建议通过端口8302在LAN接口上为TCP和UDP启用服务器之间的连接,以及WAN加入泛滥功能。另见: Consul 0.8.0 CHANGELOG和GH-3058 HTTP API(默认8500)。这被客户用来与HTTP API交谈。仅限TCP。 DNS接口(默认8600)。用于解析DNS查询。TCP和UDP。
3. 在consul.exe的根目录下,打开命令提示窗口把下面的启动代码拷贝进去 代码中的 .\ 表示当前根目录
consul agent -server -bootstrap-expect 1 -data-dir .\ -advertise 127.0.0.1 -client 0.0.0.0 -ui -config-dir .\
点击回车
命令行选项
以下选项全部在命令行中指定。
-disable-keyring-file
- 如果设置,密钥环不会被保存到文件中。任何已安装的密钥在关机时将丢失,只有在给定的-encrypt
密钥在启动时可用。这默认为false。-domain
- 默认情况下,Consul响应“consul”中的DNS查询。域。该标志可用于更改该域。该域中的所有查询都假定由Consul处理,不会递归解决。-hcl
- HCL配置片段。此HCL配置片段将附加到配置中,并允许在命令行上指定配置文件的全部选项。该选项可以多次指定。这是在Consul 1.0中添加的。
-
# 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"
»云端自动加入
从Consul 0.9.1开始,
retry-join
使用go-discover库接受使用云元数据进行自动集群加入的统一接口 。有关更多信息,请参阅云端自动加入页面。# Using Cloud Auto-Joining $ consul agent -retry-join "provider=aws tag_key=..."
-retry-max
--join
在退出代码1之前尝试执行的最大尝试次数。默认情况下,它设置为0,将其解释为无限次重试。-retry-join-wan
- 与retry-join
第一次尝试失败时允许重试wan连接类似。这对于我们知道地址最终可用的情况很有用。截至领事0.9.3 云支持自动加入。-retry-max-wan
--join-wan
在退出代码1之前尝试执行的最大尝试次数。默认情况下,它设置为0,将其解释为无限次重试。-node-meta
- 在Consul 0.7.3及更高版本中可用,这指定了一个任意的元数据键/值对,与表单的节点相关联key:value
。这可以指定多次。节点元数据对具有以下限制:-pid-file
- 此标志为代理存储其PID提供文件路径。这对发送信号很有用(例如,SIGINT
关闭代理或SIGHUP
更新检查确定-protocol
- 要使用的Consul协议版本。这默认为最新版本。这应该只在升级时设置。您可以通过运行查看Consul支持的协议版本consul -v
。-rejoin
- 提供时,领事将忽略先前的休假,并在开始时尝试重新加入集群。默认情况下,Consul将休假视为永久意图,并且在启动时不会再尝试加入集群。该标志允许先前的状态用于重新加入群集。-segment
- (仅限企业)此标志用于设置代理所属网段的名称。代理只能加入其网段内的其他代理并与其通信。有关更多详细信息,请参阅网络细分指南。默认情况下,这是一个空字符串,它是默认的网段。-non-voting-server
- (仅限企业)此标志用于使服务器不参与Raft仲裁,并使其仅接收数据复制流。在需要大量读取服务器的情况下,这可用于将读取可伸缩性添加到群集。-syslog
- 该标志启用记录到系统日志。这仅在Linux和OSX上受支持。如果在Windows上提供,将会导致错误。-ui
- 启用内置的Web UI服务器和所需的HTTP路由。这消除了将Consul Web UI文件与二进制文件分开维护的需要。
»配置文件
除了命令行选项之外,配置还可以放入文件中。在某些情况下,这可能更容易,例如使用配置管理系统配置Consul时。
配置文件是JSON格式的,使得它们易于被人类和计算机读取和编辑。该配置被格式化为一个单独的JSON对象,并在其中进行配置。
配置文件不仅用于设置代理,还用于提供检查和服务定义。这些用于向其他群集宣布系统服务器的可用性。它们分别在检查配置和 服务配置下分别记录。服务和检查定义支持在重新加载期间进行更新。
»示例配置文件
{"datacenter": "east-aws","data_dir": "/opt/consul","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"}
}
»示例配置文件,带有TLS
{"datacenter": "east-aws","data_dir": "/opt/consul","log_level": "INFO","node_name": "foobar","server": true,"addresses": {"https": "0.0.0.0"},"ports": {"https": 8080},"key_file": "/etc/pki/tls/private/my.key","cert_file": "/etc/pki/tls/certs/my.crt","ca_file": "/etc/pki/tls/certs/ca-bundle.crt"
}
尤其请参阅ports
设置的使用:
"ports": {"https": 8080
}
除非https
已为端口分配了端口号,否则Consul将不会为HTTP API启用TLS > 0
。
»配置密钥参考
acl_agent_token
- 用于客户端和服务器执行内部操作。如果没有指定,那么acl_token
将被使用。这是在领事0.7.2中添加的。该令牌至少必须具有对其将注册的节点名称的写入访问权限,以便设置目录中的任何节点级别信息,例如元数据或节点的标记地址。还有其他地方使用了这个令牌,请参阅ACL代理令牌 了解更多详情。
acl_master_token
- 仅用于服务器acl_datacenter
。如果该令牌不存在,将使用管理级权限创建该令牌。它允许运营商使用众所周知的令牌ID引导ACL系统。-
在Unix套接字接口上运行Consul agent命令时,使用
-http-addr
参数指定套接字的路径。您也可以将所需的值放在CONSUL_HTTP_ADDR
环境变量中。对于TCP地址,变量值应该是端口的IP地址。例如:
10.0.0.1:8500
而不是10.0.0.1
。但是,ports
在配置文件中定义端口时,端口将在结构中单独设置 。 autopilot
在Consul 0.8中增加的这个对象允许设置多个子键,这些子键可以为Consul服务器配置操作友好的设置。有关自动驾驶仪的更多信息,请参阅自动驾驶仪指南。cleanup_dead_servers
- 这可以控制定期和每当将新服务器添加到群集时自动删除已死的服务器节点。默认为true
。last_contact_threshold
- 在被认为不健康之前,控制服务器在没有与领导联系的情况下可以走的最长时间。必须是持续时间值,例如10s
。默认为200ms
。max_trailing_logs
- 控制服务器在被认为不健康之前可以跟踪领导者的最大日志条目数。默认为250。server_stabilization_time
- 在添加到集群之前,控制服务器在“健康”状态下必须稳定的最短时间。只有当所有服务器运行Raft协议版本3或更高时才会生效。必须是持续时间值,例如30s
。默认为10s
。redundancy_zone_tag
- (仅限企业)-node-meta
当Autopilot将服务器分为多个区域进行冗余时,这将控制使用的密钥。每个区域中只有一台服务器可以同时成为投票成员。如果留空(默认),则此功能将被禁用。disable_upgrade_migration
- (仅限企业)如果设置为true
,此设置将禁用Consul Enterprise中的Autopilot升级迁移策略,等待足够的新版本服务器添加到群集,然后再将其中的任何一个升级为选民。默认为false
。
ca_file
这为PEM编码的证书颁发机构提供了一个文件路径。证书颁发机构用于使用适当的verify_incoming
或verify_outgoing
标志检查客户端和服务器连接的真实性。ca_path
这提供了PEM编码证书颁发机构文件目录的路径。这些证书颁发机构用于检查具有适当verify_incoming
或verify_outgoing
标志的客户端和服务器连接的真实性。cert_file
这提供了一个PEM编码证书的文件路径。证书提供给客户或服务器来验证代理的真实性。它必须随同提供key_file
。disable_anonymous_signature
禁止使用更新检查提供匿名签名以进行重复数据删除。看disable_update_check
。disable_update_check
禁用自动检查安全公告和新版本发布。这在Consul Enterprise中被禁用。discard_check_output
在存储之前丢弃健康检查的输出。这减少了健康检查具有易失性输出(如时间戳,进程ID,...)的环境中Consul raft日志的写入次数。dns_config
此对象允许设置多个可以调节DNS查询服务的子密钥。有关更多详细信息,请参阅DNS缓存指南 。allow_stale
- 启用DNS信息的陈旧查询。这允许任何Consul服务器而不仅仅是领导者来服务请求。这样做的好处是您可以通过Consul服务器获得线性读取可扩展性。在0.7之前的Consul版本中,默认为false,意味着所有请求都由领导者提供服务,从而提供更强的一致性,但吞吐量更低,延迟更高。在Consul 0.7及更高版本中,为了更好地利用可用服务器,默认为true。max_stale
- 什么时候allow_stale
被指定,这是用来限制陈旧结果被允许的。如果领队服务器超过领导者max_stale
,则将对领导者重新评估该查询以获得更多最新结果。在领事0.7.1之前,这默认为5秒; 在Consul 0.7.1和更高版本中,默认为10年(“87600h”),这有效地允许任何服务器回答DNS查询,不管它多么陈旧。实际上,服务器通常只比领导者短几毫秒,所以这可以让Consul在没有领导者可以选举的长时间停工场景中继续提供请求。node_ttl
- 默认情况下,这是“0”,因此所有节点查找均以0 TTL值提供服务。通过设置此值可以启用节点查找的DNS缓存。这应该用“s”后缀表示第二个或“m”表示分钟。service_ttl
- 这是一个允许使用每项服务策略设置TTL服务查找的子对象。当没有特定的服务可用于服务时,可以使用“*”通配符服务。默认情况下,所有服务均以0 TTL值提供服务。通过设置此值可启用服务查找的DNS缓存。enable_truncate
- 如果设置为true,则将返回超过3条记录或超过适合有效UDP响应的UDP DNS查询将设置截断标志,指示客户端应使用TCP重新查询以获得满载记录集。only_passing
- 如果设置为true,任何健康检查警告或严重的节点将被排除在DNS结果之外。如果为false,则默认情况下,只有健康检查失败的节点将被排除。对于服务查找,会考虑节点自身的运行状况检查以及特定于服务的检查。例如,如果某个节点的健康状况检查非常重要,则该节点上的所有服务都将被排除,因为它们也被视为关键。recursor_timeout
- Consul在递归查询上游DNS服务器时使用的超时。查看recursors
更多细节。缺省值是2s。这在Consul 0.7和更高版本中可用。disable_compression
- 如果设置为true,则不会压缩DNS响应。Consul 0.7中默认添加并启用了压缩。udp_answer_limit
- 限制包含在基于UDP的DNS响应的答案部分中的资源记录数。此参数仅适用于小于512字节的UDP DNS查询。此设置已弃用,并由Consul 1.0.7替换a_record_limit
。a_record_limit
- 限制A,AAAA或ANY DNS响应(包括TCP和UDP)答案部分中包含的资源记录数。在回答问题时,Consul将使用匹配主机的完整列表,随机随机洗牌,然后限制答案的数量a_record_limit
(默认:无限制)。此限制不适用于SRV记录。
encrypt_verify_incoming
- 这是一个可选参数,可用于禁用对输入八卦执行加密,以便在正在运行的群集上从未加密的文件升级到加密的八卦。有关更多信息,请参阅此部分。默认为true。key_file
这提供了一个PEM编码私钥的文件路径。密钥与证书一起用于验证代理的真实性。这必须随同提供cert_file
。http_config
该对象允许为HTTP API设置选项。block_endpoints
此对象是要在代理程序上阻止的HTTP API端点前缀的列表,默认为空列表,表示所有端点都已启用。与此列表中的一个条目具有共同前缀的任何端点将被阻止,并且在访问时将返回403响应代码。例如,为了阻断所有V1 ACL端点,此设定为["/v1/acl"]
,这将阻止/v1/acl/create
,/v1/acl/update
以及与开始其它ACL端点/v1/acl
。这只适用于API端点,而不是,/ui
或者/debug
必须禁用它们各自的配置选项。任何使用禁用端点的CLI命令都将不再起作用。对于更通用的访问控制,Consul的ACL系统应该被使用,但是这个选项对于完全去除对HTTP API端点的访问是有用的,或者对特定的代理来说是非常有用的。这在Consul 0.9.0及更高版本中可用。response_headers
该对象允许向HTTP API响应添加标题。例如,可以使用以下配置在HTTP API端点上启用 CORS:{"http_config": {"response_headers": {"Access-Control-Allow-Origin": "*"}}}
limits
在Consul 0.9.3及更高版本中可用,这是一个嵌套对象,用于配置代理执行的限制。目前,这只适用于客户端模式的代理,而不是Consul服务器。以下参数可用:node_meta
可用于Consul 0.7.3及更高版本,此对象允许将任意元数据键/值对与本地节点相关联,然后可用于过滤某些目录端点的结果。有关更多信息,请参阅-node-meta
命令行标志。{"node_meta": {"instance_type": "t2.medium"}}
performance
在Consul 0.7和更高版本中可用,这是一个嵌套对象,允许调整Consul中不同子系统的性能。请参阅服务器性能指南获取更多详细信息 以下参数可用:reconnect_timeout_wan
这是reconnect_timeout
参数的WAN等效项,用于控制从WAN池中完全删除发生故障的服务器所需的时间。这也默认为72小时,并且必须> 8小时。retry_join_wan
等同于-retry-join-wan
命令行标志。每次尝试加入广域网地址列表,retry_interval_wan
直到至少有一个加入工作。segments
(仅限企业)这是一个嵌套对象列表,它允许设置网段的绑定/通告信息。这只能在服务器上设置。有关更多详细信息,请参阅 网络细分指南。session_ttl_min
允许的最小会话TTL。这确保会话不会在TTL小于指定的限制时创建。建议将此限制保持在默认值以上,以鼓励客户发送频繁的心跳。默认为10秒。start_join
-join
启动时指定节点地址的字符串数组。请注意,retry_join
在自动执行Consul集群部署时,使用 可能更适合帮助缓解节点启动竞争条件。telemetry
这是一个嵌套对象,用于配置Consul发送其运行时遥测的位置,并包含以下键:circonus_api_token
用于创建/管理支票的有效API令牌。如果提供,则启用度量标准管理。circonus_api_app
与API令牌关联的有效应用名称。默认情况下,它被设置为“consul”。circonus_api_url
用于联系Circonus API的基本URL。默认情况下,它被设置为“ https://api.circonus.com/v2 ”。circonus_submission_interval
指标提交给Circonus的时间间隔。默认情况下,它被设置为“10s”(十秒)。circonus_submission_url
check.config.submission_url
来自先前创建的HTTPTRAP检查的Check API对象 的字段。circonus_check_id
从先前创建的HTTPTRAP检查中 检查ID(不检查包)。check._cid
Check API对象中字段的数字部分。circonus_check_force_metric_activation
强制激活已存在且当前未激活的度量标准。如果启用了支票管理,则默认行为是在遇到新的指标时添加新指标。如果该指标已经存在于支票中,则不会被激活。此设置将覆盖该行为。默认情况下,它被设置为false。circonus_check_instance_id
唯一标识来自此实例的度量标准。当它们在基础架构内移动时,它可用于维护度量连续性,即瞬态或短暂实例。默认情况下,它被设置为主机名:应用程序名称(例如“host123:consul”)。circonus_check_search_tag
一个特殊的标签,当与实例ID结合使用时,有助于在未提供提交URL或检查ID时缩小搜索结果的范围。默认情况下,它被设置为service:application name(例如“service:consul”)。circonus_check_display_name
指定一个名称以在创建时进行检查。该名称显示在Circonus UI Checks列表中。可用于Consul 0.7.2及更高版本。circonus_check_tags
用逗号分隔的附加标签列表在创建时添加到支票中。可用于Consul 0.7.2及更高版本。circonus_broker_id
创建新支票时使用的特定Circonus Broker的ID。broker._cid
Broker API对象中字段的数字部分。如果启用指标管理并且未提供提交URL和检查ID,则将尝试使用实例ID和搜索标记搜索现有检查。如果找不到,则会创建一个新的HTTPTRAP检查。默认情况下,不会使用此选项,并选择随机企业代理或默认的Circonus Public Broker。circonus_broker_select_tag
当未提供经纪人代码时,将使用特殊标签选择Circonus经纪人。这个最好的用途是作为代理应该基于针对所使用的提示,其中该特定的实例正在运行(例如一个特定的地理位置或数据中心,DC:SFO)。默认情况下,这是留空,不使用。disable_hostname
这将控制是否在计算机主机名的前面加上运行时间遥测,默认为false。dogstatsd_addr
这提供了格式中DogStatsD实例的地址host:port
。DogStatsD是statsd协议兼容的风格,增加了用标签和事件信息修饰指标的功能。如果提供,领事将发送各种遥测信息到该实例进行聚合。这可以用来捕获运行时信息。dogstatsd_tags
这提供了将被添加到发送到DogStatsD的所有遥测包的全局标签列表。它是一个字符串列表,其中每个字符串看起来像“my_tag_name:my_tag_value”。filter_default
这将控制是否允许过滤器未指定的度量标准。默认为true
,这将允许在没有提供过滤器时的所有指标。如果设置为false
不使用过滤器,则不会发送指标。metrics_prefix
写入所有遥测数据时使用的前缀。默认情况下,它被设置为“consul”。这是在Consul 1.0中添加的。对于之前版本的Consul,使用statsite_prefix
相同结构中的配置选项。由于此前缀适用于所有遥测提供商,因此它已重新命名为Consul 1.0,而不仅仅是statsite。prefix_filter
这是一个过滤规则列表,适用于通过前缀允许/屏蔽指标,格式如下:["+consul.raft.apply","-consul.http","+consul.http.GET" ]
前导的“ + ”将使用给定前缀的任何度量标准,并且前导“ - ”将阻止它们。如果两个规则之间有重叠,则更具体的规则优先。如果多次列出相同的前缀,则阻塞将优先。
syslog_facility
何时enable_syslog
提供,这将控制向哪个设施发送消息。默认情况下,LOCAL0
将被使用。tls_cipher_suites
在Consul 0.8.2中添加,它将支持的密码组列表指定为逗号分隔列表。源代码中提供了所有支持的密码套件列表。tls_prefer_server_cipher_suites
在Consul 0.8.2中添加,这将导致Consul更喜欢服务器的密码套件而不是客户端密码套件。unix_sockets
- 这可以调整Consul创建的Unix域套接字文件的所有权和权限。只有在HTTP地址配置了unix://
前缀时才使用域套接字。watches
- Watches是手表规范的列表,允许在更新特定数据视图时自动调用外部进程。有关更多详情,请参阅 手表文档。手表可以在配置重新加载时修改。
consul 变更端口相关推荐
- docker consul
文章目录 一.定义 1.consul的优势 2.Consul的特性 3.构建核心 二.部署 1.consul服务器配置 2.容器服务自动注册到consul集群 3.consul-server节点配置n ...
- java负载均衡框架_SpringCloud与Consul集成实现负载均衡功能
负载均衡(Load Balance,简称LB)是一种服务器或网络设备的集群技术.负载均衡将特定的业务(网络服务.网络流量等)分担给多个服务器或网络设备,从而提高了业务处理能力,保证了业务的高可用性.负 ...
- 服务发现 注册中心 consul 的介绍、部署和使用
什么是服务发现 微服务的框架体系中,服务发现是不能不提的一个模块.我相信了解或者熟悉微服务的童鞋应该都知道它的重要性.这里我只是简单的提一下,毕竟这不是我们的重点.我们看下面的一幅图片: 图中,客户端 ...
- 服务发现 - consul 的介绍、部署和使用
什么是服务发现 微服务的框架体系中,服务发现是不能不提的一个模块.我相信了解或者熟悉微服务的童鞋应该都知道它的重要性.这里我只是简单的提一下,毕竟这不是我们的重点.我们看下面的一幅图片: 图中,客户端 ...
- 学习搭建 Consul 服务发现与服务网格-有丰富的示例和图片
第一部分:Consul 基础 1,Consul 介绍 官网文档描述:Consul 是一个网络工具,提供功能齐全的服务网格和服务发现. 它可以做什么:自动化网络配置,发现服务并启用跨任何云或运行时的安全 ...
- Asp.Net Core Ocelot Consul 微服务
做一个简单的微服务架构如下图: 这个图表示的是一个网关代理Consul的两个服务,consul每个服务注册集群 安装 Consul的服务,这里安装单机版的,集群版配置最低要求(3个Consul ser ...
- 实战中的asp.net core结合Consul集群Docker实现服务治理
一.前言 在写这篇文章之前,我看了很多关于consul的服务治理,但发现基本上都是直接在powershell或者以命令工具的方式在服务器上面直接输入consul agent .... 来搭建启动con ...
- 端口如何支持非localhost访问_新特性解读 | MySQL 8.0.19 支持 DNS SRV
转载自公众号:玩转MySQL 作者:洪斌 MySQL Router 是 InnoDB Cluster 架构的访问入口,在架构部署上,官方给出的建议是 router 与应用端绑定部署,避免 router ...
- .Net Core 商城微服务项目系列(二):使用Ocelot + Consul构建具备服务注册和发现功能的网关...
1.服务注册 在上一篇的鉴权和登录服务中分别通过NuGet引用Consul这个包,同时新增AppBuilderExtensions类: public static class AppBuilderEx ...
最新文章
- 谷歌一员工确诊新冠肺炎:已大面积限制员工出行
- Axure8.0深入一点(篇)
- 二叉树(BST)之创建二叉搜索树
- The directory '*' or its parent directory is not owned by the current user
- 不需要人际交往的计算机系,计算机对大学生人际交往影响.doc
- 【.NET Core 跨平台 GUI 开发】第三篇:Gtk# 表格布局与事件处理
- P2831-愤怒的小鸟【状压dp】
- Kubernetes-标签和注解(二十二)
- 使用QHttp与C#编写的服务端交互(编译环境mingw)
- 将node.js程序作为服务,并在windows下开机自动启动(使用forever)
- 【discuzx2】如何通过工具修改ucenter创始人的管理员密码以保证通信成功?
- 论文阅读《SHINE: Signed Heterogeneous Information Network Embedding for Sentiment Link Prediction》
- c语言windows文本框,windows编程 如何创建文本框?
- 基于卷积和递归神经网络的物联网流量分类器
- 招投标过程---投标之述标 大杂烩
- ORA-00600: internal error code 内部错误代码
- 高学历就意味着高薪资?低学历转行3D建模,游戏建模成为首选
- 制作自己的ctpn数据集
- taro tabBar的设置,设置tabbar的文字,设置tabbar的图标
- textblob 情感分析_使用TextBlob进行远程学习的推文中的情感分析
热门文章
- 关于学校计算机的情景剧剧本,校园剧本校园情景剧
- U盘保存文件未完成时拔掉U盘导致数据丢失的解决办法
- 视频教程-跟宁哥学Go语言视频课程(10):反射-Go语言
- SQL Server的错误日志
- 大专生三面蚂蚁金服,Java中高级核心知识全面解析(7)
- Android相机开发: 触摸对焦,触摸测光,二指手势缩放
- cc共享许可协议_如何以及为何使用知识共享许可的作品
- 起点:如何成为一名黑客?
- opencv联合dlib人脸检测例子二(加快检测)
- mysql 5.7 ga_mysql 5.7.9(GA) 安装