【云原生 | 57】Docker三剑客之Docker Swarm֯使用其他服务发现后端

news2024/12/27 0:05:11

🍁博主简介
        🏅云计算领域优质创作者
        🏅2022年CSDN新星计划python赛道第一名

        🏅2022年CSDN原力计划优质作者
        🏅阿里云ACE认证高级工程师
        🏅阿里云开发者社区专家博主

💊交流社区:CSDN云计算交流社区欢迎您的加入!

目录

1.使用文件 

2.其他发现服务后端 

3.地址和端口的范围匹配 

 👑👑👑结束语👑👑👑​


Swarm目前可以支持多种服务发现后端,这些后端在功能上都是一致的,即维护属于某个集群的节点信息。不同的方案并无优劣之分,在实际使用时,可以结合自身需求和环境限制进行选择,甚至自己定制其他方案。

使用中可以通过不同的路径来选择特定的服务发现后端机制:

👉token://<token>:使用Docker Hub提供的服务,适用于可以访问公网的情况;

👉file://path/to/file:使用本地文件,需要手动管理;

👉consul://<ip>/<path>:使用Consul服务,私有环境推荐;
👉 etcd://<ip1>,<ip2>/<path>:使用Etcd服务,私有环境推荐;
👉zk://<ip1>,<ip2>/<path>:使用ZooKeeper服务,私有环境推荐;
👉[nodes://]<ip1>,<ip2>:手动指定集群中节点的地址,方便进行服务测试。

1.使用文件 

使用本地文件的方式十分简单,就是将所有属于某个集群的节点的Docker
daemon信息写入一个文件中,然后让manager从这个文件中直接读取相关信息。
首先,在Swarm管理节点(192.168.0.2)上新建一个文件,把要加入集群的机器的Docker daemon信息写入文件:
$ tee /tmp/cluster_info <<-'EOF'
192.168.0.2:2375
192.168.0.3:2375
EOF
然后,本地执行swarm manage命令,并指定服务发现机制为本地文件。注意,因为是容器方式运行manager,需要将本地文件挂载到容器内:
$ docker run -d -p 12375:2375 -v /tmp/cluster_info:/tmp/cluster_info swarm
manage file:///tmp/cluster_info
接下来就可以通过使用Swarm服务来进行管理了,例如使用info查看所有节点的信息:
$ docker -H 192.168.0.2:12375 info
Containers: 18
Images: 36
Role: primary
Strategy: spread
Filters: health, port, dependency, affinity, constraint
Nodes: 2
Host-1: 192.168.0.2:2375
└ Containers: 15
└ Reserved CPUs: 0 / 4
└ Reserved Memory: 1 GiB / 4.053 GiB
└ Labels: executiondriver=native-0.2, kernelversion=3.16.0-43-generic,
operatingsystem=Ubuntu 14.04.3 LTS, storagedriver=aufs
Host-2: 192.168.0.3:2375
└ Containers: 3
└ Reserved CPUs: 0 / 8
└ Reserved Memory: 0 B / 16.46 GiB
└ Labels: executiondriver=native-0.2, kernelversion=3.16.0-30-generic,
operatingsystem=Ubuntu 14.04.3 LTS, storagedriver=aufs
CPUs: 12
Total Memory: 20.51 GiB
Name: e71eb5f1d48b

2.其他发现服务后端 

其他服务发现后端的使用方法也是大同小异,不同之处在于使用Swarm命令时指定的路径格式不同。
例如,对于前面介绍的Consul服务后端来说,快速部署一个Consul服务的命令为:
$ docker run -d -p 8500:8500 --name=consul progrium/consul -server -bootstrap
之后创建Swarm的管理服务,指定使用Consul服务,管理端口监听在本地的4000端口:
$ docker run -d -p 4000:4000 swarm manage -H :4000 --replication --advertise
<manager_ip>:4000 consul://<consul_ip>:8500

Swarm节点注册时的命令格式类似于:

$ swarm join --advertise=<node_ip:2375> consul://<consul_addr>/<optional path prefix>

对于Etcd服务后端来说,节点注册时的命令格式类似于:

$ swarm join --addr=<node_addr:2375> etcd://<etcd_addr1>,<etcd_addr2>/<optional
path prefix>

启动管理服务时,格式类似于:

$ swarm manage -H tcp://<manager_ip>:4000 etcd://<etcd_addr1>,<etcd_addr2>/
<optional path prefix>

3.地址和端口的范围匹配 

对于基于文件和手动指定节点信息两种服务发现后端机制来说,其中地址和端口域可以支持指定一个范围,以一次性指定多个地址。例如:
192.168.0.[2:10]:2375代表192.168.0.2:2375~192.168.0.10:2375一共9个地址;
192.168.0.2:[2:9]375代表192.168.0.2:2375~192.168.0.2:9375一共8个地址。

 👑👑👑结束语👑👑👑

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/721632.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 为什么设计只有主线程更新UI?

选择方案的选择 单线程更新UI多线程更新UI 从问题本身考虑就两个方案不是单线程就是多线程。 下面是个人根据具体情况分析&#xff0c;如果有什么不对的地方&#xff0c;欢迎指正。 从开发效率来看&#xff0c;开发一个 单线程UI 库&#xff0c;会显得非常容易&#xff0c;而…

动态gif图片如何快速制作?分享一招快速制作gif动画

动态gif图片对大家来说都不陌生了&#xff0c;常常会在各种社交平台中见到&#xff0c;那么&#xff0c;这种gif动图片要怎么制作呢&#xff1f;很简单&#xff0c;给大家分享一款专业的gif制作&#xff08;https://www.gif.cn/&#xff09;工具-GIF中文网&#xff0c;只需要上…

【多维BFS】AB路线

P2038 - AB 路线 - ZJHUOJ 题意&#xff1a; 思路&#xff1a; 首先看是什么影响了决策&#xff0c;即能不能走这个格子 走到当前格子是第几步和格子的字符种类影响了能不能走该格子&#xff0c;因此需要多加一维k&#xff0c;表示走到当前字符种类的第k步 然后就可以去BFS…

Jvm对象创建-JVM(六)

上篇文章说了jvisualvm工具查看年轻代老年代gc过程。 Jvisualvm&内存模型剖析-JVM&#xff08;五&#xff09;https://blog.csdn.net/ke1ying/article/details/131524708 jvm创建对象 之前我们介绍了类的加载&#xff0c;这篇文章要介绍类的创建&#xff0c;过程主要是&a…

通俗易懂生成对抗网络GAN原理(二)

生成对抗网络&#xff08;Generative Adversarial Network, GAN&#xff09;的原理 学习李宏毅机器学习课程总结。 前面学习了GAN的直观的介绍&#xff0c;现在学习GAN的基本理论。现在我们来学习GAN背后的理论。 引言 假设x是一张图片&#xff08;一个高维向量&#xff09;…

「AntV」使用AntV X6实现流程编排设计器

通过对BPMN的深入学习&#xff0c;以及对业界成熟的流程编排设计器的调研&#xff0c;了解到要研发一个流程编排设计器&#xff0c;需要实现如下几个主要的功能&#xff1a; 支持创建各种流程图元素&#xff0c;包括任务&#xff08;活动&#xff09;、网关、事件等。支持绘制…

漏洞复现 || NginxWebUI 后台命令执行runCmd远程命令执行

免责声明 技术文章仅供参考&#xff0c;任何个人和组织使用网络应当遵守宪法法律&#xff0c;遵守公共秩序&#xff0c;尊重社会公德&#xff0c;不得利用网络从事危害国家安全、荣誉和利益&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此…

【Linux】yum git 的使用

yum 的使用 yum 源的查看 yum 源就是一个配置文件。 可以看到 yum 源的文件中包含有很多下载源的链接。我们使用 yum 命令进行安装的时候&#xff0c;就是通过这些链接去寻找下载源进行下载的。这些链接一般都是国内的镜像网址。 所谓的更新 yum 源&#xff0c;也就是将最新…

异步交互技术Ajax

Ajax 概念&#xff1a;Asynchronous JavaScr And XML 异步的JavaScript和XML作用&#xff1a; 数据交换&#xff1a;通过Ajax可以给服务器发送请求&#xff0c;并获取服务响应的数据异步交互&#xff1a;可以在不重新加载整个页面的情况下&#xff0c;与服务器交换数据并更新部…

mysqldump + python 定时备份数据库

场景&#xff1a; 需要对mysql进行定时备份&#xff0c;受限于硬盘空间的大小&#xff0c;需要对备份的数据需要定时清理 python代码实现&#xff1a; # -*- coding:UTF-8 -*- """ProjectName : HotelGo2DelonixPmxFileName : fix_missing_ratesDescripti…

第二章:L2JMobius学习 – 安装jdk17

L2JMobius是一套开源的 LineageII 的服务器端代码&#xff0c;使用Java语言编写。想要运行L2JMobius源程序的话&#xff0c;需要安装jdk17版本。首先&#xff0c;下载jdk17版本。 https://download.oracle.com/java/17/latest/jdk-17_windows-x64_bin.msi 当然&#xff0c;也…

华为OD机试真题 Java 实现【新员工座位安排系统】【2022Q4 100分】,附详细解题思路

目录 一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 一、题目描述 工位由序列F1,F2…Fn组成&#xff0c;Fi值为0、1或2。其中0代表空置&#xff0c;1代表有人&#xff0c;2代表障碍物。 1、某一空位的友好度为左右连续…

ModaHub魔搭社区:腾讯云发布的向量数据库有什么特点?技术架构是什么样的?

腾讯云发布的向量数据库有什么特点&#xff1f;技术架构是什么样的&#xff1f; Tencent Cloud VectorDB从性能上看&#xff0c;具备高性能、高可用、低成本等优势&#xff0c;比如单索引支持10亿级向量规模&#xff0c;最快支持毫秒级数据实时更新&#xff0c;适用于AI运算、…

【STM32】自举模式 和 程序下载(ST-Link和串口示例)

STM32官方网站STM32中文社区 如果遇到不清楚的概念&#xff0c;可以看之前的文章。 一、自举模式二、程序下载2.1 概述2.2 实操2.21 SWD 方式下载&#xff08;ST-Link&#xff09;2.22 串口下载 一、自举模式 STM32有一个特殊的功能&#xff0c;就是可以通过不同的方式启动程序…

maven 工程结构 和 archetype 模板

文章目录 一、maven 工程结构1.1. jar 工程结构1.2. war 工程结构 二、archetype 模板2.1. 推荐的 archetype 模板2.2. 自定义 archetype 模板2.2.1 自定义模板示例 有没有好奇过&#xff0c;通过 Maven 生命周期命令构建项目时&#xff0c;我们并没有指定源文件目录和编译后的…

5张图告诉你:同样是职场人,差距怎么这么大?

点赞 ➕ 评论 ➕ 收藏 养成三连好习惯 在职场中&#xff0c;我们常常会听到各种各样的抱怨&#xff1a; &#x1f469;‍⚖️‍ 小A: 凭什么别人每次述职绩效都是优秀呀&#xff1f; 感觉TA也没干啥呀! &#x1f575; 小B: 凭啥这个事情&#xff0c;领导指派TA去对接呀&#…

“设计模式”概述

设计模式代码样例&#xff1a;Git 设计原则 依赖倒置原则&#xff08;DIP&#xff09; 高层模块&#xff08;稳定&#xff09;不应依赖底层模块&#xff08;变化&#xff09;&#xff0c;二者都应依赖于抽象&#xff08;稳定&#xff09;抽象不应依赖于实现细节&#xff0c;…

YoloV5/YoloV7改进---注意力机制:线性上下文变换LCT,性能优于SE

目录 1.LCT介绍 2.LCT引入到yolov5 2.1 加入common.py中&#xff1a; 2.2 加入yolo.py中&#xff1a; 2.3 yolov5s_LCT.yaml 2.4 yolov5s_LCT1.yaml 3.YOLOv5/YOLOv7魔术师专栏介绍 1.LCT介绍 论文&#xff1a; https://arxiv.org/pdf/1909.03834v2.pdf AAAI 2020 摘要&a…

最长上升子序列 (从dp---->贪心)

最长上升子序列 思路&#xff1a; 题目要求找到最长上升的子序列&#xff0c;那么这个时候&#xff0c;我们可以假以第i个为结尾&#xff0c;那么此时以i为结尾的最大上升子序列是多少。但是这个时候&#xff0c;会发现&#xff0c;从第i个为结尾往前面找的话&#xff0c;是一…

20230705点亮STC32G实验箱9.6(STC32G12K128)开发板的跑马灯LED(深入了解)

08第六集&#xff1a;LED闪烁第六集&#xff1a;LED闪烁和花式点灯上和花式点灯上.mp4 09第六集&#xff1a;LED闪烁和花式点灯下.mp4 【大文哥学习32位8051】20230704【冲哥视频】第六集的晶振时钟的学习困惑 2023/7/5 17:36 delay_ms(3000); 刷机的时候如果使用11.0592M的Fos…