K8S系列文章之 离线安装自动化工具Ansible

参考 文档 离线安装 Ansible - DevOps - dbaselife

一、Ansible简介

Ansible是一款开源的IT配置管理工具,常被IT界的小伙伴们用于自动化的场景,多用在服务部署、配置管理方面。配置文件采用最常见的yaml格式,学习起来也是比较容易,Ansible并不需要也没有agent,只有一个控制端。该工具使用简单但功能非常强大,可以解决众多工作中繁琐的服务安装、配置等问题。

二、Ansible的主要功能

  • 批量执行远程命令:可以对任意多台主机同时进行命令的执行。
  • 批量配置软件服务:可以进行自动化的方式部署、配置及管理服务。
  • 编排高级的IT任务:Ansible 可以使用yaml来编写一套完整的Playbook,用来部署维护一套完全的基础架构。

三、Ansible的相关特性

Ansible是基于每个模块进行工作,自身并没有批量部署的能力,ansible自身只是提供了一种框架。

  • Ansible由Python语言开发,没有agent,不需要在被管理节点安装任何客户端;
  • 模块化:基于模块工作,只需调用特定的模块来完成特定工作;
  • 基于SSH协议;
  • 三大关键组成模块:Paramiko, PyYAML, Jinja2;
  • 幂等性:一个任务执行1遍和执行n遍效果一样,不因重复执行带来意外情况;
  • 可以使用命令行ad-hoc方式来执行批量任务,也可以使用yaml格式的文件来定制Playbook剧本实现批量任务;
  • 可以使用Role组织批量任务

四、Ansible的优点

  • 容易学习且轻量:无需在被控制节点安装agent,做批量操作时只需要在操作机操作即可(前提:需要配置好免密登录);
  • 操作灵活:具有众多的模块,可使用命令行ad-hoc方式或者Playbook剧本的方式来实现批量任务执行;
  • 可移植性高:可以基于yaml文件编写一套Playbook,只要做好逻辑判断,就可以在多种操作系统上拿来即用;
  • 幂等性:一个任务执行1遍和执行n遍效果一样,不因重复执行带来意外情况;
  • 支持普通用户sudo提权。

五、Ansible的架构

Ansible由以下几个核心工具组成:

  • INVENTORY:Ansible管理主机的清单/etc/ansible/hosts;
  • MODULES:Ansible执行命令的功能模块,多数为内置核心模块,也可自定义;
  • PLUGINS:模块功能的补充,如连接类型插件、循环插件、变量插件、过滤插件等;
  • APl:供第三方程序调用的应用程序编程接口。

六、Ansible离线安装

在生产网络中正常情况下是无法连接Internet的,那么我们要安装软件只能在可以上互联网的主机上下载所需要的软件,然后拷贝到无Internet的主机上进行安装。

步骤一、找一台能连接互联网并且与内网服务器系统一致的服务器,下载ansible安装包以及所有依赖包

yum install -y  yum-utils epel-release
mkdir /root/ansible
yum install -y --downloadonly --downloaddir=/root/ansible ansible

复制到内网服务器

图片[1]-Ansible简介与离线安装-不念博客

ansible安装包和依赖包

步骤二、打包所有下载的rpm包

将下载的离线包目录打包成ansible.tar.gz。

cd  /root
tar -zcvf ansible.tar.gz ./ansible

步骤三、安装ansible

通过U盘或网络拷贝到企业环境服务器,解压缩并执行安装。

tar -zxvf ansible.tar.gz
cd ./ansible
rpm -ivh *.rpm
ansible --version

图片[2]-Ansible简介与离线安装-不念博客

安装ansible

总结下

两种安装方式在生产环境的CentOS7系统中已验证通过,适用于 内网离线或者 外网在线安装,前提是系统自带或者干净的python环境。

提前安装下

1.使用yum list | grep zip/unzip获取软件安装列表,无结果表明未安装;

2.使用yum install zip”命令安装zip;3、利用“yum install unzip”命令安装unzip即可。 

安装方式一

cd /tmp
git clone https://github.com/ghl1024/ansible-offline-install.git
cd ansible-offline-install/ansible
sh install.sh

安装方式二

cd /tmp
wget -c https://github.com/ghl1024/ansible-offline-install/releases/download/V1/ansible-offline-install.tar.gz
tar xf ansible-offline-install.tar.gz
cd ansible
sh install.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/33668.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【分布式系统】聊聊高性能设计

每个程序员都应该知道的数字 高性能 对于以上的数字,其实每个程序员都应该了解,因为只有了解这些基本的数字,才能知道对于CPU、内存、磁盘、网络之间数据读写的时间。1000ms 1S。毫秒->微秒->纳秒-秒->分钟 为什么高性能如此重要的…

数据结构刷题训练:用栈实现队列(力扣OJ)

目录 前言 1. 题目:用栈实现队列 2. 思路 3. 分析 3.1 定义 “ 队列 ” 3.2 创建队列 3.3 入队 3.4 队头数据 3.5 出队 3.6 判空和销毁 4.题解 总结 前言 栈和队列是数据结构中的两个重要概念,它们在算法和程序设计中都有着广泛的应用。本文将带你深入了…

kube-prometheus 使用 blackbox-exporter 进行icmp 监控

安装kube-prometheus 后默认在monitoring namespace中有创建 blackbox-exporter deployment。但默认没有icmp的module配置,无法执行ping探测。因为即使有icmp module,默认配置也是无法执行ping探测的(这篇文章要解决的就是这个问题&#xff0…

中科亿海微FIFO使用

引言 FPGA(现场可编程门阵列)是一种可编程逻辑器件,具有灵活性和可重构性,广泛用于数字电路设计和嵌入式系统开发。在FPGA中,FIFO(First-In, First-Out)是一种常见的存储器结构,用于…

读《Flask Web开发实战》(狼书)笔记 | 第1、2章

前言 2023-8-11 以前对网站开发萌生了想法,又有些急于求成,在B站照着视频敲了一个基于flask的博客系统。但对于程序的代码难免有些囫囵吞枣,存在许多模糊或不太理解的地方,只会照葫芦画瓢。 而当自己想开发一个什么网站的时&…

【云原生】Kubernetes 概述

Kubernetes 概述 1.Kubernetes 简介 Kubernetes 是一个可移植的、可扩展的、用于管理容器化工作负载和服务的开源平台,它简化(促进)了声明式配置和自动化。它有一个庞大的、快速增长的生态系统。Kubernetes 的服务、支持和工具随处可见。 K…

消息队列kafka及zookeeper机制

一、zookeeper1.1 zookeeper简介1.2 zookeeper工作机制1.3 Zookeeper特点1.4 Zookeeper 数据结构1.5 Zookeeper 应用场景1.5.1 统一命名服务1.5.2 统一配置管理1.5.3 统一集群管理1.5.4 服务器动态上下线1.5.5 软负载均衡 1.6 Zookeeper 选举机制1.6.1 第一次启动选举机制1.6.2…

Jenkins 使用

Jenkins 使用 文章目录 Jenkins 使用一、jenkins 任务执行二、 Jenkins 连接gitee三、Jenkins 部署静态网站 一、jenkins 任务执行 jenkins 创建 job job的名字最好是有意义的 restart_web_backend restart_web_mysql[rootjenkins ~]# ls /var/lib/jenkins/ config.xml …

W5500-EVB-PICO作为TCP Client 进行数据回环测试(五)

前言 上一章我们用W5500-EVB-PICO开发板通过DNS解析www.baidu.com(百度域名)成功得到其IP地址,那么本章我们将用我们的开发板作为客户端去连接服务器,并做数据回环测试:收到服务器发送的数据,并回传给服务器…

SAP MM学习笔记16-在库品目评价

在库品目评价是指评估物料。具体比如物料价格,数量,保管场所等发生变化的时候,判断是否发生了变化,要不要生成 FI票,用哪个FI科目来进行管理等内容就叫在库品目评价。 在库品目评价有很多层级,这里先讲3兄弟…

在Linux虚拟机内配置nginx以及docker

目录 1、nginx源码包编译以及安装依赖 1、配置安装所需的编译环境 2、安装函数库(pcre、zlib、openssl) 2、安装nginx 1、获取源码包 2、解压编译 3、启动nginx服务 1、关闭防火墙 2、运行nginx 3、使用本地浏览器进行验证 3、安装docker 1、…

每次执行@Test方法前都执行一次DB初始化(SpringBoot Test + JUnit5环境)

引言 在执行单元测试时,可以使用诸如H2内存数据库替代线上的Mysql数据库等,如此在执行单元测试时就能尽可能模拟真实环境的SQL执行,同时也无需依赖线上数据库,增加了测试用例执行环境的可移植性。而使用H2数据库时,通…

Oracle DB 安全性 : TDE HSM TCPS Wallet Imperva

• 配置口令文件以使用区分大小写的口令 • 对表空间进行加密 • 配置对网络服务的细粒度访问 TCPS 安全口令支持 Oracle Database 11g中的口令: • 区分大小写 • 包含更多的字符 • 使用更安全的散列算法 • 在散列算法中使用salt 用户名仍是Oracle 标识…

【JavaEE】Spring Boot - 日志文件

【JavaEE】Spring Boot 开发要点总结(3) 文章目录 【JavaEE】Spring Boot 开发要点总结(3)1. 日志有什么作用2. 日志格式2.1 日志框架原理 3. 日志的打印3.1 System.out.println3.2 使用日志框架3.3 日志级别3.3.1 设置默认日志显…

深度学习(36)—— 图神经网络GNN(1)

深度学习(36)—— 图神经网络GNN(1) 这个系列的所有代码我都会放在git上,欢迎造访 文章目录 深度学习(36)—— 图神经网络GNN(1)1. 基础知识2.使用场景3. 图卷积神经网…

提高测试用例质量的6大注意事项

在软件测试中,经常会遇到测试用例设计不完整,用例没有完全覆盖需求等问题,这样往往容易造成测试工作效率低下,不能及时发现项目问题,无形中增加了项目风险。 因此提高测试用例质量,就显得尤为重要。一般来说…

电脑开不了机如何解锁BitLocker硬盘锁

事情从这里说起,不想看直接跳过 早上闲着无聊,闲着没事干,将win11的用户名称改成了含有中文字符的用户名,然后恐怖的事情发生了,蓝屏了… 然后就是蓝屏收集错误信息,重启,蓝屏收集错误信息&…

C#小轮子:自动连续Ping网络地址

文章目录 前言Ping代码异步问题 前言 工作中,我们经常用到Ping这个指令,有时候我们需要Ping整个网段来查看这个网段上面有什么设备,哪些Ip地址是通的,这个时候就需要Ping指令 Ping 代码 我这个是批量Ping的代码,而…

python爬虫实战(2)--爬取某博热搜数据

1. 准备工作 使用python语言可以快速实现,调用BeautifulSoup包里面的方法 安装BeautifulSoup pip install BeautifulSoup完成以后引入项目 2. 开发 定义url url https://s.微博.com/top/summary?caterealtimehot定义请求头,微博请求数据需要cookie…

OpenAI允许网站阻止其网络爬虫;谷歌推出类似Grammarly的语法检查功能

🦉 AI新闻 🚀 OpenAI推出新功能,允许网站阻止其网络爬虫抓取数据训练GPT模型 摘要:OpenAI最近推出了一个新功能,允许网站阻止其网络爬虫从其网站上抓取数据训练GPT模型。该功能通过在网站的Robots.txt文件中禁止GPTB…