Ansible安装及简单使用备注
1、安装epel源;
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
2、安装:
yum install ansible -y
完成后执行:ansible --version
ansible 2.3.1.0
config file = /etc/ansible/ansible.cfg
configured module search path = Default w/o overrides
python version = 2.7.5 (default, Nov 6 2016, 00:28:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]
3、生成节点用的秘钥:
ssh-keygen
拷贝秘钥至节点服务器:
ssh-copy-id -i root@115.XXX.XXX.XXX
4、修改/etc/ansible/hosts文件,增加被控节点的IP地址, [test-nodes]为用户组
[test-nodes]
115.XXX.XXX.XXX
测试环境:
ansible -m ping 'test-nodes'
返回:
115.XXX.XXX.XXX | SUCCESS => {
"changed": false,
"ping": "pong"
}
5、常用命令:
5.0 概述
ansible -m MOD_NAME -a MOD_ARGS
MOD_NAME 代表模块名称 MOD_ARGS 代表传入模块的参数
5.1 执行命令
备注:shell支持管道,command不支持
ansible 'test-nodes' -m command -a 'ifconfig'
ansible 'test-nodes' -m shell -a 'ifconfig|grep eth0'
5.2 拷贝文件
ansible 'test-nodes' -m copy -a 'src=./node.yaml dest=/home mode=664 backup=yes'
备注:backup代表拷贝前将原文件备份
5.3 定时操作
ansible 'test-nodes' -m cron -a 'name="make dir" minute="3" hour="11" job="mkdir /home/test01 > /dev/null"'
备注:11:03分时执行一个名为make dir的任务,执行任务为:mkdir /home/test01
5.4 服务管理
ansible 'test-nodes' -m service -a 'name=tomcat state=restart enabled=no'
5.5 rsync命令
ansible 'test-nodes' -m synchronize -a ' src=/home dest=/home'
6、ansible-palybook
- hosts: test-nodes
remote_user: root
tasks:
- name: install nginx
yum: name=nginx state=latest
tags: install
执行命令:ansible-playbook test.yml,目标机器将安装nginx,playbook支持的语法能够满足较复杂运维需求,如下发配置文件等,本文不做赘述。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)