Ansible 详细用法说明(一)

ansible 详解 文章目录一、ansible 简介1.1 ansible 是什么?1.2 ansible 特点1.3 ansible 架构图二、ansible 任务执行2.1 ansible 任务执行模式2.2 ansible 执行流程2.3 ansible 命令执行过程三、ansible 配置详解3.1 ansible 安装方式3.1.1 使用 pip(python的包管理模块)安装3.1.2 使用 yum 安装3.2 ansible 程序结构3.3 ansible配置文件3.4 ansuble主机清单四、ansible 阅读详情

一、概述

运维工具按需不需要有代理程序来划分的话分两类:

  • agent(需要有代理工具):基于专用的agent程序完成管理功能,puppet, func, zabbix

  • agentless(无须代理工具):基于ssh服务完成管理,ansible, fabric

二、简介

  Ansible是一个简单的自动化运维管理工具,基于Python语言实现,由Paramiko和PyYAML两个关键模块构建,可用于自动化部署应用、配置、编排task(持续交付、无宕机更新等)。主版本大概每2个月发布一次。

  Ansible与Saltstack最大的区别是Ansible无需在被控主机部署任何客户端代理,默认直接通过SSH通道进行远程命令执行或下发配置:相同点是都具备功能强大、灵活的系统管理、状态配置,两者都提供丰富的模板及API,对云计算平台、大数据都有很好的支持。

1、特点:

  • 部署简单,只需在主控端部署Ansible环境,被控端无需做任何操作;

  • 默认使用SSH协议对设备进行管理;

  • 主从集中化管理;

  • 配置简单、功能强大、扩展性强;

  • 支持API及自定义模块,可通过Python轻松扩展;

  • 通过Playbooks来定制强大的配置、状态管理;

  • 对云计算平台、大数据都有很好的支持;

  • 提供一个功能强大、操作性强的Web管理界面和REST API接口——AWX平台。

  • 幂等性:一种操作重复多次结果相同

简评:
(1)、轻量级,无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可;
(2)、批量任务执行可以写成脚本,而且不用分发到远程就可以执行;
(3)、使用python编写,维护更简单,ruby语法过于复杂;
(4)、支持sudo。

2、Ansible架构图


Ansible核心组件说明:

  • Ansible:Ansible的核心程序

  • Host Lnventory:记录了每一个由Ansible管理的主机信息,信息包括ssh端口,root帐号密码,ip地址等等。可以通过file来加载,可以通过CMDB加载

  • Playbooks:YAML格式文件,多个任务定义在一个文件中,使用时可以统一调用,“剧本”用来定义那些主机需要调用那些模块来完成的功能.

  • Core Modules:Ansible执行任何管理任务都不是由Ansible自己完成,而是由核心模块完成;Ansible管理主机之前,先调用core Modules中的模块,然后指明管理Host Lnventory中的主机,就可以完成管理主机。

  • Custom Modules:自定义模块,完成Ansible核心模块无法完成的功能,此模块支持任何语言编写。

  • Connection Plugins:连接插件,Ansible和Host通信使用

3、ansible执行过程,其中暖色调的代表已经模块化。


三、基础环境的安装与配置

1、ssh免密登录 配置

(1)、SSH免密钥登录设置

  • ansiblemaster:10.1.6.172 Centos7.2

  • ansibleslave1:10.1.6.72 Centos7.2

  • ansibleslave2:10.1.6.73 Centos7.2

  • ansibleslave3:10.1.6.68 Centos6.8

生成公钥/私钥

# ssh-keygen -N ''


分发密钥

# ssh-copy-id root@10.1.6.73
# ssh-copy-id root@10.1.6.72
# ssh-copy-id root@10.1.6.68

测试


注意

[root@ansible_master ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 10.1.6.72
    -bash: ssh-copy-id: command not found
报错了
解决方法:
    yum -y install openssh-clients

2、ansible安装及程序环境:

安装

# yum install ansible

程序:

ansible
ansible-playbook 
ansible-doc

配置文件:

/etc/ansible/ansible.cfg
host_key_checking = False

主机清单:

/etc/ansible/hosts

插件目录:

/usr/share/ansible_plugins/

3.ansible命令的使用说明

常用选项

ansible -m MOD_NAME -a MOD_ARGS
表示调用什么模块,使用模块的那些参数

ansible -h

 [root@localhost ~]# ansible -h
Usage: ansible <host-pattern> [options]

Options:
  -a MODULE_ARGS, --args=MODULE_ARGS    模块的参数,如果执行默认COMMAND的模块,即是命令参数,如:“date”,"pwd"等等
                        module arguments    模块参数
  -k, --ask-pass        ask for SSH password  登录密码,提示输入SSH密码而不是假设基于密钥的验证
  --ask-su-pass         ask for su password    su切换密码
  -K, --ask-sudo-pass   ask for sudo password  提示密码使用sudo,sudo表示提权操作
  --ask-vault-pass      ask for vault password
  -B SECONDS, --background=SECONDS     后台运行超时时间
                        run asynchronously, failing after X seconds
                        (default=N/A)
  -C, --check           don't make any changes; instead, try to predict some    只是测试一下会改变什么内容,不会真正去执行;相反,试图预测一些可能发生的变化
                        of the changes that may occur
  -c CONNECTION, --connection=CONNECTION   连接类型使用。可能的选项是paramiko(SSH),SSH和地方。当地主要是用于crontab或启动。
                        connection type to use (default=smart)
  -f FORKS, --forks=FORKS   并行任务数。NUM被指定为一个整数,默认是5
                        specify number of parallel processes to use
                        (default=5)
  -h, --help            show this help message and exit   打开帮助文档API
  -i INVENTORY, --inventory-file=INVENTORY    指定库存主机文件的路径,默认为/etc/ansible/hosts
                        specify inventory host file
                        (default=/etc/ansible/hosts)
  -l SUBSET, --limit=SUBSET    进一步限制所选主机/组模式  --limit=192.168.91.135 只对这个ip执行
                        further limit selected hosts to an additional pattern
  --list-hosts          outputs a list of matching hosts; does not execute
                        anything else
  -m MODULE_NAME, --module-name=MODULE_NAME   执行模块的名字,默认使用 command 模块,所以如果是只执行单一命令可以不用 -m参数
                        module name to execute (default=command)
  -M MODULE_PATH, --module-path=MODULE_PATH    要执行的模块的路径,默认为/usr/share/ansible/
                        specify path(s) to module library
                        (default=/usr/share/ansible/)
  -o, --one-line        condense output      压缩输出,摘要输出.尝试一切都在一行上输出。
  -P POLL_INTERVAL, --poll=POLL_INTERVAL    调查背景工作每隔数秒。需要- b
                        set the poll interval if using -B (default=15)
  --private-key=PRIVATE_KEY_FILE    私钥路径,使用这个文件来验证连接
                        use this file to authenticate the connection
  -S, --su              run operations with su    用 su 命令
  -R SU_USER, --su-user=SU_USER      指定SU的用户,默认是root用户
                        run operations with su as this user (default=root)
  -s, --sudo            run operations with sudo (nopasswd)    
  -U SUDO_USER, --sudo-user=SUDO_USER    sudo到哪个用户,默认为 root  
                        desired sudo user (default=root)
  -T TIMEOUT, --timeout=TIMEOUT    指定SSH默认超时时间,  默认是10S
                        override the SSH timeout in seconds (default=10)
  -t TREE, --tree=TREE  log output to this directory     将日志内容保存在该输出目录,结果保存在一个文件中在每台主机上。
  -u REMOTE_USER, --user=REMOTE_USER    远程用户, 默认是root用户
                        connect as this user (default=root)
  --vault-password-file=VAULT_PASSWORD_FILE  
                        vault password file
  -v, --verbose         verbose mode (-vvv for more, -vvvv to enable    详细信息
                        connection debugging)
  --version             show program's version number and exit   输出ansible的版本

4、ansible主机清单的配置

vim /etc/ansible/hosts

定义方式:

  • 直接指明主机地址或主机名

      blue.example.com
      192.168.100.1
  • 定义一个主机组[组名]把地址或主机名加进去

      [webservers]
      alpha.example.org
      beta.example.org
      192.168.1.100
    
      #组成员可以使用通配符来匹配,如下
      www[001:006].example.com  #表示从www001-www006主机
  • 如果你没有使用公钥,想要使用密码,你也可以这样写(适用于第一次登陆控制)

      格式:【主机名】 【主机地址】 【主机密码】  默认是root用户来进行的
    
      [keepalived]
      keepalived1  ansible_ssh_host=192.168.146.136 ansible_ssh_pass="test"
      keepalived2  ansible_ssh_host=192.168.146.137 ansible_ssh_pass="test"


[testhost]
10.6.0.152
10.6.0.153  ansible_ssh_host=10.6.0.153 ansible_ssh_pass="yanjin"

10.6.0.153  ansible_ssh_host=10.6.0.153 ansible_ssh_pass="yanjin"

5、ansible的使用ansible-doc

一般用法:

ansible-doc -l 获取模块信息

ansible-doc -s MOD_NAME 获取指定模块的使用帮助

[root@localhost ~]# ansible-doc  -h
Usage: ansible-doc [options] [module...]

Show Ansible module documentation     显示Ansible模块文档

Options:
  --version             show program's version number and exit    显示ansible-doc的版本号
  -h, --help            show this help message and exit  显示命令参数API文档
  -M MODULE_PATH, --module-path=MODULE_PATH   查询模块,--module-path=MODULE_PATH  指定模块的路径
                        Ansible modules/ directory
  -l, --list            List available modules   显示已存在的所有模块列表
  -s, --snippet         Show playbook snippet for specified module(s)   显示playbook制定模块的用法
  -v                    Show version number and exit   显示ansible-doc的版本号

测试:成功


ansible 10.6.0.152 -m command -a "id root"

10.6.0.152 | SUCCESS | rc=0 >>

uid=0(root) gid=0(root) groups=0(root)

ansible 10.6.0.153 -m command -a "id root"
10.6.0.153 | SUCCESS | rc=0 >>
uid=0(root) gid=0(root) groups=0(root)

ansible testhost -m command -a "id root"
10.6.0.152 | SUCCESS | rc=0 >>
uid=0(root) gid=0(root) groups=0(root)
10.6.0.153 | SUCCESS | rc=0 >>
uid=0(root) gid=0(root) groups=0(root)

[root@master ~]# ansible proxy -m command -a "ls -lh /var/log/squid/access.log"
10.6.0.100 | SUCCESS | rc=0 >>
-rw-r----- 1 squid nogroup 0 Nov 17 11:02 /var/log/squid/access.log
[root@master ~]# ansible proxy -m command -a "ls -lh /var/log/squid/store.log"
10.6.0.100 | SUCCESS | rc=0 >>
-rw-r----- 1 squid nogroup 320 Nov 17 11:03 /var/log/squid/store.log
[root@master ~]# 

四、ansible使用 之一 “命令管理方式”

常用模块:

=================================
ping:探测目标主机是否存活;

=================================

command:在远程主机执行命令;不支持|管道命令

=================================

ansible storm_cluster -m command -a "ls –al /tmp/resolv.conf"

–

相关选项如下:
creates:一个文件名,当该文件存在,则该命令不执行
free_form:要执行的linux指令
chdir:在执行指令之前,先切换到该目录
removes:一个文件名,当该文件不存在,则该选项不执行
executable:切换shell来执行指令,该执行路径必须是一个绝对路径

shell:在远程主机上调用shell解释器运行命令,支持shell的各种功能,例如管道等 ;

注意:command和shell模块的核心参数直接为命令本身;而其它模块的参数通常为“key=value”格式;

================================

copy:复制文件到远程主机,可以改权限等

================================

用法:
(1) 复制文件
    -a "src=  dest=  "
(2) 给定内容生成文件
        -a "content=  dest=  "
  • 常用用法

    第一种:直接复制

    第二种:生成内容的复制


  • ansible test -m copy -a "src=/root/test dest=/home/testcopy mode=640"
    10.6.0.152 | SUCCESS => {
        "changed": true,
        "checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
        "dest": "/home/testcopy",
        "gid": 0,
        "group": "root",
        "md5sum": "d41d8cd98f00b204e9800998ecf8427e",
        "mode": "0640",
        "owner": "root",
        "size": 0,
        "src": "/root/.ansible/tmp/ansible-tmp-1479352868.18-83082559134161/source",
        "state": "file",
        "uid": 0

    }
相关选项如下:
backup:在覆盖之前,将源文件备份,备份文件包含时间信息。有两个选项:yes|no
content:用于替代“src”,可以直接设定指定文件的值
dest:必选项。要将源文件复制到的远程主机的绝对路径,如果源文件是一个目录,那么该路径也必须是个目录
directory_mode:递归设定目录的权限,默认为系统默认权限
force:如果目标主机包含该文件,但内容不同,如果设置为yes,则强制覆盖,如果为no,则只有当目标主机的目标位置不存在该文件时,才复制。默认为yes
others:所有的file模块里的选项都可以在这里使用
src:被复制到远程主机的本地文件,可以是绝对路径,也可以是相对路径。如果路径是一个目录,它将递归复制。在这种情况下,如果路径使用“/”来结尾,则只复制目录里的内容,如果没有使用“/”来结尾,则包含目录在内的整个内容全部复制,类似于rsync。

===============================
file :设置文件属性。

===============================

用法:
(1) 创建目录:

-a "path=。。。  state=directory"

(2) 创建链接文件:

-a "path=。。。  src=...  state=link"

(3) 删除文件:

-a "path=。。。  state=absent"


相关选项如下:

force:需要在两种情况下强制创建软链接,一种是源文件不存在,但之后会建立的情况下;另一种是目标软链接已存在,需要先取消之前的软链,然后创建新的软链,有两个选项:yes|no
group:定义文件/目录的属组
mode:定义文件/目录的权限
owner:定义文件/目录的属主
path:必选项,定义文件/目录的路径
recurse:递归设置文件的属性,只对目录有效
src:被链接的源文件路径,只应用于state=link的情况
dest:被链接到的路径,只应用于state=link的情况
state:
       directory:如果目录不存在,就创建目录
       file:即使文件不存在,也不会被创建
       link:创建软链接
       hard:创建硬链接
       touch:如果文件不存在,则会创建一个新的文件,如果文件或目录已存在,则更新其最后修改时间
       absent:删除目录、文件或者取消链接文件

==============================
fetch: 从远程某一个主机获取文件到本地

==============================

cron: 管理cron计划任务

==============================


ansible all -m cron -a "name='sync time' state=absent" 表示删除此任务

- a "": 设置管理节点生成定时任务
action: cron
backup=    # 如果设置,创建一个crontab备份
cron_file=          #如果指定, 使用这个文件cron.d,而不是单个用户crontab
day=       # 日应该运行的工作( 1-31, *, */2, etc )
hour=      # 小时 ( 0-23, *, */2, etc )
job=       #指明运行的命令是什么
minute=    #分钟( 0-59, *, */2, etc )
month=     # 月( 1-12, *, */2, etc )
name=     #定时任务描述
reboot    # 任务在重启时运行,不建议使用,建议使用special_time
special_time       # 特殊的时间范围,参数:reboot(重启时),annually(每年),monthly(每月),weekly(每周),daily(每天),hourly(每小时)

state        #指定状态,prsent表示添加定时任务,也是默认设置,absent表示删除定时任务

user         # 以哪个用户的身份执行
weekday      # 周 ( 0-6 for Sunday-Saturday, *, etc )

=========================
yum:yum安装软件,也有apt,zypper

=========================

conf_file         #设定远程yum安装时所依赖的配置文件。如配置文件没有在默认的位置。
disable_gpg_check    #是否禁止GPG checking,只用于`present' or `latest'。
disablerepo   #临时禁止使用yum库。 只用于安装或更新时。
enablerepo    #临时使用的yum库。只用于安装或更新时。
name=            #所安装的包的名称
state               #present安装, latest安装最新的, absent 卸载软件。
update_cache  #强制更新yum的缓存。

==============================
service: 服务程序管理

==============================

arguments         #命令行提供额外的参数
enabled           #设置开机启动。
name=             #服务名称
runlevel          #开机启动的级别,一般不用指定。
sleep             #在重启服务的过程中,是否等待。如在服务关闭以后等待2秒再启动。
state     #started启动服务, stopped停止服务, restarted重启服务, reloaded重载配置

启动httpd服务:

ansible all -m service -a 'name=httpd state=started'

开机自启动

ansible all -m service -a "name=httpd  enabled=true"

================================
group: 组管理

================================

[root@node1 ~]# ansible-doc -s group
- name: 添加或删除组
action: group
gid       # 设置组的GID号
name=     # 管理组的名称
state     # 指定组状态,默认为创建,设置值为absent为删除
system    # 设置值为yes,表示为创建系统组

================================
User:用户管理

================================

-a ""
action: user
comment    # 用户的描述信息
createhom  # 是否创建家目录
force      # 在使用`state=absent'是, 行为与`userdel --force'一致.
group      # 指定基本组
groups     # 指定附加组,如果指定为('groups=')表示删除所有组
home       # 指定用户家目录
login_class     #可以设置用户的登录类 FreeBSD, OpenBSD and NetBSD系统.
move_home       # 如果设置为`home='时, 试图将用户主目录移动到指定的目录
name=           # 指定用户名
non_unique      # 该选项允许改变非唯一的用户ID值
password        # 指定用户密码
remove          # 在使用 `state=absent'时, 行为是与 `userdel --remove'一致.
shell           # 指定默认shell
state           #设置帐号状态,不指定为创建,指定值为absent表示删除
system          # 当创建一个用户,设置这个用户是系统用户。这个设置不能更改现有用户。
uid             #指定用户的uid
update_password  # 更新用户密码
expires         #指明密码的过期时间

例:创建用户并添加密码


===================================
setup:获取指定主机的facts。


ansible入门详解---值得收藏 文章目录一、yum安装ansible二、相关文件介绍`2.1.配置文件`a、/etc/ansible/ansible.cfg解释b、/etc/ansible/hosts格式`2.2.可执行文件`三、配置基于root用户Key的验证四、ansible命令执行过程五、执行状态六、常用模块`指定远程主机用户,并sudo到root用户` 参考视频:https://edu.51cto.com/lesson/306549 一、yum安装ansible yum -y install epel-release yum 阅读详情

相关推荐

自动化运维工具—Ansible

(1)Ansible其中一个比较鲜明的特性Agentless,即无Agent的存在,只需在某个作为控制节点的主机上安装一次Ansible即可,通常它基于ssh连接来控制远程主机,远程主机上不需要安装Ansible或其它额外的服务。(2)Ansible的另一个比较鲜明的特性是它的绝大多数模块都具备幂等性(idempotence)。所谓幂等性,指的是多次操作或多次执行对系统资源的影响是一致的。注意:script模块不具有幂等性。所以建议用剧本来执行。

Yuzhang2046的博客 3748

非常好的Ansible入门教程(超简单)

Ansible是一个配置管理和配置工具,类似于Chef,Puppet或Salt。这是一款很简单也很容易入门的部署工具,它使用SSH连接到服务器并运行配置的任务,服务器上不用安装任何多余的软件,只需要开启ssh,所有工作都交给client端的ansible负责。 关于Ansible的一个好处是,将bash脚本转换为可执行任务是非常容易的。我们可以编写自己的配置程序,但是Ansible更加干净,因为它

pushiqiang的博客 15万+

光模块基础知识【快速入门】02

光模块是用于交换机与设备之间传输的载体,是光纤通信系统中的核心器件。主要作用是发射端将设备的电信号转换成光信号。 光纤通道光模块和以太网光模块 光纤通道光模块 光纤通道(FC, Fiber Channel)是一种高速网络数据传输协议。光纤通道协议可以有序无损地传输原始数据,它主要用于在数据中心、电脑服务器、交换机与存储网络中进行数据传输。 FC光模块遵循FC协议,充当着光纤通道系统之间的接口,也是光纤存储网络设备间的接口。它们主要用于数据中心的光纤通道存储网络链接中。 FC光模块具有小型化和低.

Jin Hanquan的博客 3万+

Ansible的简介及部署

1. ansible简介 1.1 什么是ansible ansible是一款开源自动化平台,是一个配置管理工具,自动化运维工具 1.2 ansible的优点 跨平台支持 人类可读自动化: ansible提供linux,Windows,unix和网络设备的无代理支持,适用于物理、虚拟、云和容器环境 完美描述应用:playbook 轻松管理版本控制:playbook是纯文本,可视作源代码...

Rainable 1万+

自动驾驶必备:5分钟搞懂gPTP如何实现μs级时间同步(附开源代码)

本文深入解析了gPTP协议在自动驾驶系统中实现微秒级时间同步的核心机制与工程实践。针对多传感器融合与跨域协同的严苛需求,文章拆解了gPTP的频率同步、对等延迟测量与时间偏移校正三步流程,并提供了基于linuxptp和AVnu gPTP两大开源代码库的实战配置指南与性能评估方法,助力开发者构建高精度、高可靠的车载时间同步网络。

weixin_29211309的博客 170

BODAS说明书的中文版与相关资料总结

花了三天时间配了控制器的接线口,找了软件安装的一套东西。 又花了一周时间零零散散在网上只找到关于控制器少得可怜的资料: 1.力士乐控制器RC6系列介绍 2.力士乐控制器手册不完整版 3.RC6-9程序下载 力士乐配套的只有德语和英语两版,人工翻译专业文件的价格太惊人,决定自己写一版方便大家。有不正之处欢迎指出。 For these controllers, in the event of an...

我的技术日常 6497

Ansible全套详细教程

我们使用ssh与托管节点(服务器)通信,默认使用sftp(使用SSH协议进行FTP传输的协议叫做SFTP,),如果不可用,需要在ansible.cfg文件中配置成scp方式 这里不建议使用virtualenv虚拟环境来安装ansible Inventory文件 对于每一个host可以选择连接类型和连接用户名: [targets] localhost ansible_connect...

凡凡不知所错 3万+

勇闯dify v1.0.0之设置模型供应商。解决:Reached maximum retries (3) for URL https://marketplace.dify.ai/

朋友们,大家好,今天带大家来勇闯dify v1.0.0。为什么叫勇闯呢?我就这么说吧,本来我昨天就想带大家勇闯v1.0.0的。但是dify的marketplace访问不了。公司的网和手机热点都试了,就是访问不了。我们连个模型都没有,还勇闯个球啊,对吧,就搁置了。今天,我赶紧看看这个marketplace好了没。一看,可以了。赶紧写下这篇博客,帮助同志们走出困境。

xiezhipu的博客 4617

Ansible 超详细教程

超级详细的,适合跟随操作的Ansible教程

MagnumLuke的博客 4824

rk3588 适配音频解码芯片 ALC5616

在 RK3588 的高性能方案中,选择 **ALC5616**(来自 Realtek 瑞昱)通常意味着项目更侧重于**音频性能的稳定性**以及**全球供应链的通用性**。

weixin_35723192的博客 147

YOLO模型在STM32微控制器上的部署:1.98M参数如何塞进嵌入式设备?

<think>我们根据内容生成不超过150字的摘要。内容主要是关于YOLO模型在STM32微控制器上的部署,包括STM32N6 NPU、模型量化、工具链、开源方案和架构设计。摘要需要简洁概括主要点。 字数限制:≤150字。需要包含关键信息:STM32N6运行YOLO,困难,方案(NPU、INT8量化、工具链),性能(34 FPS 9.4mJ)。结尾可能提到开源和生态。 写中文摘要。注意不超过150字。</think>本文探讨YOLO模型在STM32微控制器上的部署。集成NPU的STM32N6搭配轻量化YOL

2601_95807009的博客 258

在CentOS 7中安装与配置【Ansible】的详细指南

本文是对Ansible这一自动化运维工具的全面介绍,重点聚焦于其简介与核心组件的深入解析。Ansible作为一款开源的自动化平台,凭借其易用性、灵活性和强大的功能,在自动化运维领域占据了一席之地。文章开篇简要介绍了Ansible的起源、发展以及它在简化运维流程、提高运维效率方面的重要作用。 随后,文章深入探讨了Ansible的四大核心组件:Inventory(清单)、Playbooks(剧本)、Modules(模块)和Ad-hoc Commands(即时命令)。Inventory作为Ansible管理的主

博客虽小,世界尽在其中 5361

“组合”的本质,是一场优雅的试错:手把手带你搞懂回溯与递归

刷题不是为了记住代码,而是为了构建“问题->模型->递归->剪枝”的抽象能力。递归调用的结构化思维;回溯法的路径构建和撤销机制;参数控制的边界判断与剪枝技巧;解空间模型的“树状图”画法;这些思想贯穿算法设计和解决复杂问题的全流程。

Echo_Wish 892

Ansible常用模块

bash无论在命令行上执行,还是bash脚本中,都需要调用cd、ls、copy、yum等命令;模块就是Ansible的“命令”,模块是ansible命令行和脚本中都需要调用的。常用的Ansible模块有yum、copy、template等。

weixin_53388991的博客 6439

【SA8155P】AIS Camera相关内容的简单介绍

【SA8155P】AIS Camera相关内容的简单介绍

静谧、淡雅 1709

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Ansible Filter滤波器的使用(一)

介绍一下Ansible的内置函数,也被称之为过滤器

m0_62856417的博客 2547

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

一、ansible基础

使用python语言编写,基于ssh进行管理,因此软件的被管端不需要安装任何软件而ansible通过各种模块进行操作管理远程主机1.所有机器配置IP地址和yum源,并关闭SELINUX和防火墙ansible控制端安装ansible3.在控制端配置,名称解析和免密登录名称解析需要添加所有的主机免密登录copy到被控端注意以下几点1.使用一套ansible软件爱呢,可能会管理多种环境,可以创建不同的工作目录来实现相应的需求。2.不同的目录只需把主机写入到相应的工作目录的主机清单。

m0_46683705的博客 1734

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ansible的详细讲解

Ansibel详细用法一:Ansible介绍1.Ansible是什么2.Ansible配置文件优先级3.Ansible的特性和优点(1).Ansible的特性(2).ansible的优点二、Ansible的安装1.离线安装2.在线安装三、Ansiible的基本用法1.linux端口、免密的配置(Inventory参数说明)2.Ansible远程执行命令测试连通性四、Ansible模块1.shell模块五、ansible-playbook1.ansible获取远程主机ip地址2.when语句3.循环(1).w

weixin_46031767的博客 381

Ansible简介

不是 2.X 版本的 Python.我们不使用 "/usr/bin/env" 机制,因为这要求远程用户的路径设置正确,且要求 "python" 可执行程序名不可为 python以外的名字(实际有可能名为python26). 与 ansible_python_interpreter 的工作方式相同,可设定如 ruby 或 perl 的路径....-M MODULE_PATH, --module-path=MODULE_PATH 要执行的模块的路径,默认为/usr/share/ansible/

jingyu飞鸟 5270

[Ansible] Ansible角色管理

文章摘要:本文介绍了Ansible角色的概念、结构及使用方法。Ansible角色通过标准化目录结构(tasks、handlers、vars等)封装可重用代码,提升自动化效率。详细说明了角色创建、调用、依赖关系的配置方法,并演示了系统角色(如timesync、selinux)的实际应用。此外,还介绍了Ansible Galaxy平台的角色搜索、安装和管理技巧,包括如何部署第三方角色(如haproxy)。文章强调了角色在复杂环境中的优势,包括代码复用、模块化管理和多团队协作,并提供了从基础创建到高级集成的完整实

qq_53232485的博客 1114

Ansible安装使用详细教程

Ansible 就是个 **“批量处理的工具”**—— 简单说:你需要给100台服务器配置网卡信息,如果一台一台处理需要处理100次,但是你只要会使用ansible,此时就可以使用ansible来帮你完成这个繁琐的问题,在这 100 台机器上一次性完成所有操作Ansible只需要在服务端安装ansible,无需在每个客户端安装客户端程序,通过ssh的方式来进行客户端服务器的管理,基于模块来实现批量数据配置、批量设备部署以及批量命令执行。

Z2831631429的博客 1494

Ansible(一)

Salt由Salt Master和被称为Salt Minions的客户端组成,后者作为代理在每个节点机器上运行。Puppet的工作方式是由节点请求更新,而Salt的工作方式与此相反,Salt Master将所有配置推送给所有客户机。Salt还可以在多主机配置中运行。如果一个Salt主服务器发生故障,代理将连接到配置中列出的另一个主服务器。这一功能提高了整个系统的整体可用性和冗余度Salt的另一个好处是,它允许一次并行执行多个命令。

fantuan_sss的博客 1149

Ansible 详细笔记

用于存储被控节点的信息,支持静态文件和动态生成两种方式。

2403_86763298的博客 875

Ansible私房菜————ansible 常用命令|ansible 常用模块|超详细图解|

目录 一、ansible 常用命令1、ansible 命令集2、ansible-doc 命令 二、ansible 常用模块1、ping模块2、command 模块3、cron模块4、user模块5、group模块6、shell模块7、copy模块8、file模块9、yum模块10、service模块11、script模块12、setup模块 一、ansible 常用命令 1、ansible 命令集 /usr/bin/ansible  #Ansibe AD-Hoc 临时命令执行工..

🈚️ 1947

ansible copy模块_ansible超详细讲解,值得收藏

如果做过运维或者网站开发的朋友,一定接触过服务部署,那么一般的服务部署流程是什么呢?找一台Linux机器,安装好运行环境所需要的软件,然后把服务部署上去。一台机器可以这么做,如果是集群呢?每一台都要这么做。假如我们管理了几百台机器,突然有一天公司要求在所有机器上都安装某一款软件,那么手动显然是不行的,这个时候就必须要借助自动化脚本来完成这项任务了。自动化执行的方式有很多种,最原始的就是shell脚...

weixin_39612817的博客 2925
上一篇: ansible-playbook 使用详解
下一篇: Nginx结合GeoIP库
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值