【Linux】【Services】【SaaS】Docker+kubernetes(7. 安装consul实现服务注册发现)

1. 简介

1.1. Consul的功能:

服务发现:通过DNS或HTTP接口使得消费者发现服务,应用程序可以轻松找到所依赖的服务。

健康检查:防止将请发转发不健康的主机。

键值存储:可以使用分层键/值存储,比如功能标记、动态配置等。

多数据中心:开箱即用,不需要复杂的配置。这就意味着不用建立抽象的逻辑来扩展多个地区。

1.2. Consul集群介绍:

-- Consul agent是Consul核心工作,分为client和server两种工作模式。默认以client模式运行,提供服务注册、健康检查、转发查询给server leader。server模式启动时使用-server选项指定,用于维护Consul集群状态、Raft协议进行选举。

-- agent必须在每个Consul节点运行,所有运行Consul agent节点构成Consul集群。

-- 官方建议Consul集群至少3或5个节点运行Consul agent server模式,client节点不限。

-- 通过join或rejoin加入集群。一旦加入,集群信息使用gossip算法同步到整个集群节点。

2. 环境

3. 安装与配置

4. 命令详解

4.1. consul

选项 描述
-advertise 通告地址
-bind 集群节点之间通讯地址
-bootstrap 设置服务器为bootstrap模式,在一个DC中只有一个server处于bootstrap模式。一般初始化第一台Consul时指定,自选举为leader
-bootstrap-expect 在一个DC钟期望提供server节点数目,consul会一直等到指定的server数目才会引导整个集群,选举leader,不能与bootstrap同时使用
-client 设置客户端访问地址,包括RPC、DNS,默认为127.0.0.1
-config-file 从JSON配置文件中读取
-data-dir 指定存放agent server集群状态目录,以免系统重启丢失
-dc 数据中心名称,默认dc1
-http-port HTTP API监听端口
-join 加入一个已经启动的agent,可以指定多个agent地址
-node 节点名称,必须在集群中唯一的,默认是主机名
-rejoin 忽略先前的离开,再次启动后尝试加入集群
-server 切换agent模式到server模式,每个集群至少有一个server
-ui 启用内置的Web UI
-ui-dir Web UI的资源目录

原文地址:https://www.cnblogs.com/demonzk/p/8359955.html

时间: 2024-08-29 16:15:43

【Linux】【Services】【SaaS】Docker+kubernetes(7. 安装consul实现服务注册发现)的相关文章

Centos安装Consul微服务

一.简介 Consul([?k?nsl],康搜)是注册中心,服务提供者.服务消费者等都要注册到Consul中,这样就可以实现服务提供者.服务消费者的隔离.除了Consul之外,还有Eureka.Zookeeper等类似软件.consul是存储服务名称与IP和端口对应关系的服务器 consul是google开源的一个使用go语言开发的服务发现.配置管理中心服务.内置了服务注册与发现框 架.分布一致性协议实现.健康检查.Key/Value存储.多数据中心方案,不再需要依赖其他工具(比如ZooKeep

Spring Cloud Consul 实现服务注册和发现

Spring Cloud 是一个基于 Spring Boot 实现的云应用开发工具,它为基于 JVM 的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等操作提供了一种简单的开发方式.通过 Spring Boot 风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂.易部署和易维护的分布式系统开发工具包. Spring Cloud 包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Sprin

基于consul的服务注册(含踩坑过程)

在本地的一个案例中进行修改 修改微服务的相关pom文件修改每个微服务的pom文件,添加SpringCloud提供的基于Consul的依赖 <!--SpringCloud提供的基于Consul的服务发现--> <dependency>       <groupId>org.springframework.cloud</groupId>       <artifactId>spring-cloud-starter-consul-discovery&l

简单RPC框架-基于Consul的服务注册与发现

*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin: 15px 0; } /* HEAD

【Linux】【Services】【kubernetes】安装与配置

1.简介 2.环境 功能与组件 机器名 管理IP 服务IP 备注 kubnernetes master/etcd hctjk8smaster01 10.30.2.41 10.30.2.141   kubnernetes slave/etcd hctjk8sslave01 10.30.2.42 10.30.2.142   kubnernetes slave/etcd hctjk8sslave02 10.30.2.43 10.30.2.143   docker hctjk8snode01 10.30

分布式服务注册和发现consul 简要介绍

Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul的方案更"一站式",内置了服务注册与发现框 架.分布一致性协议实现.健康检查.Key/Value存储.多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等).使用起来也较 为简单.Consul用Golang实现,因此具有天然可移植性(支持Linux.windows和Mac OS X):安装包仅包含一个可执行文件,方便部署,与Docker等轻量级

SpringCloud(七)服务注册之Consul的简介和原理

Consul 何为Consul? Consul 是由 HashiCorp 公司推出的开源软件,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul 的方案更“一站式”,内置了服务注册与发现框 架.分布一致性协议实现.健康检查.Key/Value 存储.多数据中心方案,不再需要依赖其他工具(比如 ZooKeeper 等),使用起来也较为简单. Consul 用 Golang 实现,因此具有天然可移植性(支持 Linux.windows 和 Mac OS X ),它的安

consul服务注册与发现应用实战

上一讲:讲到consul发现的模板形式,这一讲我们聊一聊比较基础的consul的服务注册与发现,并且使用bind代理给服务做负载均衡,这个功能也是后面要补充的redis + consul 或者mha + consul的一个基础,我们先看一下环境: 配置环境(还是那句话,在生产环境把server配置成3-5台,agent随意): 192.168.113.174       server 192.168.113.175       agent 192.168.113.176       agent

Linux 系统中 Docker 容器安装及使用

Docker 简介 产生背景 项目的开发环境和部署环境不一致,部署环境配置难度大.集群技术的发展,集群的相同配置操作难度大. 基本理念 使用Go语言实现的云开源项目,"一次编译,处处运行",只需要一次配置环境,就可以在其他环境一键部署,软件即容器,虚拟化. 虚拟化技术 虚拟机:一种带环境安装的解决方案,模拟整套操作系统,笨重. 容器:将所有运行环境打包成互相隔离的容器,不进行硬件虚拟. 开发/运维(DevOps) 开发自运维.一次开发,处处运维. 官方资料 Docker Docker中