自动化运维工具ansible--笔记一之简介安装/常用模块

简介:

 目录:

     简介安装
     常用模块

简介安装:

wKioL1h4T_Oz4OcRAAHQU5MdAwM786.png

 yum -y install ansible

ssh-keygen -t rsa
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.xx.xx

ansible -m  模块  -a 指定向模块传递的参数  -f 并发书 -k 默认基于密钥,使用基于口令认证 -i PATH : 指明使用的host inventory文件路径

vim ansible.cfg
host_key_checking = False

cat hosts
[web]
192.168.50.101   ansible_ssh_pass=123456


常用模块:

command:命令模块 (不支持变量和管道)
 ansible web   -m command -a 'date'
cron:周期性任务计划模块
ansible websrvs -m cron -a ' name="sync time"  minute="*/3"  job="/usr/sbin/ntpdate time.nist.gov &> /dev/null"'
ansible web   -m cron  -a 'name="sync time"  state=absent'  ##删除     present/absent  生成/异常

user:管理用户
  • name
  • state    present  absent
  • force   删除时删除家目录
  • system   创建系统用户
  • uid   
  • shell
  • home
openssl passwd -1 -salt `openssl rand -hex 4`    加密串
ansible web -m user -a 'name=xx password=$1$1ba6487f$gEZ7LEbftHcJo9lNoWY9p/'
ansible web -m user -a 'name=xx state=absent'

copy:复制文件
  • src:本地源文件路径
  • content:表示直接用此处 指定的内容 生成为目标文件内容
  • dest: 远程目标文件路径
  • force:当设置为yes时,如果目标主机存在该文件,但内容不同,会强制覆盖。默认为yes。
  • backup:在覆盖之前备份源文件,yes/no

ansible all -m copy -a 'src=/root/test.ansible dest=/tmp/'
ansible all -m copy -a 'src=/root/test.ansible dest=/tmp/  owner=root group=root mode=644 backup=yes'

file:设定文件属性

    force:需要在两种情况下强制创建软链接,一种是源文件不存在但之后会建立的情况下;另一种是目标软链接已存在,需要先取消之前的软链,然后创建新的软链,有两个选项:yes|no

    group:定义文件/目录的属组

    mode:定义文件/目录的权限

    owner:定义文件/目录的属主

    path:必选项,定义文件/目录的路径

    recurse:递归的设置文件的属性,只对目录有效

    src:要被链接的源文件的路径,只应用于state=link的情况

    dest:被链接到的路径,只应用于state=link的情况

    state:

            directory:如果目录不存在,创建目录

            file:即使文件不存在,也不会被创建

            link:创建软链接

            hard:创建硬链接

            touch:如果文件不存在,则会创建一个新的文件,如果文件或目录已存在,则更新其最后修改时间

            absent:删除目录、文件或者取消链接文件
ansible all -m file -a 'src=/tmp/test.ansible path=/tmp/test.link state=link'


server: 控制服务的运行状态
  • enabled 是否开机自动启动   true  false
  • state   状态值  started  stopped  restarted  reloaded   

ansible web -m service -a 'name=httpd state=started enabled=true'

shell:  将本地脚本复制到远程主机  执行
ansible web -m shell -a 'echo $TERM'

ping:

ansible all -m ping

yum:
  • name
  • state= present  ,  latest   表示安装;  absent 表示卸载

ansible all -m yum -a 'name=httpd  state=absent'

setup:收集主机的facs
ansible  all -m setup -a 'filter=ansible_eth0'
template:设备变量

 vim /root/httpd.conf
           ...
           ServerName ` ansible_fqdn `
ansible websrvs -m template -a 'src=/root/httpd.conf desc=/etc/httpd/conf/httpd.conf

synchronize: 指定目录推送

ansible all -m synchronize -a 'src=/usr/local/src/ dest=/usr/local/src/ delete=yes compress=yes'

get_url:远程主机上下载url 到本地
ansible all -m get_url -a 'url=http://ftp.linux.ncsu.edu/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm dest=/tmp'









本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/1891703,如需转载请自行联系原作者
目录
相关文章
|
27天前
|
存储 运维 安全
构建高效自动化运维体系:Ansible与Docker的完美结合
【2月更文挑战第31天】 随着云计算和微服务架构的兴起,自动化运维成为保障系统稳定性和提升部署效率的关键手段。本文将详细探讨如何通过Ansible和Docker的结合来构建一个高效、可靠且易于管理的自动化运维体系。首先,介绍自动化运维的必要性及其在现代IT基础设施中的作用;然后,分别阐述Ansible和Docker的技术特点及优势;最后,提供一个基于Ansible和Docker结合使用的实践案例,以及实施过程中遇到的挑战和解决方案。
|
28天前
|
运维 安全 网络安全
构建高效自动化运维体系:Ansible与Docker的完美融合
【2月更文挑战第30天】在当今快速迭代和持续部署的软件发展环境中,自动化运维成为确保效率和稳定性的关键。本文将探讨如何通过结合Ansible和Docker技术,构建一个高效的自动化运维体系。我们将分析Ansible的配置管理功能和Docker容器化的优势,并展示它们如何协同工作以简化部署流程,增强应用的可移植性,并提供一致性的系统环境。此外,文章还将介绍一些最佳实践,帮助读者在真实环境中实现这一整合方案。
|
3月前
|
数据可视化 Linux 网络安全
CentOS7.9下离线安装OctoMation编排自动化SOAR开源社区免费版
CentOS7.9下离线安装OctoMation编排自动化SOAR开源社区免费版
57 0
|
26天前
|
人工智能 运维 Prometheus
现代运维中的自动化工具与挑战
随着信息技术的不断发展,现代运维工作日益复杂且关键。本文将探讨现代运维中自动化工具的应用与挑战,介绍各类自动化工具在提高效率、降低风险方面的作用,并讨论在实际应用中可能面临的问题与解决方法。
22 4
|
29天前
|
运维 负载均衡 监控
提升运维效率:自动化工具在云端环境中的应用
随着云计算技术的快速发展,运维工作面临着更加复杂和繁重的挑战。本文将探讨如何利用自动化工具在云端环境中提升运维效率,从而降低成本、减少人为错误,并实现更高水平的运维管理。
|
2月前
|
安全 C# 开发者
.NET开源的一键自动化下载、安装、激活Microsoft Office利器
.NET开源的一键自动化下载、安装、激活Microsoft Office利器
|
2月前
|
传感器 监控
BOSHIDA DC电源模块在工业自动化中的应用案例分析
BOSHIDA DC电源模块在工业自动化中的应用案例分析 BOSHIDA DC电源模块在工业自动化中有很多应用案例,以下是其中几个典型的例子:
BOSHIDA   DC电源模块在工业自动化中的应用案例分析
|
3月前
|
存储 运维 Shell
运维:Powershell面向对象编程简介
运维:Powershell面向对象编程简介
43 1
|
3月前
|
Linux iOS开发 MacOS
Python 自动化指南(繁琐工作自动化)第二版:附录 A:安装第三方模块
Python 自动化指南(繁琐工作自动化)第二版:附录 A:安装第三方模块
|
3月前
|
运维 监控 测试技术
ansible 自动化运维监控方案
本文介绍如何利用ansible实时或自动采集受控主机的信息

热门文章

最新文章