在 CentOS 7 中安装并使用自动化工具 Ansible

简介:

Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具。它用Python写成,类似于Chef和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端。它使用SSH来和节点进行通信。

本篇中我们将在CentOS 7上安装并配置Ansible,并且尝试管理两个节点。

  • Ansible 服务端 – ansible.linuxtechi.com ( 192.168.1.15 )

  • 节点 – 192.168.1.9 , 192.168.1.10

第一步: 设置EPEL仓库

Ansible仓库默认不在yum仓库中,因此我们需要使用下面的命令启用epel仓库。


 
 
  1. [root@ansible ~]# rpm -iUvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

第二步: 使用yum安装Ansible


 
 
  1. [root@ansible ~]# yum install ansible

安装完成后,检查ansible版本:


 
 
  1. [root@ansible ~]# ansible --version

ansible-version

ansible-version

第三步: 设置用于节点鉴权的SSH密钥

在Ansible服务端生成密钥,并且复制公钥到节点中。


 
 
  1. root@ansible ~]# ssh-keygen

ssh-keygen

ssh-keygen

使用ssh-copy-id命令来复制Ansible公钥到节点中。

ssh-copy-id-command

ssh-copy-id-command

第四步:为Ansible定义节点的清单

文件 /etc/ansible/hosts 维护着Ansible中服务器的清单。


 
 
  1. [root@ansible ~]# vi /etc/ansible/hosts
  2. [test-servers]
  3. 192.168.1.9
  4. 192.168.1.10

保存并退出文件。

主机文件示例如下:

ansible-host

ansible-host

第五步:尝试在Ansible服务端运行命令

使用ping检查‘test-servers’或者ansible节点的连通性。


 
 
  1. [root@ansible ~]# ansible -m ping 'test-servers'

ansible-ping

ansible-ping

执行shell命令

例子1:检查Ansible节点的运行时间(uptime)


 
 
  1. [root@ansible ~]# ansible -m command -a "uptime" 'test-servers'

ansible-uptime

ansible-uptime

例子2:检查节点的内核版本


 
 
  1. [root@ansible ~]# ansible -m command -a "uname -r" 'test-servers'

kernel-version-ansible

kernel-version-ansible

例子3:给节点增加用户


 
 
  1. [root@ansible ~]# ansible -m command -a "useradd mark" 'test-servers'
  2. [root@ansible ~]# ansible -m command -a "grep mark /etc/passwd" 'test-servers'

useradd-ansible

useradd-ansible

例子4:重定向输出到文件中


 
 
  1. [root@ansible ~]# ansible -m command -a "df -Th" 'test-servers' > /tmp/command-output.txt

redirecting-output-ansible

本文来自云栖社区合作伙伴“Linux中国”,原文发布日期:2015-10-04

目录
相关文章
|
3天前
|
网络协议 Linux 网络安全
微软工程师偷偷在用!这款SSH工具让Windows操控CentOS比Mac还优雅!
远程登录Linux服务器是管理和维护服务器的重要手段,尤其在远程办公、云服务管理等场景中不可或缺。通过工具如XShell,用户可以方便地进行远程管理。SSH协议确保了数据传输的安全性,命令行界面提高了操作效率。配置XShell连接CentOS时,需确保Linux系统开启sshd服务和22端口,并正确设置主机地址、用户名和密码。此外,调整字体和配色方案可优化使用体验,解决中文显示问题。
43 17
微软工程师偷偷在用!这款SSH工具让Windows操控CentOS比Mac还优雅!
|
12天前
|
监控 jenkins 测试技术
Ansible与Jenkins:自动化工具的对比
Ansible和Jenkins是自动化领域的两大巨头。Ansible专注于配置管理和任务自动化,采用无代理架构,使用YAML定义配置,具有幂等性和可扩展性。Jenkins则擅长持续集成和持续交付(CI/CD),支持丰富的插件生态系统,适用于自动化构建、测试和部署。两者各有优势,Ansible适合配置管理与大规模部署,Jenkins则在CI/CD方面表现出色。结合使用可创建更强大的自动化工作流,提升团队生产力和软件质量。选择工具时应根据具体需求决定。
|
3月前
|
存储 人工智能 自然语言处理
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
ChatMCP 是一款基于模型上下文协议(MCP)的 AI 聊天客户端,支持多语言和自动化安装。它能够与多种大型语言模型(LLM)如 OpenAI、Claude 和 OLLama 等进行交互,具备自动化安装 MCP 服务器、SSE 传输支持、自动选择服务器、聊天记录管理等功能。
458 15
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
|
3月前
|
运维 网络安全 Python
自动化运维:使用Ansible实现批量服务器配置
在快速迭代的IT环境中,高效、可靠的服务器管理变得至关重要。本文将介绍如何使用Ansible这一强大的自动化工具,来简化和加速批量服务器配置过程。我们将从基础开始,逐步深入到更复杂的应用场景,确保即使是新手也能跟上节奏。文章将不包含代码示例,而是通过清晰的步骤和逻辑结构,引导读者理解自动化运维的核心概念及其在实际操作中的应用。
|
3月前
|
运维 Ubuntu 网络协议
自动化运维:使用Ansible进行服务器配置管理
在现代IT架构中,自动化运维已成为提升效率、减少人为错误的关键。本文将介绍如何使用Ansible这一强大的自动化工具来简化和标准化服务器的配置管理过程。通过具体的代码示例和操作步骤,我们将展示如何快速部署应用、管理配置以及自动化日常任务,从而确保环境的一致性和可靠性。
|
3月前
|
运维 Ubuntu 应用服务中间件
自动化运维之路:使用Ansible进行服务器管理
在现代IT基础设施中,自动化运维已成为提高效率和可靠性的关键。本文将引导您通过使用Ansible这一强大的自动化工具来简化日常的服务器管理任务。我们将一起探索如何配置Ansible、编写Playbook以及执行自动化任务,旨在为读者提供一条清晰的路径,从而步入自动化运维的世界。
|
4月前
|
运维 Ubuntu Linux
自动化运维:使用Ansible简化日常任务
在快节奏的IT世界中,时间就是一切。本文将揭示如何通过Ansible这一强大的自动化工具来节省宝贵的时间,从而提高效率和减少人为错误。我们将深入探讨Ansible的核心概念、安装过程以及如何编写简单的playbook来自动执行常见运维任务。无论你是新手还是有经验的系统管理员,这篇文章都将为你提供实用的知识和技能,让你能够更好地控制你的服务器环境。
|
4月前
|
运维 安全 Ubuntu
自动化运维:使用Ansible进行服务器配置管理
在现代IT基础设施中,自动化运维是确保高效、稳定和安全服务的关键。本文将深入介绍如何使用Ansible这一开源工具来简化服务器配置管理工作,从基础安装到高级应用,我们将一步步展示如何通过Ansible Playbooks实现自动化部署和维护,旨在帮助读者构建更加灵活和可扩展的运维体系。
76 7
|
4月前
|
运维 监控 安全
自动化运维的利剑:Ansible在现代IT架构中的应用
在数字化浪潮中,企业对IT系统的敏捷性和可靠性要求日益提高。Ansible,一种简单但强大的自动化运维工具,正成为现代IT架构中不可或缺的一部分。它通过声明式编程语言YAM,简化了系统配置、应用部署和任务自动化的过程,显著提升了运维效率和准确性。本文将深入探讨Ansible的核心特性、应用场景以及如何有效整合进现有IT环境,为读者揭示其在自动化运维中的实用价值和未来发展潜力。
|
4月前
|
运维 Devops 应用服务中间件
自动化运维的利剑:Ansible在现代IT架构中的应用
【10月更文挑战第42天】本文旨在揭示自动化运维工具Ansible如何革新现代IT架构,通过简化配置管理和部署流程,提升效率和可靠性。我们将探索Ansible的核心功能、语言特性以及其在DevOps文化中的角色。文章还将展示如何借助Ansible构建模块化和可重用的配置代码,实现快速迭代与部署,并确保系统一致性。通过阅读本文,运维人员将了解如何利用Ansible优化日常任务,加速产品上线速度,同时提高系统的稳健性。
77 5

热门文章

最新文章