Ansible 运维工具

安装

apt install ansible

/etc/ansible/hosts , 指定密码或密钥访问分组机器

复制代码
[k8s_masters]
master0.c0.k8s.sb
  
[k8s_nodes]
node0.c0.k8s.sb
node1.c0.k8s.sb

[k8s:children]
k8s_masters
k8s_nodes

[k8s_masters:vars]
ansible_ssh_user=sbadmin
ansible_ssh_pass="***"
#ansible_ssh_private_key_file=/home/sbadmin/.ssh/id_rsa

[k8s_nodes:vars]
ansible_ssh_user=sbadmin
ansible_ssh_pass="***"
#ansible_ssh_private_key_file=/home/sbadmin/.ssh/id_rsa

/etc/ansible/ansible.cfg

复制代码
[defaults]
host_key_checking = False

命令

复制代码
# 运行时指定私钥
ansible all -m ping --key-file /home/user/.ssh/id_rsa

# 某一组机器执行ping
ansible k8s_nodes -m ping

# 不带参数默认走shell命令
ansible k8s -a "df -h" 
= 
ansible k8s -m shell -a "df -h"

剧本

公钥分发
复制代码
- hosts: k8s

  tasks:
  - name: Set authorized key took from file
    authorized_key:
      exclusive: True                                                 #清除远程主机之前所有的其他公钥
      key: "{{ lookup('file', '/home/sbadmin/.ssh/id_rsa.pub') }}"    #本机的公钥地址
      user: sbadmin                                                   #被控制的远程服务上的用户名
      state: present                                                  #模式为添加公钥

执行

复制代码
ansible-playbook distribute_pub_keys.yaml
相关推荐
zzzsde12 小时前
【Linux】基础开发工具(2):vim补充说明&&gcc/g++编译器
linux·运维·服务器
河南博为智能科技有限公司12 小时前
动环监控终端-守护变电站安全运行的智能核心
运维·服务器·网络·物联网
tzhou6445212 小时前
Nginx 性能优化与防盗链配置
运维·nginx·性能优化
热爱学习的小怪兽12 小时前
Docker容器的一些总结
运维·docker·容器
要站在顶端12 小时前
基于 curl 实现 Jenkins 上传制品到 JFrog Artifactory
运维·ci/cd·jenkins
杨德杰13 小时前
Ubuntu设置VNC远程桌面
linux·运维·ubuntu
❀͜͡傀儡师13 小时前
Docker一键部署Nexus Terminal,高颜值SSH新体验
docker·容器·ssh
写代码的学渣14 小时前
Ubuntu/麒麟默认锁定root账户
linux·运维·ubuntu
TH_114 小时前
腾讯云-(10)-宝塔面板-Docker下安装Elasticsearch
elasticsearch·docker·容器
刚哥的进化路15 小时前
Linux系统日志管理完全教程:从基础查看 to 集中分析(附实战命令)
运维·自动化运维