利用ansible的角色快速批量一键部署基础docker环境

简介: 利用ansible的角色快速批量一键部署基础docker环境

ansible是一个目前来说比较普及的一个自动化运维工具了。该工具入门容易,能够使用好比较困难。适用场景通常为需要大批量操作的同一类动作通过ansible简化,也就是说ansible是有服务器管理功能的一个强大工具。

随着微服务这样的新概念兴起,docker作为引领微服务的领头羊,自然是热度大增,因此,我们很多时候可能都需要有一个基础的docker环境,在很多服务器上同时安装部署docker环境还是比较麻烦的,ansible刚好能够解决这样的困扰。

链接:https://pan.baidu.com/s/1l_6A4iqMMDxl5ZlDOmhikw

提取码:ansi  

1.1Ansible介绍


Ansible 是一种IT自动化工具。它可以配置系统,部署软件以及协调更高级的IT任务,例如持续部署,滚动更新。Ansible 适用于管理企业IT基础设施,从具有少数主机的小规模到数千个实例的企业环境。Ansible 也是一种简单的自动化语言,可以完美地描述IT应用程序基础结构。

具备以下三个特点:

- 简单:减少学习成本  

- 强大:协调应用程序生命周期

- 无代理:可预测,可靠和安全

- Inventory:Ansible管理的主机信息,包括IP地址、SSH端口、账号、密码等

- Modules:任务均有模块完成,也可以自定义模块,例如经常用的脚本。

- Plugins:使用插件增加Ansible核心功能,自身提供了很多插件,也可以自定义插件。例如connection插件,用于连接目标主机。

- Playbooks:“剧本”,模块化定义一系列任务,供外部统一调用。Ansible核心功能。

1.2安装环境介绍


软件环境

image.png

服务器整体规划:

image.png

1.3ansible部署docker环境的说明


1.
本安装包使用前需要先安装ansible离线包,
名称为ansible_offline.tar.gz ,
此文件解压后,执行命令:rpm -ivh * 即可安装完成ansible。
如有安装失败的情况,通常是由于缺少依赖的原因。
rpm -ivh ansible-2.9.18-1.el7.noarch.rpm
通过以上命令查看缺少的依赖并通过yum补充完毕即可,
在次执行rpm -ivh ansible-2.9.18-1.el7.noarch.rpm直到成功为止。
2.
解压ansible-devop-docker.tar.gz此tar包后,进入解压后的目录,
部署命令为:ansible-playbook -i hosts multi-deploy-docker.yaml
执行部署命令前,需要先修改 hosts文件,
将需要部署docker的服务器ip写入hosts 和roles/docker/files/daemon.json
这个json文件,或者写入你的私有仓库地址,或者将中文那行删除。
特别注意一点,ansible需要配置ssh免密,具体方法不在此赘述,百度即可。
docker 二进制文件存放路径请写在在group_vars目录下的all.yml 文件内,
如果有需要更改存放路径的话。本例是放置在root目录下。
目录
相关文章
|
3月前
|
数据采集 存储 Docker
深入理解Docker:为你的爬虫项目提供隔离环境
本教程介绍如何使用Docker构建隔离环境,运行Python爬虫项目,采集小红书视频页面的简介和评论。主要内容包括: 1. **Docker隔离环境**:通过Docker容器化爬虫,确保环境独立、易于部署。 2. **代理IP技术**:利用亿牛云爬虫代理突破反爬限制。 3. **Cookie与User-Agent设置**:伪装请求头,模拟真实用户访问。 4. **多线程采集**:提高数据采集效率。 前置知识要求:Python基础、Docker基本操作及HTML解析(可选)。教程还涵盖常见错误解决方法和延伸练习,帮助你优化爬虫代码并避免陷阱。
115 7
深入理解Docker:为你的爬虫项目提供隔离环境
|
17天前
|
算法 Shell 定位技术
在Docker环境下搭建openvslam/orb_slam3的步骤和问题总结
总的来说,搭建openvslam或orb_slam3的过程需要一些耐心和技术知识,但只要你遵循上述步骤,并且在遇到问题时进行适当的调试,你应该能够成功搭建并运行openvslam或orb_slam3。
55 11
|
1月前
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
111 28
|
3月前
|
消息中间件 监控 RocketMQ
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
430 91
|
1月前
|
Ubuntu 安全 Docker
Ubuntu下部署及操作Docker技巧
以上就是在Ubuntu下部署及操作Docker的具体步骤。但这只是冰山一角,Docker的魅力远不仅如此。你可以将其视为存放各种工具的小箱子,随时随地取用,极大地提升工作效率。你也可以私人订制,适应不同的开发环境,就像一个拥有各种口味冰淇淋的冰箱,满足各种各样的需求。好了,现在你已经掌握了基本的Docker运用技巧,快去尝试使用吧!记住,沉浸在探索中,你会找到无尽的乐趣和满满的收获。
102 23
|
3月前
|
存储 NoSQL Redis
Docker 部署 Redis
在使用 Docker 部署 Redis 时,为实现数据持久化,需正确挂载容器内的数据目录到宿主机。推荐命令如下: ``` docker run -d --name redis -v /mnt/data/redis:/data -p 6379:6379 redis ``` 该命令将宿主机的 `/mnt/data/redis` 目录挂载到容器的 `/data` 目录,确保 Redis 数据持久化。此路径更通用,适合大多数场景。避免使用不匹配的挂载路径,如 `/var/lib/redis` 或 `/mnt/data/redis` 到非默认目录,以防止数据无法正确持久化。
|
4月前
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
2月前
|
安全 API 算法框架/工具
大模型文件Docker镜像化部署技术详解
大模型文件Docker镜像化部署技术详解
268 2
|
2月前
|
JSON 运维 Ubuntu
在Docker上部署Ollama+AnythingLLM完成本地LLM Agent部署
通过以上步骤,您可以成功在Docker上部署Ollama和AnythingLLM,实现本地LLM Agent的功能。在部署过程中,确保环境和配置正确,以避免不必要的问题。希望本文能够帮助您顺利完成部署,并在本地环境中高效地使用LLM模型。
785 8
|
3月前
|
人工智能 文字识别 安全
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
Stirling-PDF 是一款基于 Docker 的本地化 PDF 编辑工具,支持 50 多种 PDF 操作,包括合并、拆分、转换、压缩等,同时提供多语言支持和企业级功能,满足个人和企业用户的多样化需求。
192 6
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具