[[oktatas:operációs rendszerek:windows|< Windows]]
====== Ansible ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2020, 2023
* Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: https://szit.hu
====== Windows célgépként beállítás ======
Szükség van a cél gépen Chocolatey programra.
Szükség van Python-ra. Ha már van Chocolatey, akkor telepíthetjük vele:
choco install python
Ha már van Python szükség van pywinrm-re:
pip install pywinrm
A WinRM-t be kell állítani egy PowerShell segítségével. Ez itt érhető el:
* https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1
Vagy:
* https://github.com/AlbanAndrieu/ansible-windows/blob/master/files/ConfigureRemotingForAnsible.ps1
===== Modoulok Windowsra =====
* https://docs.ansible.com/ansible/latest/collections/index_module.html#ansible-windows
===== A ansible.windows.win_file modul példa =====
- name: Könyvtár struktúra létrehozása:
ansible.windows.win_file:
path: C:\Vmi\konyvtar\alkonyvtar
state: directory
===== A chocolatey.chocolatey.win_chocolatey modul példa =====
- name: A git telepítése
win_chocolatey:
name: git
state: present
===== Parancs futtatása =====
Parancs futtatása a távoli Windowsos gépen
---
- hosts: all
remote_user: adminuser
tasks:
- name: nodejs 16.19.0-ra átállás
ansible.windows.win_shell: c:\ProgramData\nvm\nvm use 16.19.0
===== ansible-playbook =====
Az ansible és az ansible-playbook jelenleg csak Linuxon létezik.
Ha Windowsos gépen akarjuk futtatni, akkor a következő lehetőségek állnak rendelkezésre:
* Windows Subsystem for Linux
* Virtualboxba telepített Linux
* Dockerbe telepített Linux
Linuxon a yaml fájl lejátszása:
ansible-playbook valami.yml
===== Playbook példák =====
==== Fájl másolása ====
---
- hosts: all
tasks:
- name: Fájl másolása
win_copy:
src: C:\data.txt
dest: C:\valahol\
remote_src: yes
==== Szolgáltatás kezelése ====
---
- hosts: all
tasks:
- name: A httpd leállítása
win_service:
name: httpd
state: stopped
==== Változó beállítása ====
---
- hosts: all
tasks:
- name: Környezeti változó beállítása minden felhasználónak
win_environment:
level: machine
name: GYUMOLCS
value: alma
state: present
==== MSI telepítővel ====
---
- name: Apache2 telepítése MSI fájlból
hosts: all
tasks:
- name: Apache telepítő letöltése
win_get_url:
url: https://archive.apache.org/dist/httpd/binaries/win32/httpd-2.2.25-win32-x86-no_ssl.msi
dest: C:\valahol\httpd-2.2.25-win32-x86-no_ssl.msi
- name: Az MSI telepítése
win_package:
path: C:\valahol\httpd-2.2.25-win32-x86-no_ssl.msi
state: present
- name: Apache2 telepítése MSI fájlból
hosts: all
tasks:
- name: Apache telepítő letöltése
win_get_url:
url: https://archive.apache.org/dist/httpd/binaries/win32/httpd-2.2.25-win32-x86-no_ssl.msi
dest: C:\ansible_examples\httpd-2.2.25-win32-x86-no_ssl.msi
- name: Az MSI telepítése
win_package:
path: C:\valami\httpd-2.2.25-win32-x86-no_ssl.msi
arguments:
- /install
- /norestart
- /passive
---
- name: Apache MSI törlése
hosts: all
tasks:
- name: Az Apache MSI törlése
win_package:
path: C:\valami\httpd-2.2.25-win32-x86-no_ssl.msi
state: absent
---
- hosts: all
tasks:
- name: 7-Zip törlése Uninstall.exe programmal
win_package:
path: C:\Program Files\7-Zip\Uninstall.exe
product_id: 7-Zip
arguments: /S
state: absent
==== Regisztrációs adatbázis ====
---
- hosts: all
tasks:
- name: Bejegyzés létrehozása
win_regedit:
path: HKLM:\SOFTWARE\Programnev
- name: Név és adat hozzáadása
win_regedit:
path: HKLM:\SOFTWARE\Programnev
name: SOR
data: Elso
===== Forrás =====
* https://gist.github.com/devops-school/52c8de8924555f91c50e3a016556060f (2023)