Service的分配原則

  • 預設分散至多個nodes上
  • 使用率較低的node優先配置
  • 使用者可自行定義此分配模式

Service分配的3種方式

  • Service Constraints (服务约束)

   参考:https://www.cnblogs.com/caoweixiong/p/12382282.html

  • Service Modes(服务模式)

    • 默认是replicated(副本),例如replica=10,docker swarm會執行10個container並盡可能分散到各個node上,但不能確保每個node都會配置到該task

    • Global(全局)是replica的相反,能確保每个节点都有一个任务

    • Global適用於host agents(monitoring, backup, proxy…)

    • 目前僅限於 service create 時設定

docker service create --mode=global portiner
  • Placement Preferences(安置偏好)

    • 目前只有spread這個策略

      • spread tasks among all values of a Label
      • 適用availablility zones, datacenters, racks, subnets > things where you want to spread workload out amongst various type of infrastructure
    • 可用於service create/update

      示例:Lable all nodes with availability zone

docker node update --label-add=azone=1 node1
docker node update --label-add=azone=2 node2
docker node update --label-add=azone=3 node3

根據這個Label加以分散:

docker service create --placement-pref spread=node.labels.azone --replicas 3 masl

 

Docker Swarm(三)Service(服务)分配策略的更多相关文章

  1. docker swarm 搭建与服务更新

    一,docker swarm 是什么 Docker Swarm.Docker Machine与Docker Compose号称Docker三剑客Docker Swarm 和 Docker Compos ...

  2. docker swarm overlay stack 服务部署记录

    项目xxx(后端),xxx-ui前端(前后端分离的项目) 依赖mysql,elasticsearch.分别制作了四个镜像来做这件事.希望可以制作跨主机的部署,使用了swarm,以下是学习记录. 参考 ...

  3. Docker swarm 获取service的container信息

    我们可以通过docker service create创建服务,例如: docker service create --name mysql mysql:latest 服务创建好后,如何来获取该ser ...

  4. 33. docker swarm 集群服务通信 之 RoutingMesh - Ingress 网络

    1.作用 当在 任何 一个 swarm 节点去访问 端口服务的时候 会通过 本节点 的 IPVS ( ip virtual service ) 到 真正的 swarm 节点上 当访问 docker h ...

  5. 32. docker swarm 集群服务通信 之 RoutingMesh - internal 网络

    1. 两个 service 是如何通信的 通过内置的 DNS 服务发现的功能  相互通信的 2. 创建一个 overlay 的 网络 docker network create -d overlay ...

  6. 31. docker swarm 通过 service 部署 wordpress

    1. 创建 一个 overlay 的网络 driver docker network create -d overlay demo 查看网络列表 docker network ls 2. 创建mysq ...

  7. 基于 Consul 的 Docker Swarm 服务发现

    Docker 是一种新型的虚拟化技术,它的目标在于实现轻量级操作系统的虚拟化.相比传统的虚拟化方案,Docker 虚拟化技术有一些很明显的优势:启动容器的速度明显快于传统虚拟化技术,同时创建一台虚拟机 ...

  8. Docker Swarm 服务编排之命令

    一.简介 Docker有个编排工具docker-compose,可以将组成某个应该的多个docker容器编排在一起,同时管理.同样在Swarm集群中,可以使用docker stack 将一组相关联的服 ...

  9. [docker swarm] 从单容器走向负载均衡部署

    背景 之前写过<<docker-compose真香>> 和<docker-compose.docker stack前世今生>两篇博客, 回顾一下思路: ① dock ...

  10. Docker Swarm从部署到基本操作

    关于Docker Swarm Docker Swarm由两部分组成: Docker集群:将一个或多个Docker节点组织起来,用户就能以集群的方式进行管理: 应用编排:有一套API用来部署和管理容器: ...

随机推荐

  1. [状压DP]车

    车 车 车 题目描述 在 n ∗ n n*n n∗n( n ≤ 20 n≤20 n≤20)的方格棋盘上放置 n n n个车(可以攻击所在行.列),有些格子不能放,求使它们不能互相攻击的方案总数. 输入 ...

  2. 再谈synchronized锁升级

    在图文详解Java对象内存布局这篇文章中,在研究对象头时我们了解了synchronized锁升级的过程,由于篇幅有限,对锁升级的过程介绍的比较简略,本文在上一篇的基础上,来详细研究一下锁升级的过程以及 ...

  3. UnitThreeSummary

    目录 一.JML的梳理与总结 二.SMT Solver的部署与验证 三.JMLUnitNG的部署与测试 四.作业的设计与总结 第一次作业 第二次作业 第三次作业 五.BUG 六.总结与反思 一.JML ...

  4. JavaScript深入理解-Promise以及常用方法详解

    Promise Promise 介绍 Promise 对象表示一个异步操作的最终完成(或失败)及其结果值. 状态: 一个 promise 必然处于以下几种状态之一 待定:初始状态(pending) 已 ...

  5. 字节、位、bit、byte、KB、B、字符之间的关系

    一.bit 位bit就是位,也叫比特位,是计算机表示数据最小的单位,例如 1b ,2b,3b..... 说白了就是0或者1:计算机内存中的存储都是01这两个东西. 二.byte 字节byte就是字节 ...

  6. 【随笔】C++类静态成员变量初始化引发的惨痛教训

    事情是这样的,我在某个类中声明了一个静态的map成员, 文件名暂且称之为 xxx.h 然后在 xxx.cc 中全局定义了这个东西,静态成员在类里面只是声明,需要在外边被定义才有内存 然后又在main. ...

  7. VirtualBox虚拟机读取U盘

    1 概述 使用VirtualBox虚拟机(系统Win10)读取宿主机(系统Manjaro)中的U盘. 2 安装扩展 戳这里下载对应版本的一个叫Oracle_VM_VirtualBox_Extensio ...

  8. NTP时间同步服务

    NTP时间服务器 作用:ntp主要是用于对计算机的时间同步管理操作. 时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响. 部署安装NTP ...

  9. SpringBoot-容器启动的时候执行一些内容

    SpringBoot的ApplicationRunner.CommandLineRunner 场景: 在开发中可能会有这样的情景.需要在容器启动的时候执行一些内容.比如读取配置文件,数据库连接之类的. ...

  10. 趁五一撸个纯Flutter版的心情日记App

    前言 最近真的是太忙了,只能趁着五一期间把之前Android版的心情日记App移植到Flutter平台,并且已经上架华为应用市场以及苹果App Store. 整体框架沿用了两个星期,用Flutter撸 ...