ansible自动化运维工具

安装ansible
apt install ansible -y

ansible 标准化操作系统

ansible-doc -l |wc 模块

ansible-doc -l |grep nginx

查看帮助文档
ansible-doc mysql_db

[root@rocky8 ~]# ansible-console 交互命令

-b 通过sudo执行

普通用户提权

被控制端创建luo用户设置密码,并提权
useradd -s /bin/bash luo

vi /etc/sudors
luo ALL=(ALL) NOPASSWD: ALL

控端生成密钥拷贝到被监控端
[luo@rocky8 ~]$ ssh-keygen -f ~/.ssh/id_rsa -P ‘’
[luo@rocky8 ~]$ ssh-copy-id luo@192.168.1.50
[luo@rocky8 ~]$ ssh-copy-id luo@192.168.1.51

使用普通用户通过-b选项连接实现sudo提权后连接成功
[luo@rocky8 ~]$ ansible 192.168.1.51 -m shell -a 'ls /root'  -b --become-user root
192.168.1.51 | CHANGED | rc=0 >>
1.sh
anaconda-ks.cfg
b.txt
cri-dockerd
cri-dockerd-0.3.1-3.el7.x86_64.rpm
go
go1.16.10.linux-amd64.tar.gz
mha4mysql-manager-0.58-0.el7.centos.noarch.rpm

常用模块

file 模块
path #在被控端创建的路径
owner #属主
group #属组
mode #权限
state #状态
=touch #创建文件
=directory #创建目录
=link #软链接
=hard #硬链接
recurse #yes表示递归授权
ansible all -m file -a ‘path=/etc/1.txt state=touch mode=400’

fetch

playbook

不能有tab键

---
- hosts: websrvs
  tasks:
    - name: 查看passwd
      command: "cat /etc/passwd"
    - name: "输出Hello"
      shell: "echo hello"

安装nginx

[root@ubuntu20.04.3.example.com ansible]$ cat nginx.yaml 
- hosts: websrvs

  tasks: 
    - name: install nginx
      yum: 
        name: nginx  
        state: present 
    - name: data page
      copy: 
       src: files/index.html
       dest: /usr/share/nginx/html/
    - name: start service
      service:
        name: nginx 
        state: started
        enable: yes

-t 指定标签执行
ansible-playbook -t data.config nginx.yaml

变量的优先级从高到低如下
-e 选项定义变量 -->playbook中vars_files --> playbook中vars变量定义 -->host_vars/主机
名文件 -->主机清单中主机变量–> group_vars/主机组名文件–>group_vars/all文件–> 主机清单
组变量

可以防止dos攻击
iptables -A INPUT -m connlimit --connlimit-above 10 -j REJECT

Limit模块:限制流量

iptables -A INPUT -p icmp -m limit --limit 10/minute --limit-burst 5 -j ACCEPT

state模块

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值