[[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)