👤

重置密码

发送中...
返回登录

Ansible配置Windows客户端实例

Linux 23 浏览 2 分钟阅读

介绍:

Ansible 是一个开源自动化工具,用于管理各种配置和应用程序部署。它既可以配置类 Unix 系统,也可以配置 Windows 系统。

主服务器要求:

  • python3-pip
  • pywinrm(python 包)

Windows 要求:

  • Powershell 3.0 或更高版本
  • 至少安装.NET 4.0

配置过程:

环境介绍:

角色发行版IP地址
Ansible controlRHEL 9.1192.168.0.201
Windows Node Windows10 Enterprise192.168.0.203

将受控Windows计算机以管理员身份打开 Windows 中的“PowerShell”配置WinRM服务 ,配置服务参考 Windows WinRM服务配置 一文。

注意:

  • 生产环境中不推荐使用未加密通信,应配置HTTPS并安装适当的证书。
  • 确保防火墙允许来自Ansible主控端的WinRM通信,通常需要开放TCP 5985(HTTP)或5986(HTTPS)端口。

在Ansible inventory文件中定义Windows主机,更新或创建 inventory

正确的配置如下:

[windows]
192.168.0.203 ansible_user="nnkin" ansible_password="Windows1@#" ansible_port=5985 ansible_connection="winrm" ansible_winrm_server_cert_validation=ignore

其中 “nnkin” 为 node计算机用户名,”Windows1@#” 为node计算机密码,ansible_connection设置为winrm表明使用WinRM进行连接,ansible_winrm_transport可以设置为basic(基本身份验证)或其他认证方式,如credssp。

验证:

编写一个Ansible Playbook来管理Windows主机,例如一个简单的ping测试任务:

play book剧本如下:

---
- name: test ping
  hosts: windows
  gather_facts: yes
  tasks:
    - name: test connection
      win_ping:

执行Playbook剧本:

ansible-playbook win_ping.yml -i inventory

或者直接使用shell模块来验证:

ansible -i inventory windows -m win_ping