Ansible Windows批量安装软件

文章目录

  • 1:Windows配置WINRM
  • 2: ansible安装
  • 3:操作步骤
    • 3.1 配置主机清单
    • 3.2 测试ansible执行命令
    • 3.3 测试安装7Z

ansible操作通过winrm协议windows,经过实践精简以下方法能快速配置,并能通过测试

更多文档参考:

  • 支持的windows版本和环境要求 https://docs.ansible.com/ansible/latest/os_guide/windows_setup.html
  • winrm配置选项,本文选择credssp 认证,兼顾安全和简洁https://docs.ansible.com/ansible/latest/os_guide/windows_winrm.html
  • windows模块https://galaxy.ansible.com/ui/repo/published/ansible/windows/

1:Windows配置WINRM

系统版本win10
以管理员权限运行Poweshell执行如下命令

# 允许执行Powershell脚本
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force
# 开启winrm
winrm quickconfig -force
# 配置winrm允许CredSSP方式认证
Enable-WSManCredSSP -Role Server -Force
# 测试winrm连接是否正常
winrs -r:http://localhost:5985/wsman -u:用户名(域用户填写xxxx@yyyy完整的UserPrincipalName) -p:密码 ipconfig

结果如下

Ansible Windows批量安装软件_第1张图片

2: ansible安装

系统环境:

  • ubuntu
  • python3
# 安装ansible
python3 -m pip install --user ansible
# 安装pywinrm[credssp]认证模块
pip install pywinrm[credssp]

3:操作步骤

3.1 配置主机清单

inventory.ini

[win]
172.25.1.9

[win:vars]
# ansible_user=用户名(域用户填写xxxx@yyyy完整的UserPrincipalName)
ansible_user=Administrator
ansible_password=123456
ansible_connection=winrm
ansible_winrm_transport=credssp
ansible_winrm_port=5985

3.2 测试ansible执行命令

# 执行命令
ansible -i inventory.ini win -m win_shell -a 'ipconfig'	

结果如下:

Ansible Windows批量安装软件_第2张图片

3.3 测试安装7Z

整体文件目录
Ansible Windows批量安装软件_第3张图片

编写playbook文件 install-7z.yaml

- name: install 7z
  hosts: win

  tasks:
    - name: '下载7z安装包'
      ansible.windows.win_copy:
          src: /ansible-tutorial/7z1900-x64.msi
          dest: c:\7z1900-x64.msi

    - name: '安装msi'
      win_package:
        path: c:\7z1900-x64.msi
        state: present


执行命令,安装7z

# 安装7z
ansible-playbook -i inventory.ini install-7z.yaml

Ansible Windows批量安装软件_第4张图片

你可能感兴趣的:(ansible,windows)