在Ansible中执行Python脚本主要有四种方式:1. 使用script模块执行本地脚本,Ansible会自动将其复制到远程主机并运行,适用于控制机存放脚本的场景;2. 使用shell或command模块运行远程主机上已存在的Python脚本,推荐shell模块以支持管道和环境变量;3. 通过shell模块内联执行单行Python代码,适合简单任务;4. 先用copy模块将脚本上传至远程主机,再通过shell模块执行,便于权限管理和调试。选择方法需根据脚本位置、参数传递需求及远程Python环境决定,核心前提是目标主机必须安装Python。

在 Ansible 中执行 Python 脚本有多种方式,最常见的是通过 command、shell 模块直接运行脚本,或使用 script 模块在远程主机上执行本地脚本。以下是几种典型用法:
1. 使用 script 模块执行本地 Python 脚本
如果你有一个写好的 Python 脚本(比如 my_script.py)在控制机上,想在远程主机上运行它,可以使用 script 模块。
示例:
立即学习“Python免费学习笔记(深入)”;
PHP Apache和MySQL 网页开发初步
本书全面介绍PHP脚本语言和MySOL数据库这两种目前最流行的开源软件,主要包括PHP和MySQL基本概念、PHP扩展与应用库、日期和时间功能、PHP数据对象扩展、PHP的mysqli扩展、MySQL 5的存储例程、解发器和视图等。本书帮助读者学习PHP编程语言和MySQL数据库服务器的最佳实践,了解如何创建数据库驱动的动态Web应用程序。
385 查看详情
- name: 执行本地 Python 脚本 ansible.builtin.script: my_script.py arg1 arg2
Ansible 会将该脚本复制到远程主机并执行。注意:远程主机需要安装 Python 环境。
2. 使用 command 或 shell 模块运行远程已存在的脚本
如果 Python 脚本已经存在于远程主机上,可以直接调用。
示例:
立即学习“Python免费学习笔记(深入)”;
- name: 运行远程的 Python 脚本 ansible.builtin.shell: python3 /path/to/remote_script.py
推荐使用 shell 模块,因为它支持环境变量、管道等 Shell 特性。
3. 直接内联执行 Python 代码
对于简单任务,也可以直接运行 Python 一行代码。
示例:
立即学习“Python免费学习笔记(深入)”;
- name: 执行 Python 单行命令 ansible.builtin.shell: python3 -c "print('Hello from remote')"
4. 结合 copy 和 script 分发并执行脚本
当脚本需要先上传再执行时:
- name: 复制脚本到远程主机 ansible.builtin.copy: src: my_script.py dest: /tmp/my_script.py mode: '0755'
- name: 执行已复制的脚本ansible.builtin.shell: python3 /tmp/my_script.py
这种方式更灵活,便于调试和权限控制。
基本上就这些方法。选择哪种方式取决于脚本位置、是否需要传参、以及远程环境配置。关键是确保目标主机有 Python 可执行环境。
以上就是python ansible如何执行脚本?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/904070.html
微信扫一扫
支付宝扫一扫