SlideShare a Scribd company logo
#DOPPA17
Windows Automation with Ansible
Swapnil Dahiphale | Lokesh Jawane
9th
September 2017
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Who Am I?
- Sr. DevOps Engineer at Crevise Technologies
- Passionate about Learning and implementing disruptive innovations in
DevOps
@Swapnil2233
swapnil@crevise.com
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Who Am I?
Sr. DevOps Engineer at Crevise Technologies
@lokeshjawane
lokesh.jawane@crevise.com
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Agenda
- Automation
- Why Automation?
- Windows Automation and Challenges
- Automation tools
- Ansible
- Principles of Ansible and How it works
- User case
- Demo
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Automation
“Automation is the key to successful DevOps adoption”
- Change Management
- Provisioning
- Orchestration
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Change Management
- System State
- Define
- Enforce
- Example
- Apache web server version 2.4.x installed
- PHP 5.4.x installed
- Apache web server started
- Webadmin user exist with authorized key
- Deviation from the state would warrant a change
- Ansible operations are idempotent
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Provisioning
- Built on top of Automation and Change Management
- Preparing a system
- Installing, updating, configuring software
- Example:
- Start with basic installation of OS
- Update the operating system
- Install the web server
- Deploy the application
- Configure the application
- Start the web server
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Orchestration
- Orchestration is not just Automation
- Coordination between systems
- Order sensitive tasks
- Example:
- Remove web1 from LB
- Run tasks on web1
- Add web1 back to LB
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Why Automation?
- We all have to do more with less!
- Consistently deliver stable predictable environment
- Increase number of deployments, decrease time between deployments
- Deliver more secure environment
- Innovate faster
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Linux Vs Windows
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Windows Automation
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Windows Automation Challenges
- Legacy Security Models
- AD dependencies
- Reboot are a pain
- Typically heavy software packages
- We can bootstrap to a point
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Automation Tools
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
You’ve probably already heard of
the most common tools
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Principles of Ansible
SIMPLE POWERFUL AGENTLESS
Human readable automation App deployment Agentless architecture
No special coding skills needed Configuration management Uses OpenSSH & WinRM
Tasks executed in order Workflow orchestration No agents to exploit or
update
Get productive quickly Orchestrate the app lifecycle More efficient & more
secure
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
How Ansible Works?
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible concepts: Playbooks
Defines sequences of tasks (Plays) to be executed on a group of hosts.
- Describes policies machine under management shall enforce
- Contains variables, tasks, handlers, files, templates and roles
- Expressed in YAML
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible concepts: Playbooks
---
- win_get_url:
url: “{{ windows_server_iso }}”
dest: “{{ windows_temp_path }}win20121.iso”
force: yes
when: win_iso.stat.exists == false
- win_shell: ‘Mount-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso”’
- win_shell: ‘(Get-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso” | Get-Volume).DriveLetter’
register: drive_letter
# - debug: var=drive_letter
- name: net-framework-35
win_feature:
name: NET-Framework-Core
source: ‘{{ drive_letter.stdout_lines[0] }}:sourcessxs’
state: present
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible concepts: Playbooks
---
- win_get_url:
url: “{{ windows_server_iso }}”
dest: “{{ windows_temp_path }}win20121.iso”
force: yes
when: win_iso.stat.exists == false
- win_shell: ‘Mount-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso”’
- win_shell: ‘(Get-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso” | Get-Volume).DriveLetter’
register: drive_letter
# - debug: var=drive_letter
- name: net-framework-35
win_feature:
name: NET-Framework-Core
source: ‘{{ drive_letter.stdout_lines[0] }}:sourcessxs’
state: present
module
variable
List of plays
List of tasks
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible concepts: Roles
Best way to organize your playbooks
- Structure content into related vars, tasks, files, handlers, etc.
- File structure for automated inclusion of role-specific content
- Roles can be shared and pulled from Ansible Galaxy, Github, etc.
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible Tower
- Product by Red Hat
- Web based UI
- Cloud Integration (AWS, Azure, RackSpace)
- Compliance: Reporting + Auditing
- Every job run is logged and can be traced
- Role Based Access Control
- REST API
- Monitoring
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Preparation
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Setup Ansible on Control Node
$ add-apt-repository ppa:ansible
$ apt-get update
$ apt-get install ansible
OR
$ pip install ansible
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Limitation for Control Node
- Control Node is recommended to be Linux.
- Or Windows Subsystem for Linux (WSL)
http://docs.ansible.com/ansible/intro_windows.html#using-a-windows-control-machine
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Additional Setup for Controlling Windows
- To control Windows Slave with local User Account, no additional setup
required
- To control Windows Slave with AD Account, the easiest way is to setup
Kerberos
$ apt-get install python-dev libkrb5-dev krb5-user
$ pip install pywinrm[kerberos]
$ vim /etc/krb5.conf
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Additional Setup for the Windows Slave Nodes
The older Windows require extra setup to meet basic requirements
- Windows 7,8, Windows Server 2008 R2
- .Net Framework >= 4.0 (reboot required)
- PowerShell >=3.0 (reboot required)
- Windows Remote Management (WinRM)
- Apply Hotfix for Windows 7, 8, Windows Server 2008 R2, 2012
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
What About Linux Slave?
Nope…
There’s no prerequisites for linux slave, except login user account ;-)
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Use case
Setting up private cloud for an enterprise client.
- Challenges:
- Strict and close timelines, RHEL, Windows and all integration points automation, Security,
Compliance and testing in a restricted environment.
- Solution:
- Provisioning of VMs is done with CloudForms
- Configurations on RHEL and Windows VMs is done with Ansible
- Network related activities are automated with Ansible
- Integration with Hitachi Data Systems automated with Ansible
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Use case
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Use case
Things Automated
- OS Hardening
- Updates and patches
- Antivirus Configuration
- Joining VM to Active Directory
- Installation of softwares like MSSQL
- Windows clustering and MSSQL cluster confuguration
- ...
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Demo
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Ansible makes automating Windows easier!
Conclusion
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
Questions?
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
github.com/swapnildahiphale
linkedin.com/in/swapnil2233
@Swapnil2233
swapnil@crevise.com
Thank You!
#DOPPA17
As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for
social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us)
References
http://docs.ansible.com/ansible/intro_windows.html#using-a-windows-control-machine
http://docs.ansible.com/ansible/latest/intro_windows.html

More Related Content

PPTX
Monitoring With Prometheus
PPTX
Distributed And Scaled (DiSc) Agile PMO
PPTX
Linuxkit and Moby - A Sneek Peek into The Future of Container Ecosystem
PPTX
Addressing the challenges of delivering Microservice applications in the ente...
PPTX
Architecting DevOps Ready Application
PPTX
Strengthening CX through Agile Ecosystems
PPTX
Demonetization, IoT and related thoughts!
PPTX
Design Thinking Approach for Analytics
Monitoring With Prometheus
Distributed And Scaled (DiSc) Agile PMO
Linuxkit and Moby - A Sneek Peek into The Future of Container Ecosystem
Addressing the challenges of delivering Microservice applications in the ente...
Architecting DevOps Ready Application
Strengthening CX through Agile Ecosystems
Demonetization, IoT and related thoughts!
Design Thinking Approach for Analytics

What's hot (15)

PDF
DevOps++ Global Summit 2017
PPTX
DevOps Architecture Design
PPTX
#ATAGTR2018 Presentation " Security Testing for RESTful APIs" By Anuradha Raman
PPTX
#ATAGTR2020 Presentation - Speed Up Your Regression Testing Cycles with Data ...
PPTX
The Open-source Eclipse Plugin for Force.com Development, Summer ‘14
PDF
Building GPE: What We Learned
PPTX
GeeCON 2015 DevOps and the dark side
PDF
Code Coverage for Total Security in Application Migrations
PPT
PDF
Inbound 2017: Back to Our Roots with Technical SEO
PPTX
Swamp 2019: She Promoted Her Helm Chart: You Won't Believe What Happened Next!
PDF
有了 Agile,為什麼還要有 DevOps?
PPTX
5 Things You Shouldn't Do With A WordPress Plugin
PDF
Work with Developers for Fun and Progress - AppSec California
PDF
Developing in the Fastlane -> How LookLive uses Fastlane to automate and spee...
DevOps++ Global Summit 2017
DevOps Architecture Design
#ATAGTR2018 Presentation " Security Testing for RESTful APIs" By Anuradha Raman
#ATAGTR2020 Presentation - Speed Up Your Regression Testing Cycles with Data ...
The Open-source Eclipse Plugin for Force.com Development, Summer ‘14
Building GPE: What We Learned
GeeCON 2015 DevOps and the dark side
Code Coverage for Total Security in Application Migrations
Inbound 2017: Back to Our Roots with Technical SEO
Swamp 2019: She Promoted Her Helm Chart: You Won't Believe What Happened Next!
有了 Agile,為什麼還要有 DevOps?
5 Things You Shouldn't Do With A WordPress Plugin
Work with Developers for Fun and Progress - AppSec California
Developing in the Fastlane -> How LookLive uses Fastlane to automate and spee...
Ad

Similar to Windows automation with ansible (20)

PPTX
Windows Automation with Ansible
PPTX
Salesforce: CI,CD & CT
PPTX
DevOps In Mobility World With Microsoft Technology
PPTX
Monitoring with Prometheus
PPTX
#ATAGTR2020 Presentation - Multiplatform Test Automation Framework Solution w...
PPTX
Making DevOps a reality for Legacy Enterprise Monolithic Products
PPTX
#ATAGTR2020 Presentation - Relish your journey to Software Testing Masterchef
PPTX
#ATAGTR2020 Presentation - Redefining DevOps for seamless performance testing
PPTX
#ATAGTR2019 Presentation "Delivering Cx through Continuous Performance Assura...
PPTX
#ATAGTR2020 Presentation - Case study for holistic approach to IoT testing
PPTX
#ATAGTR2020 Presentation - The Splunk Integration for Futuristic NFT in DevOp...
PPTX
#ATAGTR2020 Presentation - Adaptive Learner
PPTX
#ATAGTR2019 Presentation "iOS App Automation, GitHub and Jenkins integration"...
PPTX
#ATAGTR2020 Presentation - Non-Functional Testing of Chatbots
PPTX
Robotic Process Automation
PPTX
#ATAGTR2018 Presentation "Design Patterns in Test Automation" By Shrinathacha...
PPTX
#ATAGTR2019 Presentation "Re-engineering perfmance strategy of deep learning ...
PPTX
#ATAGTR2018 Presentation "Decoding Security in DevSecOps" by Meghashyam Varan...
PPTX
#ATAGTR2018 Presentation "Machine Learning as a decision support system for Q...
PPTX
Bring Down The Walls for Confusion - Agile and Beyond 2016
Windows Automation with Ansible
Salesforce: CI,CD & CT
DevOps In Mobility World With Microsoft Technology
Monitoring with Prometheus
#ATAGTR2020 Presentation - Multiplatform Test Automation Framework Solution w...
Making DevOps a reality for Legacy Enterprise Monolithic Products
#ATAGTR2020 Presentation - Relish your journey to Software Testing Masterchef
#ATAGTR2020 Presentation - Redefining DevOps for seamless performance testing
#ATAGTR2019 Presentation "Delivering Cx through Continuous Performance Assura...
#ATAGTR2020 Presentation - Case study for holistic approach to IoT testing
#ATAGTR2020 Presentation - The Splunk Integration for Futuristic NFT in DevOp...
#ATAGTR2020 Presentation - Adaptive Learner
#ATAGTR2019 Presentation "iOS App Automation, GitHub and Jenkins integration"...
#ATAGTR2020 Presentation - Non-Functional Testing of Chatbots
Robotic Process Automation
#ATAGTR2018 Presentation "Design Patterns in Test Automation" By Shrinathacha...
#ATAGTR2019 Presentation "Re-engineering perfmance strategy of deep learning ...
#ATAGTR2018 Presentation "Decoding Security in DevSecOps" by Meghashyam Varan...
#ATAGTR2018 Presentation "Machine Learning as a decision support system for Q...
Bring Down The Walls for Confusion - Agile and Beyond 2016
Ad

Recently uploaded (20)

PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Cloud computing and distributed systems.
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Electronic commerce courselecture one. Pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Machine learning based COVID-19 study performance prediction
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Approach and Philosophy of On baking technology
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Network Security Unit 5.pdf for BCA BBA.
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Cloud computing and distributed systems.
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Electronic commerce courselecture one. Pdf
Review of recent advances in non-invasive hemoglobin estimation
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
MYSQL Presentation for SQL database connectivity
Machine learning based COVID-19 study performance prediction
Dropbox Q2 2025 Financial Results & Investor Presentation
Diabetes mellitus diagnosis method based random forest with bat algorithm
sap open course for s4hana steps from ECC to s4
Approach and Philosophy of On baking technology
Mobile App Security Testing_ A Comprehensive Guide.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Programs and apps: productivity, graphics, security and other tools
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Digital-Transformation-Roadmap-for-Companies.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

Windows automation with ansible

  • 1. #DOPPA17 Windows Automation with Ansible Swapnil Dahiphale | Lokesh Jawane 9th September 2017
  • 2. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Who Am I? - Sr. DevOps Engineer at Crevise Technologies - Passionate about Learning and implementing disruptive innovations in DevOps @Swapnil2233 swapnil@crevise.com
  • 3. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Who Am I? Sr. DevOps Engineer at Crevise Technologies @lokeshjawane lokesh.jawane@crevise.com
  • 4. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Agenda - Automation - Why Automation? - Windows Automation and Challenges - Automation tools - Ansible - Principles of Ansible and How it works - User case - Demo
  • 5. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Automation “Automation is the key to successful DevOps adoption” - Change Management - Provisioning - Orchestration
  • 6. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Change Management - System State - Define - Enforce - Example - Apache web server version 2.4.x installed - PHP 5.4.x installed - Apache web server started - Webadmin user exist with authorized key - Deviation from the state would warrant a change - Ansible operations are idempotent
  • 7. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Provisioning - Built on top of Automation and Change Management - Preparing a system - Installing, updating, configuring software - Example: - Start with basic installation of OS - Update the operating system - Install the web server - Deploy the application - Configure the application - Start the web server
  • 8. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Orchestration - Orchestration is not just Automation - Coordination between systems - Order sensitive tasks - Example: - Remove web1 from LB - Run tasks on web1 - Add web1 back to LB
  • 9. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Why Automation? - We all have to do more with less! - Consistently deliver stable predictable environment - Increase number of deployments, decrease time between deployments - Deliver more secure environment - Innovate faster
  • 10. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Linux Vs Windows
  • 11. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Windows Automation
  • 12. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Windows Automation Challenges - Legacy Security Models - AD dependencies - Reboot are a pain - Typically heavy software packages - We can bootstrap to a point
  • 13. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Automation Tools
  • 14. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) You’ve probably already heard of the most common tools
  • 15. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible
  • 16. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Principles of Ansible SIMPLE POWERFUL AGENTLESS Human readable automation App deployment Agentless architecture No special coding skills needed Configuration management Uses OpenSSH & WinRM Tasks executed in order Workflow orchestration No agents to exploit or update Get productive quickly Orchestrate the app lifecycle More efficient & more secure
  • 17. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) How Ansible Works?
  • 18. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible concepts: Playbooks Defines sequences of tasks (Plays) to be executed on a group of hosts. - Describes policies machine under management shall enforce - Contains variables, tasks, handlers, files, templates and roles - Expressed in YAML
  • 19. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible concepts: Playbooks --- - win_get_url: url: “{{ windows_server_iso }}” dest: “{{ windows_temp_path }}win20121.iso” force: yes when: win_iso.stat.exists == false - win_shell: ‘Mount-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso”’ - win_shell: ‘(Get-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso” | Get-Volume).DriveLetter’ register: drive_letter # - debug: var=drive_letter - name: net-framework-35 win_feature: name: NET-Framework-Core source: ‘{{ drive_letter.stdout_lines[0] }}:sourcessxs’ state: present
  • 20. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible concepts: Playbooks --- - win_get_url: url: “{{ windows_server_iso }}” dest: “{{ windows_temp_path }}win20121.iso” force: yes when: win_iso.stat.exists == false - win_shell: ‘Mount-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso”’ - win_shell: ‘(Get-DiskImage -ImagePath “{{ windows_temp_path }}win20121.iso” | Get-Volume).DriveLetter’ register: drive_letter # - debug: var=drive_letter - name: net-framework-35 win_feature: name: NET-Framework-Core source: ‘{{ drive_letter.stdout_lines[0] }}:sourcessxs’ state: present module variable List of plays List of tasks
  • 21. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible concepts: Roles Best way to organize your playbooks - Structure content into related vars, tasks, files, handlers, etc. - File structure for automated inclusion of role-specific content - Roles can be shared and pulled from Ansible Galaxy, Github, etc.
  • 22. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible Tower - Product by Red Hat - Web based UI - Cloud Integration (AWS, Azure, RackSpace) - Compliance: Reporting + Auditing - Every job run is logged and can be traced - Role Based Access Control - REST API - Monitoring
  • 23. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Preparation
  • 24. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Setup Ansible on Control Node $ add-apt-repository ppa:ansible $ apt-get update $ apt-get install ansible OR $ pip install ansible
  • 25. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Limitation for Control Node - Control Node is recommended to be Linux. - Or Windows Subsystem for Linux (WSL) http://docs.ansible.com/ansible/intro_windows.html#using-a-windows-control-machine
  • 26. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Additional Setup for Controlling Windows - To control Windows Slave with local User Account, no additional setup required - To control Windows Slave with AD Account, the easiest way is to setup Kerberos $ apt-get install python-dev libkrb5-dev krb5-user $ pip install pywinrm[kerberos] $ vim /etc/krb5.conf
  • 27. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Additional Setup for the Windows Slave Nodes The older Windows require extra setup to meet basic requirements - Windows 7,8, Windows Server 2008 R2 - .Net Framework >= 4.0 (reboot required) - PowerShell >=3.0 (reboot required) - Windows Remote Management (WinRM) - Apply Hotfix for Windows 7, 8, Windows Server 2008 R2, 2012
  • 28. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) What About Linux Slave? Nope… There’s no prerequisites for linux slave, except login user account ;-)
  • 29. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Use case Setting up private cloud for an enterprise client. - Challenges: - Strict and close timelines, RHEL, Windows and all integration points automation, Security, Compliance and testing in a restricted environment. - Solution: - Provisioning of VMs is done with CloudForms - Configurations on RHEL and Windows VMs is done with Ansible - Network related activities are automated with Ansible - Integration with Hitachi Data Systems automated with Ansible
  • 30. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Use case
  • 31. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Use case Things Automated - OS Hardening - Updates and patches - Antivirus Configuration - Joining VM to Active Directory - Installation of softwares like MSSQL - Windows clustering and MSSQL cluster confuguration - ...
  • 32. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Demo
  • 33. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Ansible makes automating Windows easier! Conclusion
  • 34. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) Questions?
  • 35. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) github.com/swapnildahiphale linkedin.com/in/swapnil2233 @Swapnil2233 swapnil@crevise.com Thank You!
  • 36. #DOPPA17 As the author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels - (Provided due credit is given to me/us) References http://docs.ansible.com/ansible/intro_windows.html#using-a-windows-control-machine http://docs.ansible.com/ansible/latest/intro_windows.html