Ansible配置支持Windows(远程节点)流程

1.系统/软件版本

  • 控制节点:CentOS7.3 x64
  • 远程节点:Windows7 sp1 x64
  • pip:9.0.1
  • Ansible:>=2.4

2.控制节点安装支持(CentOS7)

#安装ansible>=2.4
pip install ansible>=2.4
#安装windows支持依赖
pip install http://github.com/diyan/pywinrm/archive/master.zip#egg=pywinrm
yum -y install python-devel krb5-devel krb5-libs krb5-workstatio
pip install kerberos

问题——TypeError: call() takes exactly 2 arguments (1 given)

控制端执行ansible win -m win_ping时出现下面错误

Traceback (most recent call last):
...
...
...
  File "/usr/lib/python2.7/site-packages/packaging/requirements.py", line 59, in 
  MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker")
TypeError: __call__() takes exactly 2 arguments (1 given)

解决方法:升级setuptools

pip install setuptools --upgrade

3.远程节点Windows安装支持(Windows7_x64_sp1)

  1. 设置PowerShell策略
    以管理员身份运行PowerShell,输入set-executionpolicy remotesigned,确认执行。
  2. 安装.NET Framework 4.5.2
  3. 安装PowerShell-3.0补丁 需要重启
  4. 配置winrm
    以管理员身份运行PowerShell,运行下面的脚本ConfigureRemotingForAnsible.ps1
  5. 检查配置

问题——PowerShell 无法加载文件ps1,因为在此系统中禁止执行脚本

PS C:\> .\upgrade_to_ps3.ps1
无法加载文件 C:\upgrade_to_ps3.ps1,因为在此系统中禁止执行脚本。有关详细信息,请参阅 "get-help about_signing"。
所在位置 行:1 字符: 21
+ .\upgrade_to_ps3.ps1 <<<<
    + CategoryInfo          : NotSpecified: (:) [], PSSecurityException
    + FullyQualifiedErrorId : RuntimeException

解决方法:设置PowerShell策略

你可能感兴趣的:(工具)