Ansible自动化运维--1--ansible设置控制节点到所有子节点的批量免密登录

简介: 管理节点control到所有node节点设置密钥对免密登录,告别ssh-copy-id

1、测试环境

centos7.9 阿里云ECS

IP地址 角色
10.0.0.235 control
10.0.0.236 node1
10.0.0.237 node2

ansible版本

[root@ceshi ~]# ansible --versionansible 2.9.27  config file = /etc/ansible/ansible.cfg  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']  ansible python module location = /usr/lib/python2.7/site-packages/ansible  executable location = /usr/bin/ansible  python version = 2.7.5 (default, Jun 28 2022, 15:30:04) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]

2、操作步骤

2.1 设置hosts

[root@ceshi ~]# cat /etc/ansible/hosts |grep -v "#" |grep -v "^$"[test]10.0.0.[236:237] ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=password

注意:

1、这里直接在hosts文件里边指定了账号、密码、端口,也可以在环境变量里边指定2、如果是使用多台主机且IP连续,可以使用上述方式进行设置,比如:10.0.0.[1:255]表示10.0.0.1-10.0.0.255这个段的地址  10.0.[1:255].[1:255] 表示10.0.1-255.1-255这个地址段

2.2 在crontrol生成公钥和私钥

[root@ceshi ~]# ssh-keygen

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

/root/.ssh/id_rsa already exists.

Overwrite (y/n)?

输入命令,一路回车

2.3 编写yaml文件

[root@ceshi ~]# cat add_key.yml

---

- name: add key

 hosts: all

 tasks:

   - name: key

     authorized_key:

       user: root

       key: "{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"

       state: present

     

注意:yml文件可以在任意路径

2.4 运行playbook

[root@ceshi ~]# ansible-playbook add_key.yml

PLAY [add key] *********************************************************************************************************************************************************

TASK [Gathering Facts] *************************************************************************************************************************************************

ok: [10.0.0.236]

ok: [10.0.0.237]

TASK [key] *************************************************************************************************************************************************************

ok: [10.0.0.236]

ok: [10.0.0.237]

PLAY RECAP *************************************************************************************************************************************************************

10.0.0.236                 : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

10.0.0.237                 : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

2.5 取消hosts文件里边关于端口、密码的设置

[root@ceshi ~]# cat /etc/ansible/hosts |grep -v "#" |grep -v "^$"

[test]

10.0.0.[236:237]

2.6 验证测试

[root@ceshi ~]# ansible all -m shell  -a "ip -4 a |grep inet"

10.0.0.237 | CHANGED | rc=0 >>

   inet 127.0.0.1/8 scope host lo

   inet 10.0.0.237/24 brd 10.0.0.255 scope global dynamic eth0

10.0.0.236 | CHANGED | rc=0 >>

   inet 127.0.0.1/8 scope host lo

   inet 10.0.0.236/24 brd 10.0.0.255 scope global dynamic eth0

如果是可以正常输出IP地址,表示免密设置成功

相关文章
|
10天前
|
运维 监控 Ubuntu
【运维】如何在Ubuntu中设置一个内存守护进程来确保内存不会溢出
通过设置内存守护进程,可以有效监控和管理系统内存使用情况,防止内存溢出带来的系统崩溃和服务中断。本文介绍了如何在Ubuntu中编写和配置内存守护脚本,并将其设置为systemd服务。通过这种方式,可以在内存使用超过设定阈值时自动采取措施,确保系统稳定运行。
28 4
|
23天前
|
运维 Ubuntu 应用服务中间件
自动化运维之路:使用Ansible进行服务器管理
在现代IT基础设施中,自动化运维已成为提高效率和可靠性的关键。本文将引导您通过使用Ansible这一强大的自动化工具来简化日常的服务器管理任务。我们将一起探索如何配置Ansible、编写Playbook以及执行自动化任务,旨在为读者提供一条清晰的路径,从而步入自动化运维的世界。
|
21天前
|
运维 网络安全 Python
自动化运维:使用Ansible实现批量服务器配置
在快速迭代的IT环境中,高效、可靠的服务器管理变得至关重要。本文将介绍如何使用Ansible这一强大的自动化工具,来简化和加速批量服务器配置过程。我们将从基础开始,逐步深入到更复杂的应用场景,确保即使是新手也能跟上节奏。文章将不包含代码示例,而是通过清晰的步骤和逻辑结构,引导读者理解自动化运维的核心概念及其在实际操作中的应用。
|
22天前
|
运维 Ubuntu 网络协议
自动化运维:使用Ansible进行服务器配置管理
在现代IT架构中,自动化运维已成为提升效率、减少人为错误的关键。本文将介绍如何使用Ansible这一强大的自动化工具来简化和标准化服务器的配置管理过程。通过具体的代码示例和操作步骤,我们将展示如何快速部署应用、管理配置以及自动化日常任务,从而确保环境的一致性和可靠性。
|
1月前
|
运维 监控 安全
自动化运维的利剑:Ansible在现代IT架构中的应用
在数字化浪潮中,企业对IT系统的敏捷性和可靠性要求日益提高。Ansible,一种简单但强大的自动化运维工具,正成为现代IT架构中不可或缺的一部分。它通过声明式编程语言YAM,简化了系统配置、应用部署和任务自动化的过程,显著提升了运维效率和准确性。本文将深入探讨Ansible的核心特性、应用场景以及如何有效整合进现有IT环境,为读者揭示其在自动化运维中的实用价值和未来发展潜力。
|
1月前
|
运维 安全 Ubuntu
自动化运维:使用Ansible进行服务器配置管理
在现代IT基础设施中,自动化运维是确保高效、稳定和安全服务的关键。本文将深入介绍如何使用Ansible这一开源工具来简化服务器配置管理工作,从基础安装到高级应用,我们将一步步展示如何通过Ansible Playbooks实现自动化部署和维护,旨在帮助读者构建更加灵活和可扩展的运维体系。
43 7
|
28天前
|
机器学习/深度学习 运维 监控
智能化运维:从自动化到AIOps的演进之路####
本文深入探讨了IT运维领域如何由传统手工操作逐步迈向高度自动化,并进一步向智能化运维(AIOps)转型的过程。不同于常规摘要仅概述内容要点,本摘要将直接引入一个核心观点:随着云计算、大数据及人工智能技术的飞速发展,智能化运维已成为提升企业IT系统稳定性与效率的关键驱动力。文章详细阐述了自动化工具的应用现状、面临的挑战以及AIOps如何通过预测性分析和智能决策支持,实现运维工作的质变,引领读者思考未来运维模式的发展趋势。 ####
|
28天前
|
机器学习/深度学习 数据采集 人工智能
智能化运维:从自动化到AIOps的演进与实践####
本文探讨了智能运维(AIOps)的崛起背景,深入分析了其核心概念、关键技术、应用场景及面临的挑战,并对比了传统IT运维模式,揭示了AIOps如何引领运维管理向更高效、智能的方向迈进。通过实际案例分析,展示了AIOps在不同行业中的应用成效,为读者提供了对未来智能运维趋势的洞察与思考。 ####
73 1
|
1月前
|
运维 Ubuntu Linux
自动化运维:使用Ansible简化日常任务
在快节奏的IT世界中,时间就是一切。本文将揭示如何通过Ansible这一强大的自动化工具来节省宝贵的时间,从而提高效率和减少人为错误。我们将深入探讨Ansible的核心概念、安装过程以及如何编写简单的playbook来自动执行常见运维任务。无论你是新手还是有经验的系统管理员,这篇文章都将为你提供实用的知识和技能,让你能够更好地控制你的服务器环境。
|
1月前
|
运维 Devops 应用服务中间件
自动化运维的利剑:Ansible在现代IT架构中的应用
【10月更文挑战第42天】本文旨在揭示自动化运维工具Ansible如何革新现代IT架构,通过简化配置管理和部署流程,提升效率和可靠性。我们将探索Ansible的核心功能、语言特性以及其在DevOps文化中的角色。文章还将展示如何借助Ansible构建模块化和可重用的配置代码,实现快速迭代与部署,并确保系统一致性。通过阅读本文,运维人员将了解如何利用Ansible优化日常任务,加速产品上线速度,同时提高系统的稳健性。
43 5

热门文章

最新文章