- windows准备
1.1 powershell 升级到powershell4.0后
get-host
1.2 Windows客户端配置winrm,启用powershell远程管理
打开powershell终端,按以下步骤执行命令(正常情况不会报错,如果有报错,请检查输入的命令是否正确,或者手动输入命令进行配置)
- 查看powershell执行策略
get-executionpolicy
- 更改powershell执行策略为remotesigned
set-executionpolicy remotesigned
- 配置winrm service并启动服务
winrm quickconfig
- 查看winrm service启动监听状态
winrm enumerate winrm/config/listener
- 修改winrm配置,启用远程连接认证
winrm set winrm/config/service/auth '@{Basic="true"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
四、Windows客户端防火墙配置
通过命令winrm enumerate winrm/config/listener检查winrm服务正确启动之后
添加防火墙信任规则,允许5985端口通过
五、Ansible服务端配置和测试管理Windows服务器(服务端操作)
- 添加windows客户端连接信息
编辑/etc/ansible/hosts,添加客户端主机信息(ansible服务端的配置)
[windows]
172.16.10.23 ansible_ssh_user="Administrator" ansible_ssh_pass="zteict123" ansible_ssh_port=5985 ansible_connection="winrm" ansible_winrm_server_cert_validation=ignore
主控端
在/etc/ansible/hosts中添加:
10.110.87.200 ansible_ssh_user="administrator" ansible_password="******" ansible_ssh_port=5985 ansible_connection="winrm" ansible_winrm_server_cert_validation=ignore
如果用心,我们可以看到在这里ansible是使用python的模块:pywinrm进行的,所以很多命令都可以参考winrm来进行操作。
https://blog.51cto.com/7424593/2174156
https://www.cnblogs.com/Jack-Blog/p/10922038.html