登录
首页 >  文章 >  python教程

Python调用Ansible执行脚本全攻略

时间:2025-12-16 19:58:34 237浏览 收藏

推广推荐
免费电影APP ➜
支持 PC / 移动端,安全直达

怎么入门文章编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《Python中使用Ansible执行脚本的方法》,涉及到,有需要的可以收藏一下

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

python ansible如何执行脚本?

在 Ansible 中执行 Python 脚本有多种方式,最常见的是通过 commandshell 模块直接运行脚本,或使用 script 模块在远程主机上执行本地脚本。以下是几种典型用法:

1. 使用 script 模块执行本地 Python 脚本

如果你有一个写好的 Python 脚本(比如 my_script.py)在控制机上,想在远程主机上运行它,可以使用 script 模块。

示例:

- name: 执行本地 Python 脚本
  ansible.builtin.script: my_script.py arg1 arg2

Ansible 会将该脚本复制到远程主机并执行。注意:远程主机需要安装 Python 环境。

2. 使用 command 或 shell 模块运行远程已存在的脚本

如果 Python 脚本已经存在于远程主机上,可以直接调用。

示例:

- name: 运行远程的 Python 脚本
  ansible.builtin.shell: python3 /path/to/remote_script.py

推荐使用 shell 模块,因为它支持环境变量、管道等 Shell 特性。

3. 直接内联执行 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执行脚本全攻略》的详细内容,更多关于的资料请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>