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
相关推荐
MayZork2 分钟前
Windows 与 Linux 下 vcpkg 的安装部署指南
linux·运维·windows
yyuuuzz4 分钟前
记一次 VPS 性能排查:共享 CPU 突发额度导致的限流
运维·服务器·人工智能
冰雪青松9 分钟前
Ubuntu 运维命令大全:从入门到精通的实战参考手册
运维·服务器·ubuntu
gx234817 分钟前
控制器管理
docker·容器·kubernetes
CDN36034 分钟前
节点智能调度实操:解决出海区域访问快慢不均、节点拥堵、跨洋延迟高,CDN 全网择优落地方案
运维·服务器·网络
白清羽2 小时前
7.3系统安装docker
运维·docker·容器
翼龙云_cloud3 小时前
阿里云国际渠道代理商:如何在ECS上部署Flask应用?
运维·数据库·阿里云·flask·云计算
GGG7663 小时前
Python 运维自动化:psutil+IPy 系统与网络信息采集深度实战
运维·python·云原生·pip
可乐鸡翅yeah_3 小时前
个人 / 外包流媒体项目交付实战,M3U8 验收与问题闭环完整工作流
运维·网络·python·低代码·django·m3u8·在线播放
dazhong20123 小时前
Docker 入门篇(八)-- CentOS7 安装 MySQL 8
mysql·docker·容器