9 Lehetséges játékleírások példája a Windows adminisztrációra

Megmutatom néhány műveletet, amelyeket az adminisztrátor egy távoli Windows rendszeren hajthat végre az ansible-playbook segítségével.


Az Ansible a mai piacon az egyik leggyakrabban használt DevOps eszköz. Ez egy csomó Windows modult tartalmaz, amelyeket a Windows szerver konfigurálására és kezelésére használnak. Feltételezem, hogy az Ansible már telepítve van a Windows rendszerre, ahonnan a Windows szervereket kezeli.

Az alábbiakban bemutatjuk azokat a leggyakrabban használt feladatokat, amelyeket a Windows rendszergazdák naponta végeznek. Meg fog lepődni, hogy milyen egyszerűen kezelhető a Windows az Ansible segítségével.

Az Ensible Windows vezérlőm IP-címe 192.168.0.106, a távoli Windows rendszer IP-címe pedig 192.168.0.102. Mielőtt elkezdené, győződjön meg arról, hogy futtat egy win_ping modult, hogy ellenőrizze, képes-e csatlakozni a Windows távoli kiszolgálóra.

[Email protected] ~
$ ansible win -m win_ping
192.168.0.102 | SIKER => {
"megváltozott": hamis,
"fütyülés": "pong"
}

A távoli gazdagéppel való kapcsolatom sikeres.

Tehát kezdjük el az Ansible Playbooks-nal …

Fájlok másolása

A win_copy egy lehetséges modul, amely másolja a fájlt a helyi szerverről a távoli Windows gazdagépre. Ezt a modult egyetlen PDF másolásához fogom használni.

Használja az alábbi YAML kódot, adja meg a forrás és a cél útvonalait.

[Email protected] ~
$ vi copy.yml

– házigazdák: nyerj

feladatok:

– név: Fájl másolása

win_copy:

src: C: \ output.pdf

dest: C: \ ansible_examples \

remote_src: igen

Futtassa a Win_copy számára elérhető játékleírást.

[Email protected] ~
$ ansible-playbook copy.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Fájl másolása] ***************************************************** ************************************************** ******************************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 2 megváltozott = 1 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

A fájlt sikeresen lemásolta a távoli Windows rendszer rendeltetési helyén.

lehetséges Windows másolás

Telepítse / távolítsa el az MSI-t

Az alkalmazás telepítéséhez az MSI fájl használatával a win_get_url használatával meg kell említenie az MSI fájl letöltési útvonalát, majd a Win_package modul használatával telepítheti. A jelenlegi állapot azt jelenti, hogy az MSI telepítésre kerül a gépen, és az alkalmazás jelenlegi állapotban van.

Itt telepítem az Apache-t.

A használandó YAML-kód:

[Email protected] ~
$ vi msi.yml

– név: Az Apache MSI telepítése
házigazdák: nyerj

feladatok:
– név: Töltse le az Apache telepítőjét
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

– név: Telepítse az MSI-t
win_package:
elérési út: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi
állapot: jelen van

Az MSI használatával futtassa a telepíthető táblát.

[Email protected] ~
$ ansible-playbook msi.yml

JÁTÉK [Az Apache MSI telepítése] *************************************************** ************************************************** *******************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Töltse le az Apache telepítőjét] ************************************************** ************************************************** ************
megváltozott: [192.168.0.102]

FELADAT [MSI telepítése] **************************************************** ************************************************** ****************************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 3 megváltozott = 2 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Most menjen a Windows rendszerbe, és ellenőrizze, hogy az apache alkalmazás sikeresen telepítve van-e.

C: \ Users \ geekflare>cd C: \ Program Files (x86) \ Apache Software Foundation \ Apache2.2 \ bin
C: \ Program Files (x86) \ Apache Software Foundation \ Apache2.2 \ bin>httpd -v
Szerver verzió: Apache / 2.2.25 (Win32)
Szerver felépítése: 2013. július 10, 01:52:12

Az MSI használatával alkalmazásokat is telepíthet argumentumokkal. Az alábbiakban látható a fenti példa, de az állapot helyett telepítési argumentumot használunk az apache telepítéséhez.

A használandó YAML-kód:

– név: Az Apache MSI telepítése

házigazdák: nyerj

feladatok:

– név: Töltse le az Apache telepítőjét

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

– név: Telepítse az MSI-t

win_package:

elérési út: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi

érvek:

– /telepítés

– /passzív

– / norestart

Az alkalmazás eltávolításához az MSI fájl használatával a win_package modult kell használni. A hiányzó állapot azt jelenti, hogy az alkalmazás eltávolításra kerül az MSI fájl használatával.

Itt eltávolítom az Apache-t.

[Email protected] ~
$ vi uninstall_msi.yml

– név: Az Apache MSI eltávolítása

házigazdák: nyerj

feladatok:

– név: Távolítsa el az MSI-t

win_package:

elérési út: C: \ ansible_examples \ httpd-2.2.25-win32-x86-no_ssl.msi

állapot: nincs

Futtassa az ansible-playbookot az MSI használatával történő eltávolításhoz.

[Email protected] ~
$ ansible-playbook uninstall_msi.yml

JÁTÉK [Az Apache MSI eltávolítása] *************************************************** ************************************************** *******************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [MSI eltávolítása] **************************************************** ************************************************** **************************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 2 megváltozott = 1 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Most, ha megnézem az apache verziót, az alábbi kimenetet kapom, amint az alkalmazás eltávolításra került.

C: \ Program Files (x86) \ Apache Software Foundation \ Apache2.2 \ bin>A httpd -v „httpd” nem ismeri fel belső vagy külső parancsot,
Működő program vagy kötegelt fájl.

Távolítsa el a szoftvert (.EXE)

A .exe fájllal eltávolíthatja a szoftvert a szoftver termékazonosítójával is.

[Email protected] ~
$ vi uninstall.yml

– házigazdák: nyerj

feladatok:

– név: Távolítsa el a 7-Zip fájlt az exe fájlból

win_package:

elérési út: C: \ Program Files \ 7-Zip \ Uninstall.exe

termékazonosító: 7-Zip

érvek: / S

állapot: nincs

A 7-Zip eltávolításához futtassa az anable-playbookot.

[Email protected] ~
$ ansible-playbook uninstall.yml

JÁTÉK [nyer] ********************************************** ************************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Távolítsa el a 7-Zip fájlt az exe fájlból] *********************************************** ************************************************** ************************************************** ***************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** ************************************************** *********************************
192.168.0.102: ok = 2 megváltozott = 1 elérhetetlen = 0 sikertelen = 0 kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

A Windows szolgáltatások leállítása / indítása / újraindítása

A win_service lehetséges modult egy szolgáltatás indításához, leállításához vagy újraindításához használják. Itt megmutatom, hogyan lehet megállítani a tomcat szolgáltatást.

lehetséges ablak tomcat

Meg kell említenie a szolgáltatás nevét a YAML fájlban, és állítsa be az állapotot.

[Email protected] ~
$ vi service.yml

– házigazdák: nyerj

feladatok:

– név: Stop service Tomcat

win_service:

név: Tomcat8

állapot: leállt

A runcat szolgáltatás leállításához futtassa a lehetséges playbookot.

[Email protected] ~
$ ansible-playbook service.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Tomcat leállítása] *************************************************** ************************************************** ******************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 2 megváltozott = 1 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Ha ellenőrizte a tomcat szolgáltatást a Windows rendszeren, akkor most leállt.

lehetséges Windows tomcat stop

Megadhatja az indított, újraindított vagy szüneteltetett állapotot a szolgáltatás állapotának megváltoztatásához.

Tények összegyűjtése

A win_disk_facts lehetséges modul használatával lekérheti a célgazdagép összes lemezinformációját.

[Email protected] ~
$ vi disk.yml

– házigazdák: nyerj
feladatok:
– név: Lemez tények beolvasása
win_disk_facts:

– név: Az első lemezméret kimenet
debug:
var: ansible_facts.disks [0] .size

– név: konvertálja az első rendszerlemezt különböző formátumokba
debug:
msg: ‘{{disksize_gib}} vs {{disksize_gib_human}}’
vars:
# Szerezze be az első rendszerlemezt
lemez: ‘{{ansible_facts.disks | selectattr ("system_disk") | első}} ‘

# Mutassa a lemez méretét gibibitokban
disksize_gib_human: ‘{{disk.size | filesizeformat (true)}}’
disksize_gib: ‘{{(disk.size / 1024 | pow (3)) | kerek | int}} GiB’

Futtassa az ansible-playbookot a lemezinformációk lekérdezéséhez.

[Email protected] ~
$ ansible-playbook disk.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Töltse le a lemezt] ********************************************* ************************************************** **************************
rendben: [192.168.0.102]

FELADAT [Az első lemez méretét] ************************************************** ************************************************** *******************
rendben: [192.168.0.102] => {

"ansible_facts.disks [0] .size": "1000204886016"
}

FELADAT [Konvertálja az első rendszerlemezt különböző formátumokba] **************************************** ************************************************
rendben: [192.168.0.102] => {
"msg": "932 GiB vs 931,5 GiB"
}

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 4 megváltozott = 0 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

A win_command lehetséges modul segítségével parancsokat hajthat végre a távoli gazdagépen, és CPU-információkat, eszközinformációkat és még sok minden mást megkaphat..

[Email protected] ~
$ vi check.yml

– házigazdák: nyerj
feladatok:
– név: Lemez tények beolvasása
win_command: wmic cpu felirat kap, deviceid, név, eredmények száma, maxclockspeed, status
regisztráció: használat

– hibakeresés: msg ="{{use.stdout}}"

Futtassa az ansible-playbookot a távoli rendszerinformációk eléréséhez.

[Email protected] ~
$ ansible-playbook check.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Tények megszerzése] ********************************************** ************************************************** *************************
megváltozott: [192.168.0.102]

FELADAT [hibakeresés] ***************************************************** ************************************************** *********************************
rendben: [192.168.0.102] => {
"msg": "Felirat DeviceID MaxClockSpeed
Név
NumberOfCores Állapot \ r \ r \ nIntel64 Family 6 modell 142 lépés 9 CPU0 2712 Intel (R) Core (TM) i5-7200U CPU @ 2,50 GHz 2 OK \ r \ r \ n \ r \ r \ n"
}

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 3 megváltozott = 1 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0
figyelmen kívül = 0

Parancsok futtatása

Bármelyik ablakon futtatható parancsok is futtathatók a lehetséges Win_command modulon keresztül. Csak meg kell adnia a parancsot a YAML fájlban. Itt csak egy könyvtárat készítek.

[Email protected] ~
$ vi Command.yml

– házigazdák: nyerj

feladatok:

– name: futtasson egy végrehajtható fájlt a win_command használatával

win_command: whoami.exe

– név: futtasson egy cmd parancsot

win_command: cmd.exe / c mkdir C: \ test

Futtassa az ansible-playbookot a win_command művelet végrehajtásához.

[Email protected] ~
$ ansible-playbook Command.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [futtasson egy végrehajtható fájlt a Win_command használatával] ************************************************* ************************************************** *******
megváltozott: [192.168.0.102]

FELADAT [futtasson egy cmd parancsot] ************************************************** ************************************************** ************************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 3 megváltozott = 2 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Környezeti változók

A Windows rendszernek több környezeti változója van, például JAVA_HOME. A win_environment lehetséges modul használatával hozzáadhat vagy módosíthat környezeti változókat egy Windows rendszeren. Ebben a példában új változót adok hozzá a Windows környezeti változók listájához.

[Email protected] ~
$ vi env.yml

– házigazdák: nyerj
feladatok:
– név: környezeti változó beállítása minden felhasználó számára
win_environment:
állapot: jelen van
név: NewVariable
érték: Új érték
szint: gép

A környezeti változó hozzáadásához egy távoli Windows gépen futtassa a lehetséges playbookot.

[Email protected] ~
$ ansible-playbook env.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Minden felhasználó számára környezeti változó beállítása] ***************************************** ************************************************** ***
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 2 megváltozott = 1 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Lépjen a környezeti változók ablakba; látni fogja, hogy itt van az éppen hozzáadott új változó.

lehetséges Windows változók

Regisztráció hozzáadása / szerkesztése

A win_regedit egy lehetséges modult a távoli Windows gépen regisztrációs adatok hozzáadására vagy szerkesztésére használják. Meg kell adnia a regisztráció elérési útját és a hozzáadni / frissíteni kívánt tartalmat. Itt hozok létre egy új GeekFlare beállításjegyzék bejegyzést a HKLM: \ SOFTWARE elérési útján, majd hozzáadom a nevet és az adatokat a nyilvántartáshoz..

[Email protected] ~
$ vi register.yml

– házigazdák: nyerj

feladatok:

– név: Nyilvántartás létrehozása

win_regedit:

elérési út: HKLM: \ SZOFTVER \ GeekFlare

– név: Nyilvántartás módosítása, név és adatok hozzáadása

win_regedit:

elérési út: HKLM: \ SZOFTVER \ GeekFlare

név: Geek

adatok: Flare

Futtassa az ansible-playbookot a regisztráció hozzáadásához.

[Email protected] ~
$ ansible-playbook register.yml

JÁTÉK [nyer] ********************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Nyilvántartás létrehozása] *************************************************** ************************************************** *********************
megváltozott: [192.168.0.102]

FELADAT [Nyilvántartás módosítása, név és adatok hozzáadása] ********************************************** ************************************************** ***
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** *********************************
192.168.0.102
: ok = 3 megváltozott = 2 elérhetetlen = 0 sikertelen = 0
kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Ha a Rendszerleíróadatbázis-szerkesztőbe lép a távoli rendszeren, láthatja, hogy a rendszerleíró adatbázis sikeresen hozzáadódott a Név és az Adatok paraméterekkel.

lehetséges Windows rendszerleíró adatbázis

Napló törlése

A win_eventlog egy lehetséges modul a Windows eseménynaplóinak hozzáadására, törlésére vagy eltávolítására szolgál a Windows rendszerből.

Nyissa meg a Windows Powershell szolgáltatást, és sorolja fel a távoli Windows gépen jelenlévő EventLogs listát.

PS C: \ Users \ Geekflare> Get-EventLog -List
Max. (K) megőrizni a túlcsordulási bejegyzéseket
—— —— ————– ——- —
20,480 0 OverwriteAsNeeded 33,549 alkalmazás
20,480 0 OverwriteAsNeeded 0 HardwareEvents
512 7 OverwriteOlder 20 Internet Explorer
20 480 0 OverwriteAsNeeded 0 Kulcskezelő szolgáltatás
128 0 FelülírvaKapcsolva 190 OAlert
Biztonság
20,480 0 OverwriteAsNeeded 44,828 System
15,360 0 OverwriteAsNeeded 3,662 Windows PowerShell

Most megmutatom, hogyan lehet az Internet Explorer naplóit eltávolítani az összes forrásból.

[Email protected] ~
$ vi log.yml

– házigazdák: nyerj
feladatok:
– name: Távolítsa el az Internet Explorer naplóit
win_eventlog:
név: Internet Explorer
állapot: nincs

Futtassa a lehetséges playbookot az Internet Explorer eltávolításához a távoli Windows gépről.

[Email protected] ~
$ ansible-playbook log.yml

JÁTÉK [nyer] ********************************************** ************************************************** ************************************************** ***********************************

FELADAT [Tények gyűjtése] **************************************************** ************************************************** ************************************************** ************************
rendben: [192.168.0.102]

FELADAT [Internet Explorer naplók eltávolítása] ************************************************** ************************************************** *************************************************
megváltozott: [192.168.0.102]

Játssz RECAP ************************************************* ************************************************** ************************************************** *********************************
192.168.0.102: ok = 2 megváltozott = 1 elérhetetlen = 0 sikertelen = 0 kihagyva = 0 megmentett = 0 figyelmen kívül hagyva = 0

Most, ha újra felveszi az EventLogs listát, látni fogja, hogy az Internet Explorer naplóit eltávolították.

PS C: \ Users \ Geekflare> Get-EventLog -List

Max. (K) megőrizni a túlcsordulási bejegyzéseket
—— —— ————– ——- —
20,480 0 OverwriteAsNeeded 33,549 alkalmazás
20,480 0 OverwriteAsNeeded 0 HardwareEvents
20 480 0 OverwriteAsNeeded 0 Kulcskezelő szolgáltatás
128 0 FelülírvaKapcsolva 190 OAlert
Biztonság
20,480 0 OverwriteAsNeeded 44,835 System
15,360 0 OverwriteAsNeeded 56 Windows PowerShell

Tehát erről szól az Ansible playbooks, amelyek a Windows távoli adminisztrációjára használhatók. Próbáld ki ezeket a játékkönyveket. Kipróbálhat másokat is Lehetséges Windows modulok elérhető.

CÍMKÉK:

  • Ansible

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map