在Mac上执行Ansible时所做的操作是切换到Windows操作系统

首先

关于本文

这篇文章总结了在Mac上执行操作之前必须完成的步骤,以 Ansible 操作 Windows 为参考。

记录的内容和已完成事项清单

    • Mac に Ansible をインストールするところから win_ping が実行できるところまで

Homebrew で Ansible をインストール
pip インストール、アップデート
pip で pywinrm をインストール
Mac から Windows への ping
win_ping 実行

没有写的东西

    Windows 側の設定

环境

Mac (执行 Ansible 的一方)

    • macOS Mojave ( 10.14.6 )

 

    • Homebrew 2.1.13

 

    • Ansible 2.8.5

 

    • Python 3.7.4

 

    pip 19.2.3

Windows(执行Ansible的一方)

    Windows 10 Home 1903

操作步骤

安装 Ansible

使用Homebrew安装Ansible。

brew install ansible

如果遇到Python安装错误的情况

使用Homebrew安装的Python,在执行命令后解决了链接错误问题。

安装pip

根据 Ansible 安装中的 Python 没有包含 pip,因此在 python2.7.10 中运行 pip 时出现 “command not found” 的错误。 参考安装 pip。

安装pywinrm

sudo pip install pywinrm

如果在pywinrm安装过程中遇到错误

由于pip刚被安装完,可能是因为openssl相关问题导致了错误。
我更新了pip本身后再次运行,成功了。

sudo pip install -U pip

参考:https://github.com/ansible/ansible/issues/34056
虽然不是完全相同的问题,但由于解决方法可能是相似的。

从Mac向Windows发送ping命令

如果在Windows上进行了Ansible的配置,可以先进行连接确认。

执行win_ping

创建一个清单文件,并测试 win_ping。

ansible -i hosts windows -m win_ping

如果使用fork时出现错误

在按照这里写的指示设置环境变量后,问题就解决了。

将OBJC_DISABLE_INITIALIZE_FORK_SAFETY设为YES导出

最后

我觉得我已经遇到了几乎会出现的错误,但现在从Mac成功地将Windows进行了Ansible操作。
如果有时间,我也想尝试一下这边(不是WinRM连接而是ssh连接的)。

bannerAds