Ansible

1.Ansible对于企业运维的重大意义

高效部署

  • 企业可以使用 Ansible 快速部署新的服务器和应用程序。通过定义清晰的任务和剧本,可以实现一键式部署,大大缩短了部署时间,提高了工作效率。例如,在部署一个新的 Web 应用时,Ansible 可以自动安装所需的软件包、配置数据库、启动服务等,无需人工逐一进行操作。
  • 可以同时对多台服务器进行部署,确保整个系统的一致性。对于大规模的企业环境,这一点尤为重要,可以避免因手动操作带来的不一致性和错误。

配置管理

  • Ansible 能够对服务器的配置进行集中管理。企业可以定义统一的配置标准,并通过 Ansible 确保所有服务器都符合这些标准。例如,可以统一设置服务器的防火墙规则、用户权限、软件版本等,提高系统的安全性和稳定性。
  • 当需要对配置进行更改时,只需修改 Ansible 的剧本或任务,然后运行即可快速应用到所有相关服务器上。这使得配置变更更加容易管理,减少了因配置不一致而导致的问题。

2.Ansible的安装

epel 源
dnf install ansible -y
ansible --viersion
ansible 的基本信息 :
/etc/ansible/ansible.conf ## 全局配置文件 , 默认很少修改
/etc/ansible/hosts

全局主机清单清单文件

3.构建Anisble清单

清单就是 ansible 控制主机的列表
/etc/ansible/hosts ## 全局清单文件
#1. 直接书写受管主机名或 ip , 每行一个
node1.westos.com
node2.westos.com
172.25.254.240

在/etc/ansible的host中直接书写【】表示清单名称。下面时元素

#2. 设定受管主机的组 组名称

清单查看 :

ansible 清单中组名称 -i 清单文件 --list-hosts
ansible ungrouped --list-hosts
ansible all --list-hosts

手动指定清单

嵌套清单

  1. 主机规格的范围化操作 #

通过指定主机名称或 IP 的范围可以简化 Ansible 主机清单

语法 :

#start:end

westostest

172.25.254.100:108

4.指定其他清单文件
vim inventory
172.25.254.240

westostest

172.25.254.100
172.25.254.200

4.Ansible配置文件参数详解

ansible 清单中组名称 -m 模块 -u remote_user
#1. 配置文件的分类与优先级
/etc/ansible/ansible.cfg # 基本配置文件 , 找不到其他配置文件此文件生效
~/.ansible.cfg

用户当前目录中没有 ansible.cfg 此文件生效

./ansible.cfg

优先级最高

#2. 常用配置参数
#default

基本信息设定

inventory=

指定清单路径

remote_user=

在受管主机上登陆的用户名称 , 未指定使用当前用户

ask_pass=

是否提示输入 SSH 密码 , 如果公钥登陆设定为 false

library=

库文件存放目录

local_tmp=

本机临时命令执行目录

remote_tmp=

远程主机临时 py 命令文件存放目录

forks=

默认并发数量

host_key_checking=

第一次连接受管主机时是否要输入 yes 建立 host_key

sudo_user=

默认 sudo 用户

ask_sudo_pass=

每次在受控主机执行 ansible 命令时是否询问 sudo 密码

module_name=

默认模块 , 默认使用 command , 可以修改为 shell

log_path=

日志文件路径

privilege_escalation

身份信息设定

become=

连接后是否自动切换用户

become_method=

设定切换用户的方式 , 通常用 sudo

become_user=

在受管主机中切换到的用户 , 通常为 root

become_ask_pass

是否需要为 become_method 提示输入密码 , 默认为 false

相关推荐
知已难寻20 分钟前
01 · OpenStack的认证管理 Keystone
运维·服务器·云原生·云计算·openstack
ai_xiaogui1 小时前
私有化部署大模型实战:PanelAI 一键搭建、Token 计费与多用户隔离
运维·私有化部署·大模型部署·大模型 token 计费·api key 统一管理·多用户实例隔离·应用市场一键部署
企鹅侠客1 小时前
Linux CPU 负载平均值(Load Average)详解:从原理到实践
linux·运维·服务器·服务器负载
易点云徐源1 小时前
HP 暗影精灵 PRO 16 安装双系统后,开机直接进入 Windows,按 F9 才能进入 Ubuntu:GRUB 菜单不显示的处理方法
linux·运维·ubuntu
木雷坞1 小时前
Baserow Docker部署:导入设备借用CSV,再用表单新增登记
运维·docker·容器
程序员大雄学编程2 小时前
crontab 脚本不写日志?我把 7 个原因在 Ubuntu 上逐个复现了一遍
运维
广目软件2 小时前
HA分布式架构采集节点变更操作手册20261029
运维·服务器·ansible·zabbix·prometheus
米优2 小时前
linux下获取崩溃程序的core文件
linux·运维·服务器
半杯咖啡半行码2 小时前
QML进阶指南:状态动画与模型视图实战详解
运维·qml
qeen872 小时前
【Linux】动静态库的制作使用及ELF文件的宏观理解
linux·运维·库