当前位置: 首页 > news >正文

docker swarm集群搭建,对比k8s

文章目录

  • Docker Swarm和Kubernetes 核心功能对比
  • 环境准备
  • 创建Swarm 主节点
  • 将节点添加到 Swarm

Docker Swarm和Kubernetes 核心功能对比

功能Docker SwarmKubernetes
服务部署Manager直接分配任务给Worker节点通过API Server、Scheduler等组件协调
高可用性自动重新调度容器(节点故障时)自动故障转移、自愈能力更强
滚动更新支持,逐步更新容器实例支持,更精细的控制(如金丝雀发布)
资源管理基于节点的资源分配精细的CPU/内存资源分配与限制
存储管理简单的本地存储卷PV/PVC等高级存储编排
安全机制TLS加密、用户认证更全面的安全策略和RBAC

环境准备

IP名称
10.10.10.11主节点 manager1
10.10.10.3工作节点1 worker1
10.10.10.4工作节点2 worker2
# 修改三台机器名称
hostnamectl set-hostname manage1
hostnamectl set-hostname worker1 
hostnamectl set-hostname worker2 
# 所有节点开放Swarm必需端口
firewall-cmd --permanent --add-port={2377/tcp,7946/tcp,7946/udp,4789/udp}
firewall-cmd --reload

三台服务器需安装docker

yum -y update# 安装基础依赖
yum install -y yum-utils device-mapper-persistent-data lvm2# 添加docker源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo创建yum缓存
yum makecache --timer安装docker
yum -y install docker-ce# 启动docker并设置开机自启
systemctl enable --now docker

创建Swarm 主节点

远程到10.10.10.11 manager1 ,创建一个新的swarm

# 在 manager1 机器上创建了一个 Swarm
docker swarm init --advertise-addr 10.10.10.11

--advertise-addr 标志将管理器节点配置为将其地址发布为 10.10.10.11。Swarm 中的其他节点必须能够通过此 IP 地址访问管理器。

在这里插入图片描述

输出包含将新节点加入 Swarm 的命令。节点将根据 --token 标志的值加入为管理器或工作节点

运行 docker info 以查看 Swarm 的当前状态
在这里插入图片描述
运行 docker node ls 命令以查看有关节点的信息
在这里插入图片描述

将节点添加到 Swarm

运行创建 Swarm教程步骤中docker swarm init输出生成的命令,以创建加入现有 Swarm 的工作节点。

如果没有记住命令,可以在manage1管理节点输入以下命令来检索工作节点的加入命令。

docker swarm join-token worker

在这里插入图片描述


将其他两个节点也提升为Manager节点

# 在Manager节点上执行
docker node promote <worker-node-id># 验证节点角色
docker node ls

在这里插入图片描述

[root@manage1 portainer]# cat docker-compose.yml 
services:portainer:#container_name: portainer#network_mode: bridgeimage: 6053537/portainer-ce:2.33.3# image: 6053537/portainer-ce   #汉化版。官方版为portainer/portainer-ce# image: hub-mirror.c.163.com/6053537/portainer-ce #推荐国内服务器或nas用,需要请用#注释上一行ports:- 9000:9000
#        - 8000:8000
#        - 9443:9443volumes:- ./portainer_data:/data- /var/run/docker.sock:/var/run/docker.sockrestart: unless-stopped[root@manage1 portainer]# docker stack deploy -c docker-compose.yml portainer
[root@manage1 portainer]# docker service ls
[root@manage1 portainer]# docker service logs portainer_portainer
http://www.dtcms.com/a/596682.html

相关文章:

  • 为什么网站需要维护需要网站建设
  • 25年05月架构甄选范文“论多模型数据源”,软考高级,系统架构设计师论文
  • 重庆做网站公司哪家比较好图片设计在线
  • Ubuntu 上使用 VSCode 调试 C++ (CMake 项目) 指南
  • opencv 学习: 07 使用迭代器 (iterator) 遍历像素
  • Two Sigma 面经分享|智商检测级别的面试,逻辑与细节缺一不可
  • 【STM32项目开源】STM32单片机物联网门禁控制系统
  • Ubuntu 系统部署 PostgreSQL 主从复制 + 流复制(Streaming Replication)完整操作指南
  • 福州企业网站推广定制wordpress国人模板
  • 场景落地绘就创新图景,人工智能迎来应用浪潮
  • 数据结构(20)
  • 线性代数 - 理解求解矩阵特征值的特征方程
  • Swift的逃逸闭包
  • ESP32基础-GPIO_LED进阶
  • AT指令连接onenet平台(mqtt协议)
  • 二分搜索中 `right = mid` 而非 `right = mid + 1` 的解释
  • 走进Linux的世界:进程优先级
  • 蛙蛙写作网站中国建设银行网站-个人客
  • jetson开机之前自启脚本sudo ifconfig 如何不需要输入密码
  • 环评登记表在哪个网站做php网站开发试题
  • K8S RD: Kubernetes核心技术之管理、高可用与配置详解
  • Rust:Trait 抽象接口 特征约束
  • 【Windows】tauri+rust运行打包工具链安装
  • 网站被人抄袭怎么办哪家做网站的公司
  • 在 Linux 上实现 Spring Boot 程序的自动启动与守护运行
  • 得物TiDB升级实践
  • uni-app微信小程序相机组件二次拍照白屏问题的排查与解决
  • 邯郸大名网站建设网站服务器类型查询
  • 远程在线诊疗|在线诊疗|基于java和小程序的在线诊疗系统小程序设计与实现(源码+数据库+文档)
  • Linux进程间通信(IPC)常用方法精要