阿里云上搭建Docker Swarm模式集群最佳实践

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: Docker技术体系和生态在2016年得到飞速发展、成熟,在2016中国容器技术调研报告中也发现了国内绝大部分用户都在关注Docker,80%的用户都会考虑使用容器技术。本文将讲解如何利用资源编排快速搭建Docker Swarm模式集群。
Docker技术体系和生态在2016年得到飞速发展、成熟,在2016中国容器技术调研报告中也发现了国内绝大部分用户都在关注Docker,80%的用户都会考虑使用容器技术。那如何能快速的在阿里云上搭建Docker集群呢?本文将讲解如何利用资源编排快速搭建Docker Swarm 模式集群,本例子中将安装Docker1.12,在Docker1.12中提供了Swarm模式,将一组Docker Engine构成一个集群统一管理、调度。

集群架构图如下:
a438ff486dc4e5ac7500e46ea52c57b37414b048


如果已有VPC网络和NAT网关,可以跳过第一步,直接到第二步。



第一步:创建VPC网络,以及NAT网关。创建NAT网关有多种方法,您可以根据实际业务场景搭建自己的网关,本文使用ECS绑定EIP,并且增加自定义路由的方式搭建的SNAT网关。VPC即将推出一款企业级的VPC公网网关,详细介绍请参见 这里。如果您已经有VPC网络及网关,可以跳过此步。

运行官方提供的模板 搭建SNAT网关,选择所在的Region后,输入相应的参数。

c7c29a298e00034647e4a8b60c4e51fae593737f


此步会创建上图中弹性公网IP、VPC、路由器、自定义路由、交换机VSwitch、安全组、SNAT Gateway。


创建资源后点击“进入事件列表”可以查看资源创建过程,待资源栈创建完成后,可以通过"概览"的"输出"中查看到VPCID、VSwitchID等信息,在第二步搭建Docker集群中会使用到。

123e0d6ffdb31ec5dd28206493f10898e314a720



第二步:搭建Docker集群,运行官方提供的模板 一键创建Docker Swarm模式集群,选择与VPC所在相同的Region,输入相应的参数,需要注意的几点:
  1.   VpcId与VSwitchId可以通过第一步中的输出看到,或者添写已有的VpcId、VSwitchId。
  2.  ECSZoneID与VSwitch的ZoneID保持一致。
  3.  操作系统的镜像要选用官网64位镜像,建议Ubuntu,如果是其他操作系统,模板中的UserData部分需要修改相应的命令。
  4.  填写Master的数量、Worker的数量。此模板中会自动创建一个Master,所以如果Master的数量填2,Workder的数量填3的话,最后创建的集群为3个主节点,3个worker节点。
d2f099a35de946a7bca3a3de80474f6c6212dffd



第三步:远程登录到Docker Master那台机器,运行docker node ls,可以看到共6个节点。

d158d20b61a210b44a30680a98536fed2d4e1074

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
基于阿里云,构建一个企业web应用上云经典架构,让IT从业者体验企业级架构的实战训练。
相关文章
|
14天前
|
存储 监控 安全
【专栏】探讨Docker Compose的核心概念、使用方法及最佳实践,助你轻松驾驭容器编排的世界
【4月更文挑战第27天】Docker Compose是款轻量级容器编排工具,通过YAML文件统一管理多容器应用。本文分三部分深入讨论其核心概念(服务、网络、卷和配置)、使用方法及最佳实践。从快速入门到高级特性,包括环境隔离、CI/CD集成、资源管理和安全措施。通过案例分析展示如何构建多服务应用,助力高效容器编排与管理。
|
Kubernetes Docker Python
《Docker 简易速速上手小册》第10章 朝着 Docker Swarm 和 Kubernetes 迈进(2024 最新版)
《Docker 简易速速上手小册》第10章 朝着 Docker Swarm 和 Kubernetes 迈进(2024 最新版)
35 0
|
14天前
|
存储 Kubernetes C++
【专栏】Kubernetes VS Docker Swarm了解两者特点,助力选取合适容器编排工具
【4月更文挑战第27天】对比Kubernetes和Docker Swarm:K8s在可扩展性和自动化方面出色,有强大社区支持;Swarm以简易用著称,适合初学者。选择取决于项目需求、团队技能和预期收益。高度复杂项目推荐Kubernetes,快速上手小项目则选Docker Swarm。了解两者特点,助力选取合适容器编排工具。
|
1天前
|
监控 持续交付 Docker
使用Docker进行微服务架构的最佳实践
【5月更文挑战第10天】本文探讨了使用Docker实施微服务架构的最佳实践。首先,理解微服务架构是拆分小型独立服务的模式,借助Docker实现快速部署、高可移植性和环境一致性。Docker的优势在于服务扩展、容器编排、自动化构建与部署。最佳实践包括:定义清晰服务边界,使用Dockerfile和Docker Compose自动化构建,利用Docker Swarm或Kubernetes编排,实施服务发现和负载均衡,监控与日志记录,以及持续集成和持续部署。Docker虽重要,但需与其他技术结合以确保系统整体稳定性。
|
3天前
|
Java Linux 数据安全/隐私保护
Docker自定义JDK镜像并拉取至阿里云镜像仓库全攻略
Docker自定义JDK镜像并拉取至阿里云镜像仓库全攻略
|
3天前
|
监控 Docker 容器
【Docker 专栏】Docker Swarm 集群的扩展与缩容策略
【5月更文挑战第8天】本文探讨了Docker Swarm集群的扩展与缩容策略。集群扩展可提高性能、增强可用性和适应业务发展,可通过手动或自动方式实现。缩容则需考虑业务需求、资源利用率和节点状态,可手动或按策略执行。关键步骤包括添加/移除节点及任务迁移。注意数据同步、监控评估和测试验证。案例分析和总结强调了灵活管理对保持集群最佳状态的重要性。
【Docker 专栏】Docker Swarm 集群的扩展与缩容策略
|
3天前
|
Kubernetes 负载均衡 调度
【Docker 专栏】Docker Swarm 与 Kubernetes 的选型指南
【5月更文挑战第8天】Docker Swarm 和 Kubernetes 是两大容器编排工具,各有优势。Docker Swarm 简单易用,适合小到中型规模,与 Docker 生态系统集成紧密;而 Kubernetes 功能强大,扩展性好,适用于大规模、复杂场景。选择时需考虑团队技术能力、应用需求及现有技术栈。Kubernetes 学习曲线较陡,Docker Swarm 则较平缓。
【Docker 专栏】Docker Swarm 与 Kubernetes 的选型指南
|
4天前
|
负载均衡 安全 数据安全/隐私保护
【Docker专栏】Docker Swarm集群管理详解
【5月更文挑战第7天】Docker Swarm是Docker的原生集群管理工具,用于将多个Docker主机整合为虚拟主机。其主要特点是服务发现、负载均衡、自动恢复和扩展性。Swarm由Manager(负责管理与控制)和Worker(运行服务)节点组成。创建Swarm集群涉及初始化、添加Worker节点及查看集群状态。服务部署包括创建、更新、扩展和缩减。Swarm还支持滚动更新、健康检查、网络管理和安全加密。本文概述了Swarm的基本功能,鼓励读者进一步探索其高级特性。
【Docker专栏】Docker Swarm集群管理详解
|
4天前
|
监控 安全 数据库
【Docker专栏】Docker容器化应用的最佳实践
【5月更文挑战第7天】本文介绍了 Docker 容器化应用的关键最佳实践,包括使用官方基础镜像、保持镜像精简、以非 root 用户运行容器、安全扫描、编写高效 Dockerfile、环境隔离、使用数据卷、选择合适网络模式、设置资源限制、使用版本标签、容器编排以及文档和自动化部署。遵循这些实践可提升效率和安全性,同时要注意随着技术发展不断更新知识。
【Docker专栏】Docker容器化应用的最佳实践
|
13天前
|
缓存 运维 Serverless
Serverless 应用引擎产品使用之在阿里云函数计算中使用Docker进行部署函数如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
26 0