ansible-2.x相关内容

使用 with_items 和 register 进行迭代

寻求帮助解决我几个小时以来一直在努力解决的问题.我想迭代一个列表,运行一个命令,为每个命令注册输出,然后在每个唯一的寄存器 {{ someregister }}.stdout 上迭代调试 例如下面的代码会吐出"msg":"1"和"msg":"2" ---- 主机:本地主机收集事实:假变量:数字:- 名称:“第一"整数:“1"- 名称:“第二个"整数:“2"任务:- 名称:寄存器输出命令:“/ ..
发布时间:2021-11-11 01:17:28 其他开发

Ansible:创建一个相对符号链接

在我的剧本中,我需要为一个仓库创建一个符号链接. 使用命令(shell),它可能像这样工作: ########## 创建符号链接- 名称:创建符号链接外壳:ln -s "{{SOURCE_FOLDER}}" 符号链接参数:chdir : "/opt/application/i99/"什么时候:- ansible_host 分组['ihm'] -> 像这样,我的符号链接是直接在 i99 存 ..
发布时间:2021-11-11 01:15:56 其他开发

如何使用ansible杀死正在运行的进程?

我有一个可靠的剧本来杀死正在运行的进程,并且大部分时间都运行良好!但是,有时我们会发现无法杀死的进程,因此“wait_for"超时,引发错误它停止了这个过程. 当前的解决方法是手动进入框,使用“kill -9"并再次运行 ansible playbook,所以我想知道是否有任何方法可以从 ansible 本身处理这种情况?,我的意思是,我不'不想从一开始就使用 kill -9 但我可能是一种 ..
发布时间:2021-11-11 01:15:48 其他开发

如何显示长时间运行的 Ansible 任务的进度?

我有一些 Ansible 任务,它们执行很长的操作——比如使用 S3 文件夹运行同步操作.并不总是很清楚它们是否在进行中,或者只是卡住了(或者 ssh 连接已经死亡),因此显示某种进度输出会很好.如果直接显示命令的 stdout/stderr,我会看到,但 Ansible 会捕获输出. 将输出回传是 Ansible 以当前形式解决的一个难题.但是,我可以使用任何 Ansible 技巧来提供某 ..
发布时间:2021-11-11 01:14:52 其他开发

仅当变量包含特定字符串时才运行 Ansible 任务

我有多个任务取决于 variable1 的值.我想检查值是否在 {{variable1}} 中,但出现错误: - name:当变量1中的值出现时做某事命令:时间:“{{variable1}} 中的‘值’" 我使用的是 ansible 2.0.2 解决方案 如果 variable1 是一个字符串,并且您正在其中搜索一个子字符串,这应该有效: when: '"value" in vari ..

块内任务的附加条件

我正在尝试将一些带有 when 条件的任务包含在块中.此块中的一些任务还有其他条件.问题是这些任务(带有附加条件)被跳过.块的条件和所有附加条件都为真. 下面是一个示例播放: - 块:- 设置事实:package_to_install: "{{ packages_to_install }} + [ '{{ (distrs.stdout | from_json).postgresql }}' ..
发布时间:2021-11-11 01:13:02 其他开发

Ansible 正则表达式转义美元字符

我正在尝试使用 Ansible 修改配置文件中的 URL 值 $CONSOLE_URI = "http://172.18.18.103/controller/"; 我正在使用 lineinfile 模块,但它不起作用,我试图用双反斜杠转义 $,但它也没有用. - lineinfile: dest=/etc/log.conf regexp='^\\$CONSOLE_URI' line='$C ..
发布时间:2021-11-11 01:12:27 其他开发

在 Ansible 中搜索字典值

有一本这样的字典: ossec_datacenter:亚特兰大:主机名:'server1.fakedomain.net'ip: '192.168.12.170'端口:'1515'迈阿密:主机名:'server2.fakedomain.net'ip: '192.168.20.31'端口:'1514'达拉斯:主机名:'server2.fakedomain.net'ip: '192.168.20.20 ..
发布时间:2021-11-11 01:11:37 其他开发

Ansible:如何解决“sudo:需要密码"错误?

我有 9 台服务器,我正在尝试使用 ansible 安装一个软件包,我可以使用密码通过 ssh 连接到其中的 5 台服务器,而其他 4 台在 ssh 连接时不会询问任何密码. 但是我已经将 id_rsa.pub 密钥复制到了所有 9 个服务器. 现在 ansible 脚本在 5 个服务器上运行良好,但剩下 4 个我收到以下错误消息. 致命:[xxx0?]:失败!=> {"chan ..
发布时间:2021-11-11 01:11:08 其他开发

Ansible:如何向“命令"添加变量或“壳"

是否可以在 command 或 shell 模块上使用变量?我有以下代码,我想使用变量文件来提供一些配置: 我想从我的变量文件中读取 Hadoop 版本.在 ansible 的其他模块上,我可以使用 {{ansible_version}},但使用命令或 shell 则不起作用. - 名称:启动ZooKeeper HA命令:hadoop-2.7.1/bin/hdfs zkfc -format ..
发布时间:2021-11-11 01:10:36 其他开发

Ansible 委托和 run_once

我为本地和开发环境编写了一个特定角色,该角色将从主要用作主数据库的 dbserver 组中的第一台服务器删除并重新创建数据库. group_vars/dbserver[数据库服务器]vagrant1 # 主数据库vagrant2 # 从数据库 之后,如果我需要删除数据库并再次创建数据库,基本上我只需要在组中的第一台服务器上运行该命令. - 名称:删除数据库mysql_db: name={{ ..
发布时间:2021-11-11 01:10:14 其他开发

Ansible 委托和 run_once

我为本地和开发环境编写了一个特定角色,该角色将从主要用作主数据库的 dbserver 组中的第一台服务器删除并重新创建数据库. group_vars/dbserver[数据库服务器]vagrant1 # 主数据库vagrant2 # 从数据库 之后,如果我需要删除数据库并再次创建数据库,基本上我只需要在组中的第一台服务器上运行该命令. - 名称:删除数据库mysql_db: name={{ ..
发布时间:2021-11-11 01:10:05 其他开发

Ansible:比较变量

我正在尝试比较一些变量,所以这是我的情况: pg_master_ip 显然是一个ip. ansible 不解析 pg_master_ip. bond0.stdout 是早期注册任务的结果. 如果我可以使用 {{ hostvars[inventory_hostname]['ansible_bond0'].ipv4.address }} 我会更开心,但我不知道如何. - 名称 ..
发布时间:2021-11-11 01:09:37 其他开发

如何根据网络(子网)成员资格在 Ansible 中创建条件副本

如果文件在特定子网中有接口,我想将文件的一个版本复制到服务器,如果在该子网中没有接口,我想将文件的一个版本复制到服务器.下面是一个工作,但我认为不是最佳解决方案.我希望有一种更好的方法可以满足以下条件... 保持动态(使用事实,我不想为每个服务器手动设置变量并手动为子网中和不在子网中的服务器创建组) 减少重复(可以在一项任务中处理吗?) 不必列出所有可能的接口名称(例如 eth0、eth ..
发布时间:2021-11-11 01:09:17 其他开发