生产环境swarm集群规划和管理
swarm集群角色
swarm集群中有两种角色,manager node和 worker ndoe。
manager的功能:
维护集群状态
任务调度
为swarm集群提供HTTP API
可以创建只有一个manager节点的swarm集群,但是swarm集群中如果一个manager节点都没有,则不能拥有worker节点。默认情况下,所有manage都是worker
worker node的功能:
Worker节点也是Docker Engine的实例,其唯一目的是执行容器。工作节点不参与Raft分布状态、做出调度决策或提供群模式HTTP API。
manager和worker角色转换
将manager转换成worker
docker node demote node_name
将worker转换成manager
docker node promote node_name
高可用性High Availability(HA)
所有生产环境必须是高可用的,下面就讨论一些技术和最佳实践以保证弹性的高可用的swarm集群环境
1、swarm manager HA
生产环境中至少要有三台swarm manager,这样,当其中一个manager挂掉时,其他manager会顶替成为manager。
一个三个manager节点的集群,允许最多挂掉一个manager
一个五个manager节点的集群,允许最多挂掉2个manager
一个N个manager节点的集群,允许最多挂掉
(N-1)/2
个managers.Docker官方建议一个swarm集群中最多不超过7个manager
2、单独的生产环境
有些公司会在同一个swarm集群部署不同的环境,包括生产环境和 开发环境,但是这样做是不被推荐的。 一般,独立的生产环境需要单独部署swarm 集群
3、跨云部署
swarm 集群可以跨云部署比如 AWS 和azure
4、要防止调度程序将任务放在多节点群集中的管理器节点上,请将管理器节点的可用性设置为Drain
生产环境swarm集群规划和管理的更多相关文章
- Swarm 集群并用 Portainer 管理
https://blog.csdn.net/zhrq95/article/details/79430284 使用docker-proxy代理服务(所有节点): docker pull docker.i ...
- 单例模式在生产环境jedis集群中的应用
背景:不久前单位上线一款应用,上了生产环境之后,没过多久,便吃掉了服务器所有的内存,最后导致网站服务挂了. 在解决了这一问题之后,我发现这其实是典型的一单例模式,现分享一下. 之前存在问题的老代码如下 ...
- 使用ubuntu charmed kubernetes 部署一套生产环境的集群
官方文档: https://ubuntu.com/kubernetes/docs 搭建一个基本的集群 集群ip规划 hostname ip ubuntu-1 10.0.0.10 juju-contro ...
- Docker Swarm 集群管理利器核心概念扫盲
Swarm 简介 Docker Swarm 是 Docker 官方推出的容器集群管理工具,基于 Go 语言实现.代码开源在:https://github.com/docker/swarm 使用它可以将 ...
- elasticsearch系列八:ES 集群管理(集群规划、集群搭建、集群管理)
一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个 ...
- 非节点主机通过内网远程管理docker swarm集群
这是今天使用 docker swarm 遇到的一个问题,终于在睡觉前解决了,在这篇随笔中记录一下. 在 docker swarm 集群的 manager 节点上用 docker cli 命令可以正常管 ...
- elasticsearch 集群管理(集群规划、集群搭建、集群管理)
一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个 ...
- ES 集群管理(集群规划、集群搭建、集群管理)
一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个 ...
- Docker Swarm 集群环境搭建及弹性服务部署
上一篇文章<Docker Swarm 集群管理利器核心概念扫盲>中我们把 Swarm 重要的概念性知识给大家讲解了一波,理论完事就该实战了,这篇文章带大家从零开始,搭建 Docker Sw ...
- shipyard 管理swarm集群(附etcd发现服务方法)
docker swarm集群 第一步:安装swarm集群 192.168.132.131----->(manger1,node) 192.168.132.132----->(manger2 ...
随机推荐
- 利用Navicat向MySQL数据库中批量插入多条记录的方法
利用Navicat向MySQL数据库中批量插入多条记录的方法: 1.执行包含多条记录的SQL脚本 当VALUES后面的值与表中的字段相比,缺少某些字段时,可采用指定相应的字段名的方式批量插入数据: I ...
- 即时通讯技术文集(第42期):直播技术合集(Part2) [共13篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第42 期. [-1-] 实时音频的混音在视频直播中的技术原理和实践总结 [链接] http:/ ...
- 不为人知的网络编程(十四):拔掉网线再插上,TCP连接还在吗?一文即懂!
本文由作者小林coding分享,来自公号"小林coding",有修订和改动. 1.引言 说到TCP协议,对于从事即时通讯/IM这方面应用的开发者们来说,再熟悉不过了.随着对TCP理 ...
- WxPython跨平台开发框架之前后端结合实现附件信息的上传及管理
在使用 wxPython 开发跨平台应用时,结合后端实现附件信息的上传和管理是一种常见需求.WxPython跨平台开发框架是前后端分离的框架,前端采用的是WxPython + aiohttp 来构建跨 ...
- Windows安全加固(三)
五.网络安全配置 协议安全 1.SYN攻击保护 指定触发SYN洪水攻击保护所必须超过的TCP连接请求数阈值为5:指定处于SYN_RCVD状态的TCP连接数的阈值为500,指定处于至少已发送一次重传的S ...
- Pulsar客户端如何控制内存使用
摘要 本文围绕一个常见的使用场景深入分析在高吞吐场景下,使用Pulsar客户端收发消息可能会遇到的若干问题.并以此为切入点,梳理一下Pulsar客户端在内存控制上所做的优化改进. 使用场景 假设这样一 ...
- Kotlin:【继承】:继承、函数重载、类型检测、as类型转换、智能类型转换、Kotlin层次
- ADALM-Pluto修改芯片类型为AD9364模式
ADALM-Pluto 使用芯片AD9363(325 MHz - 3.8 GHz),但可切换至 AD9364(70 MHz - 6 GHz)模式,此篇随笔将采用串口调试的方式将 Pluto 设置为 A ...
- IDEA中Maven项目修改JSP后通过配置Tomcat实现立即生效
参考: IntelliJ IDEA 的 Project Structure 窗口中的 Artifacts 勾选 Include in project build IDEA中Facets和Artifac ...
- AI之Ollama
介绍 什么是llama LLaMA(Large Language Model Meta AI)是Meta开发的大规模预训练语言模型,基于Transformer架构,具有强大的自然语言处理能力.它在文本 ...