ansible2.4安装和体验

简介: ansible是常用的开源配置管理工具,简单易用,可以高效的帮助我们对服务器进行远程操作,欢迎您本文一起安装和体验2.4版本

欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码): https://github.com/zq2599/blog_demos

关于ansible

  • ansible是常用的开源配置管理工具,简单易用,可以高效的帮助我们对服务器进行远程操作,下图来自ansible官网,可见一台安装了ansible的机器可以远程控制亚马逊的EC2、S3服务器:

在这里插入图片描述

环境

  1. 操作系统:CentOS Linux release 7.7.1908
  2. ansible版本:2.4.2.0
  3. 本次实战用到两台机器,信息如下:
hostname IP地址 作用
ansible 192.168.133.160 装了ansible,在此机器执行ansible命令操作cdh002机器
cdh002 192.168.133.162 从ansible机器上,通过ansible命令和脚本,操作cdh002

安装

  • root账号登录ansible机器,一行命令安装:
yum install -y ansible
  • 查看版本:
[root@ansible playbooks]# ansible --version

ansible 2.4.2.0

  config file = /root/playbooks/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, Aug  7 2019, 00:51:29) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
  • 安装成功,接下来开始体验;

配置机器信息

  • root账号登录ansible机器,创建文件夹playbooks
  • playbooks目录下创建名为hosts的文件,内容如下,cdh-group是群组名,该群组内有一个机器配置信息,包含名称、IP地址,SSH端口,SSH账号密码等:
[cdh-group]
cdh002 ansible_host=192.168.133.162 ansible_port=22 ansible_user=root ansible_password=888888
  • playbooks目录下创建名为ansible.cfg的文件,内容如下,这是个ansible的配置文件,执行ansible命令时用到,这里面指定了主机信息在hosts文件中查找:
[defaults]
inventory = ~/playbooks/hosts
host_key_checking = False

体验

  • root账号登录ansible机器,执行命令ansible cdh002 -m command -a "free -m",如下所示,成功的输出了cdh002的内存信息:
[root@centos7 playbooks]# ansible cdh002 -m command -a "free -m"
cdh002 | SUCCESS | rc=0 >>
              total        used        free      shared  buff/cache   available
Mem:          15866        9047        3674          21        3145        6500
Swap:          2047           0        2047
  • 上述命令中,-m command是指使用command模块, -a "free -m"是要在test机器上执行的命令;
  • 也可以省略-m command
[root@centos7 playbooks]# ansible cdh002 -a "free -m"
cdh002 | SUCCESS | rc=0 >>
              total        used        free      shared  buff/cache   available
Mem:          15866        9066        3648          21        3151        6480
Swap:          2047           0        2047

playbook实战

  • 直接执行ansible命令虽然操作简单,但是不适合复杂的远程操作,这时候用脚本来配置和执行更合适,接下来编写一个脚本文件,再用ansible执行这个脚本文件,达到给cdh002机器安装应用redhat-lsb的目标;
  • /root/playbooks文件夹下创建文件test_install.yml,内容如下:
- name: test cdh-group
  hosts: cdh-group
  gather_facts: True
  tasks:
  - debug: var=ansible_distribution
  - name: install redhat-lsb
    yum: name=redhat-lsb state=present
  • 执行命令ansible-playbook test_install.yml,控制台信息如下,表示执行成功(changed=0表示本次实际上没有安装,因为该应用已经存在了):

在这里插入图片描述

  • 验证redhat-lsb应用是否已在cdh002机器安装成功,如下图,操作系统信息成功输出,表示redhat-lsb安装成功:

在这里插入图片描述

更多命令

欢迎关注阿里云开发者社区博客:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...
相关文章
|
存储 SQL 弹性计算
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务。云数据库RDS提供三种数据存储类型:ESSD云盘、本地SSD盘和SSD云盘,本文介绍三种存储类型的区别及选购建议。
1607 0
阿里云关系型数据库RDS存储类型区别(ESSD云盘、本地SSD盘和SSD云盘)
|
关系型数据库 MySQL 数据库
MySQL常用表级操作
MySQL常用表级操作
179 0
|
8月前
|
人工智能 自然语言处理 API
AI双轨革命:DeepSeek与Manus
DeepSeek与Manus是当前人工智能领域的两款明星产品,技术定位和核心能力各有千秋。DeepSeek基于混合专家模型,参数达6710亿,擅长知识推理与文本生成,提供高性价比的企业级应用;Manus采用多智能体协作架构,实现任务全流程自动化,支持跨平台工具调用。两者并非直接竞争,而是互补,共同推动AI向智慧化和实用化发展。
373 2
|
8月前
|
人工智能 自然语言处理 安全
Anus:公开整活!完全用 Manus 复刻 Manus 功能的开源 AI 智能体项目
Anus 是一个开源 AI 智能体项目,复刻了 Manus 的部分功能,支持自然语言指令执行、多代理协作、多模态输入处理等功能,旨在为开发者提供强大且灵活的工具。
942 1
Anus:公开整活!完全用 Manus 复刻 Manus 功能的开源 AI 智能体项目
|
11月前
|
监控 应用服务中间件 定位技术
要统计Nginx的客户端IP,可以通过分析Nginx的访问日志文件来实现
要统计Nginx的客户端IP,可以通过分析Nginx的访问日志文件来实现
975 3
|
编解码 安全 计算机视觉
FFMPEG常用命令 音视频合并
FFMPEG常用命令 音视频合并
647 2
|
Python
【Python】利用tkinter开发测手速小游戏
【Python】利用tkinter开发测手速小游戏
279 0
|
搜索推荐 知识图谱 UED
信息检索新技术问题之回音室效应的定义如何解决
信息检索新技术问题之回音室效应的定义如何解决
124 0
|
机器学习/深度学习 人工智能 自然语言处理
未来数据观|从大模型到AIGC:人工智能新范式
人工智能经历70余年的探索和发展,如今到了大模型时代并出现现象级AI产品。这不仅是人类研究积累的厚积薄发,也是数字时代下大数据、大模型、大算力发展到了一定阶段的必然结果。在大模型的加持下,AIGC(AI Generated Content,人工智能生成内容)有望助力内容生成跨越新时代,并开启人工智能应用的新浪潮。
1632 1
|
算法 调度 决策智能
Python高级算法——模拟退火算法(Simulated Annealing)
Python高级算法——模拟退火算法(Simulated Annealing)
1612 1