docker swarm安装指导

news2024/11/18 11:17:12

      SWARM部署DOCKER集群

1. 简介............................................................................................................................ 3

2. 部署准备..................................................................................................................... 3

2.1. 系统组网图........................................................................................................ 3

2.2. 系统业务逻辑流程.............................................................................................. 4

2.3. 部署机器准备..................................................................................................... 4

3. 部署步骤..................................................................................................................... 4

3.1. DOCKER ENGINE的安装(本文中使用root用户进行安装).................................. 4

3.2. 设置网络使DOCKER ENGINE支持远程访问,以下操作每个DOCKER SERVER都要做 4

3.3. 配置swarm manager........................................................................................... 4

3.4. 配置swarm node................................................................................................ 5

3.5. 安装docker register, 登录到docker_machine服务器做如下操作.......................... 5

3.6. 安装SHIPYARD,配置DOCKER SWARM MANAGE,登录到docker manager服务器做如下操作(通过配置文件来实现节点发现功能) 5

4. 验证............................................................................................................................ 5

5. 管理相关..................................................................................................................... 6

5.1. SWARM 管理命令介绍........................................................................................ 6

1.简介

      本文主要介绍如何用利用docker swarm+shipyard来实现一个docker集群的部署,该方案适用于测试和开发环境,要求docker engine版本>=1.12.0。Docker Engine在1.12.0版本后自带了Docker SWARM

      (注:后文中红色部分的字体请根据实际情况修改)

2.部署准备 

2.1.系统组网图

     

模块

作用

SWARM MANAGE

提供API接口将SHIPYARD发过来的请求,转发到对应的DOCKER SERVER,并返回结果给SHIPYARD

DOCKER ENGINE

提供 docker daemon进程来处理DOCKER SWARM MANAGE发过来的请求,并且返回结果

SWARM NODE

SWARM的WORKER节点主要用于为业务容器提供运行环境

2.2.系统业务逻辑流程

   

2.3. 部署机器准备

     本文中部署使用两台机器作为事例,如果要多台机器部署以此类推即可,下表格中的IP请根据具体情况修改(注:请保证下面的机器能访问外网,并且能使用DNS服务)

    

机器名

IP

安装模块

操作系统

Docker_1

1.1.1.1

DOCKER ENGINE

CENTOS7

Docker_2

1.1.1.2

DOCKER ENGINE

DOCKER REGISTRY

CENTOS7

Docker_3

1.1.1.3

DOCKER ENGINE

CENTOS7

  3.部署步骤

3.1.DOCKER ENGINE的安装(本文中使用root用户进行安装)

     参考:Install Docker Engine | Docker Docs,根据操作系统选择对应的安装方法

3.2.设置网络使DOCKER ENGINE支持远程访问,以下操作每个DOCKER SERVER都要做

      1登录DOCKER服务器,执行

         cd /usr/lib/systemd/system

      2编辑docker.service文件,找到如下行做如下修改,并保存

         修改前:ExecStart=/usr/bin/dockerd

         修改后:ExecStart=/usr/bin/dockerd --insecure-registry [docker_registry_addr]

      3在防火墙中做如下配置,打开对2377端口的限制和对docker0端口的限制

         firewall-cmd --permanent --zone=public --add-port=2377/tcp

         firewall-cmd --permanent --zone=trusted --add-interface=docker0

         firewall-cmd --reload

​​​​​​​3.3.配置swarm manager

      登录到swarm manage的机器上,执行

               docker swarm init --advertise-addr [swarm_manager_ip]
           执行后会得到类似如下信息
             Swarm initialized: current node (dxn1zf6l61qsb1josjja83ngz) is now a manager.
 
             To add a worker to this swarm, run the following command:
               docker swarm join \
               --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
               192.168.99.100:2377
 
            To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

​​​​​​​3.4.配置swarm node

      登录到docker-machine的机器上,执行上一步喜欢建SWARM MANAGER时候提示的加入NODE的语句

               docker swarm join \
               --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c \
               192.168.99.100:2377
            如果记不到语句了可以使用如下命令来查看加入语句:
               docker swarm join-token worker

       

​​​​​​​3.5.安装docker registry, 登录到docker_machine服务器做如下操作

      1 在要安装registry的机器上的/tmp/registry目录下增加配置文件config.yml内容如下(请严格按照格式缩进):

log:

  fields:

    service: registry

storage:

  cache:

    blobdescriptor: inmemory

  filesystem:

    rootdirectory: /var/lib/registry

  delete:

    enabled: true

http:

  addr: :5000

  headers:

    X-Content-Type-Options: [nosniff]

health:

  storagedriver:

    enabled: true

    interval: 10s

    threshold: 3     

      2 进入docker环境,输入如下命令

              docker run -d -p 5000:5000 --restart=always --name registry -v /tmp/registry/config.yml:/etc/docker/registry/config.yml registry:2

4.管理相关

​​​​​​​4.1.SWARM 管理命令介绍

      (参考URL:https://docs.docker.com/engine/swarm/swarm-tutorial/)

      docker swarm:  用于创建加入swarm node和swarm manager

      docker info:    查看当前SWARM集群信息

      docker node ls:查看当前SWARM 节点信息

      docker service:用于操作当前swarm中的service

           

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

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

相关文章

15040-2021 工作测光标准灯泡 学习记录

声明 本文是学习GB-T 15040-2021 工作测光标准灯泡.pdf而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本文件规定了工作测光标准灯(下文在不会引起误解时简称为"标准灯”或“灯")的分类、 一般要求、 技术要求和试验方法&#xff…

详解链表oJ<反转链表,链表的中间节点及链表的回文>

hello,大家好,这里是Dark FlameMaster,今天和大家分享的是有关数据结构链表的几道题目,链表的中间节点,反转链表及判断链表是否为回文结构,放在一起讲解会印象更加深刻。 文章目录 一,链表的中间节点二&…

C#,数值计算——数据建模FGauss的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class FGauss : MultiFuncd { public void funk(double x, double[] a, ref double y, double[] dyda) { int na a.Length; y 0.0; for (int …

吃鸡达人专享!提高战斗力,分享干货,查询装备皮肤,保护账号安全!

大家好!作为专业吃鸡行家,我将为您带来一些热门话题和实用内容,帮助您提升游戏战斗力,分享顶级游戏作战干货,并提供便捷的作图工具和查询服务。让我们一起享受吃鸡的乐趣! 首先,我要推荐一款绝地…

CleanMyMacX 永久版下载激活码破解版

CleanMyMac X最新破解版V4.9.2是一款出色的Mac 系统垃圾清理程序。 该软件具有强大的垃圾清理功能,可以释放数 GB 的空间,让您的 Mac 焕然一新。 带有激活码的完整破解版 CleanmyMac 可加速您的 Mac 设备。 此外,cleanmymac还能帮助您从 Mac…

2023最新ICP备案查询系统源码 附教程 Thinkphp框架

2023最新ICP备案查询系统源码 附教程 thinkphp框架 本系统支持网址备案,小程序备案,APP备案查询,快应用备案查询 优势: 响应速度快,没有延迟,没有缓存,数据与官方同步 源码下载:ht…

Puppeteer基础知识(一)

Puppeteer基础知识(一) Puppeteer基础知识(一)一、简介二、其他一些自动化测试工具三、Puppeteer常用命令四、常见问题解决: 一、简介 Puppeteer 是一个强大而灵活的工具,可以用于网页爬虫、自动化测试、性…

大数据Doris(六):编译 Doris遇到的问题

文章目录 编译 Doris遇到的问题 一、js_generator.cc:(.text+0xfc3c): undefined reference to `well_known_types_js’

华为云新开源低代码引擎 TinyEngine

在当今数字化飞速发展的时代,企业对高效、敏捷的应用程序需求日益旺盛。为了满足这一需求,越来越多的低代码开发平台开始涌现。这些平台通过提供简单易用的开发工具和优化后的开发流程,帮助开发者快速构建高质量、可重复使用的应用程序&#…

Suricata + Wireshark离线流量日志分析

Suricata 环境搭建:基于Ubuntu坏境下的Suricata坏境搭建_奈何@_@的博客-CSDN博客 suricata:监控日志 wireshark:监控流量 同时使用需要降噪,因为规则有许多重叠 题目及要求我打包上传了,有需要的同学自…

十一工具箱流量主小程序源码

无授权,去过滤机制版本 看到网上发布的都是要授权的 朋友叫我把他去授权,能用就行 就把过滤去了 这样就不用授权 可以免费使用 白嫖党专属 一切接口可用,无需担心不能用 授权者不关站一直可以用 源码下载:https://download.csdn.…

彻底理解浏览器cookie策略

cookie介绍 为什么存在cookie? (1)cookie存在的原因 因为http请求是无状态的,同一个用户从浏览器向A服务器发送两次请求,A服务器无法判断这两次请求是否是同一个用户。所以,浏览器提供了客户端携带cooki…

threejs 透明贴图,模型透明,白边

问题 使用Threejs加载模型时,模型出现了上面的问题。模型边缘部分白边,或者模型出现透明问题。 原因 出现这种问题是模型制作时使用了透明贴图。threejs无法直接处理贴图。 解决 场景一 模型有多个贴图时(一个透贴和其他贴图&#xff0…

互联网Java工程师面试题·Redis篇·第一弹

目录 1、什么是 Redis? 2、Redis 优势 3、Redis 与其他 key-value 存储有什么不同? 4、Redis 的数据类型? 5、使用 Redis 有哪些好处? 6、Redis 相比 Memcached 有哪些优势? 7、Memcache 与 Redis 的区别都有哪些&#xf…

MyBatisPlus(十四)主键策略

说明 MyBatis Plus 集成了多种主键策略,帮助用户快速生成主键。 雪花算法ID(默认策略)(推荐)UUID自增ID用户输入ID(必须用户每次插入数据时,手动传入ID) 雪花算法ID:I…

ModelScope-agent体验

7月在魔搭社区hackathon的时候就了解到了魔搭在做的这件事,前段时间开源了,去体验一 本文写的很浅,没有做深入尝试 一.在线体验 体验地址:https://modelscope.cn/studios/damo/ModelScopeGPT/summary 效果还是挺惊艳的 二.部署…

认识File 类和InputStream, OutputStream

Java中通过file类来对一个文件(包括目录)进行抽象的描述。并且有File类对象,并不代表真实存在该文件。认识File类,就先了解File类的属性,构造方法,方法。 属性: 修饰符及类型 属性 …

最全最详细最高质量 java 面试题

“ 有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top ” 首发博客地址 面试题手册 面试题手册 学习建议 最全最详细最高质量 java 面试题,建议不要死记硬背,每天过一下&#xf…

el-tabs(标签栏)的入门学习

el-tabs(标签栏)的入门学习 适用场景 与导航栏相似,项目中常见的是点击某个导航栏,主页面(el-main)模块的最上方会显示我们的标签栏集合,点击不同的导航栏,标签栏会在不断追加,若点击到标签集合…

micro-ROS中对消息的内存管理

文章目录 1.背景2.答案2.1.基本类型及其数组,不需要2.1.序列类型(复合类型、复合序列类型),需要 3.内存申请方法3.1.手动申请(Manual allocation)3.1.工具辅助(micro-ROS utilities)…