Ansible Playbook (Linux – Windows) using Winrm
1. Install winrm in Linux server
sudo yum install -y python2-winrm
sudo yum -y install python-pip
sudo pip install pywinrm
2. Create a Windows Server 2019 Instance in AWS
3. Open Winrm-https port in security groups
4. Login to Windows Server using Remote Desktop tool
Connect -> Click Get Password
Click -> Choose File & select your AWS pem file & Click Decrypt Password
Copy -> Public DNS, User Name & Password
Open Remote Desktop Connection –> Paste Public DNS in place of Computer
& Click -> Connect
Provide Username & Password and Click -> OK
Now Remote Desktop will connect to the Windows Server 2019
Windows Server 2019 Connected
5. Open Windows Powershell and Check for version. It is above 3.0, so we can configure
winrm now (use Get-Host command to check version)
6. Configure Winrm
6.1 Winrm Memory Hotfix
Goto this link
[Link]
Copy the code and save it in Windows Server Machine Desktop as Install-
WMF3Hotfix.ps1
Open Windows Powershell and go to Desktop (cd ~/.Desktop)
Execute the following command
[Link] -ExecutionPolicy ByPass -File Install-WMF3Hotfix.ps1 –Verbose
6.2 Winrm Setup
Got to this link
[Link]
Copy the code and save it in Windows Server Machine Desktop as
ConfigureRemotingForAnsible.ps1
Open Windows Powershell and go to Desktop (cd ~/.Desktop)
Execute the following command
[Link] -ExecutionPolicy ByPass -File ConfigureRemotingForAnsible.ps1
6.3 Winrm Listener
Execute this command in Powershell to know about the winrm listener port details
winrm enumerate winrm/config/Listener
Winrm uses Port 5986 for HTTPS & 5985 for HTTP
7. Configure Windows Host in Ansible Server in /etc/ansible/hosts
win ansible_host=PRIVATE IP ansible_password=PASSWORD
ansible_connection=winrm ansible_port=5986
ansible_user=Administrator
ansible_winrm_server_cert_validation=ignore
(Note: Replace PRIVATEIP & PASSWORD with your Windows Server 2019
Instance Credentials)
8. Ping Windows Server using the command
ansible win –m win_ping
9. Write a playbook to Install Git & Notepad++ in Windows Server 2019
- hosts: all
tasks:
- name: Install git
win_chocolatey:
name: git
state: present
- name: Install notepad++
win_chocolatey:
name: notepadplusplus
state: present
10. Execute Playbook to install Git and Notepad++ in Windows Server 2019
ansible-playbook [Link]
11 . Check the Installed Git & Notepad++ in Windows Server 2019