Lehetséges

Fájlok letöltése az Ansible get_url modul használatával

Fájlok letöltése az Ansible get_url modul használatával

Linux felhasználóként valószínűleg ismeri azokat az eszközöket, amelyek lehetővé teszik fájlok letöltését távoli szerverekről HTTP, HTTPS és FTP protokollok használatával, mint például a wget és a cURL. Automatizálási feladatok végrehajtásakor időnként fájlokat és csomagokat kell letölteni a távoli gazdagépekre. Bár a távoli hosztokon a wget és a cURL használatával elvégezheti ezt a funkciót, az Ansible get_url modul használatával megkerülheti a szükséges telepítést is, hogy ezeket az eszközöket használja.

Ez az oktatóanyag bemutatja, hogyan lehet az Ansible get_url paranccsal fájlokat letölteni a távoli szerverekről.

Mielőtt elkezdenénk, az Ansible get_url parancs a következő előfeltételeket követeli meg:

  1. A távoli kiszolgálónak, amelyről a fájl (oka) t le kell tölteni, közvetlen hozzáféréssel kell rendelkeznie a gazdagép kiszolgálóhoz.
  2. A hosztkiszolgálónak támogatnia kell a HTTP és a HTTPS protokollokat egyaránt.

A get_url modulról

Mielőtt elsajátítaná a get_url modul megvalósítását, először is meg kell értenie néhány dolgot erről a modulról. A get_url modul a következő szolgáltatásokat támogatja:

Ezután megmutatjuk, hogyan használhatja a get_url modult fájlok letöltésére különféle protokollokkal és konfigurációkkal.

A get_url modul használata fájlok megszerzéséhez

Az alábbiakban bemutatunk néhány példát, amelyeket a get_url modul használatával valósíthat meg, amikor fájlokat tölt le egy távoli szerverről.

Fájlok letöltése a HTTP / HTTPS szerverről közvetlen URL-címmel

Vegye figyelembe a következő játékkönyvet, amely könyvtárat hoz létre a ~ /.helyi és a get_url modult használja a Debian MySQL csomag letöltésére.

JEGYZET: A MYSQL szerver csomagokat az alább megadott erőforrásban találhatja meg:

https: // linkfy.to / mysql-csomagokba

- házigazdák: mind
- név: Töltse le a Debian MySQL szervert HTTP / HTTPS használatával
feladatok:
- név: A mysql-server könyvtár létrehozása a / home / user / könyvtárban.helyi
fájl:
útvonal: ~ /.local / mysql-server
állapot: könyvtár
mód: 0777
- név: GET MySQL-szerver csomagok
get_url:
URL: „https: // letöltések.mysql.com / archives / get / p / 23 / file / mysql-server_8.0.22-1debian10_amd64.deb-köteg.kátrány"
cél: ~ /.local / mysql-server
mód: 0777
ellenőrző összeg: md5: 5568e206a187a3b658392520540f556e

A fenti játékkönyv azzal kezdődik, hogy létrehoz egy könyvtárat a $ HOME / könyvtárban.local / mysql-server, ahol a letöltött csomagot tárolni kell. Ha privilegizált könyvtárban hoz létre könyvtárat, ne felejtse el használni a 'tapti' direktívát.

Ezután a játékkönyv meghívja a get_url modult, és meghatározza az URL-t, ahonnan letölti a csomagot, majd a célkönyvtár, ahova a fájlt tárolja. A játékkönyv utolsó szakasza megadja az md5 ellenőrző összeget a fájl érvényességének ellenőrzésére.

JEGYZET: A fenti játékkönyvben keményen kódoltuk az ellenőrző összeget, de megadhatja azt az URL-t, amelyen az ellenőrző összeg tárolódik.

A játékkönyv futtatása után kimenetet kap, amely jelzi a feladatok sikerét vagy sikertelenségét.

$ ansible-playbook download_mysql_server.yml PLAY [Debian MySQL szerver letöltése HTTP / HTTPS segítségével] **************************************** *************************************************** ************************************** ******************
FELADAT [Tények összegyűjtése] ********************************************** *************************************************** *************************************************** ******************************************
ok: [35.222.210.12]
FELADAT [A mysql-server könyvtár létrehozása a / home / user / könyvtárban.helyi] ************************************************** *************************************************** *************************************************** ***********
35.222.210.12: ok = 3 megváltozott = 1 elérhetetlen = 0 sikertelen = 0 kihagyott = 0 mentve = 0 figyelmen kívül hagyva = 0

Miután a folyamat befejeződött, bejelentkezhet a gazdagépre, és ellenőrizheti, hogy létezik-e a fájl.

Fájlok letöltése a sha256 ellenőrző összeggel

Fájlokat is letölthet és ellenőrizheti az sha256 ellenőrző összeg segítségével, az alábbi példa alapján:

- házigazdák: mind
- név: Töltse le a Debian MySQL szervert HTTP / HTTPS használatával
feladatok:
- név: A mysql-server könyvtár létrehozása a / home / user / könyvtárban.helyi
fájl:
útvonal: ~ /.local / mysql-server
állapot: könyvtár
mód: 0777
- név: GET MySQL-szerver csomagok
get_url:
URL: https: // letöltések.mysql.com / archives / get / p / 23 / file / mysql-server_8.0.22-1debian10_amd64.deb-köteg.kátrány
cél: ~ /.local / mysql-server
mód: 0777
ellenőrző összeg: sha256: b5bb9d8014a0f9b1d61e21e796d78eefdf1352f23cd32812f4850b878ae4944c

Ha URL-t szeretne használni az ellenőrző összeg kemény kódolása helyett, vegye figyelembe a következő példát:

- házigazdák: mind
- név: Töltse le a Debian MySQL szervert HTTP / HTTPS használatával
feladatok:
- név: A mysql-server könyvtár létrehozása a / home / user / könyvtárban.helyi
fájl:
útvonal: ~ /.local / mysql-server
állapot: könyvtár
mód: 0777
- név: GET MySQL-szerver csomagok
get_url:
URL: https: // letöltések.mysql.com / archives / get / p / 23 / file / mysql-server_8.0.22-1debian10_amd64.deb-köteg.kátrány
cél: ~ /.local / mysql-server
mód: 0777
ellenőrző összeg: sha256: https: // letöltések.mysql.com / archives / get / p / 23 / file / mysql-server_8.0.22-1debian10_amd64.deb-köteg.kátrány.sha265

Töltse le a válaszadás elmulasztásával kapcsolatos időkorlátos fájlokat

Bizonyos esetekben megadhat egy meghatározott erőforrás URL-t, amelyre hosszabb ideig tart a válaszadás, vagy amely nem érhető el. Ennek következtében a kapcsolat megszakadhat, mielőtt a szerver válaszolna, mivel az alapértelmezett időtúllépés általában 10 másodperc. Az időtúllépés értékének kifejezett megadásához használja az időtúllépést: irányelv.

Fontolja meg a következő játékkönyvet:

- házigazdák: mind
- név: Töltse le a Debian MySQL szervert időtúllépéssel
feladatok:
- név: A mysql-server könyvtár létrehozása a / home / user / könyvtárban.helyi
fájl:
útvonal: ~ /.local / mysql-server
állapot: könyvtár
mód: 0777
- név: GET MySQL-szerver csomagok
get_url:
URL: https: // letöltések.mysql.com / archives / get / p / 23 / file / mysql-server_8.0.22-1debian10_amd64.deb-köteg.kátrány
cél: ~ /.local / mysql-server
mód: 0777
ellenőrző összeg: sha256: https: // letöltések.mysql.com / archives / get / p / 23 / file / mysql-server_8.0.22-1debian10_amd64.deb-köteg.kátrány.sha265
időtúllépés: 30

A fenti játékkönyv az időtúllépést 30 másodpercként határozza meg, és a kapcsolat megszakad, ha a szerver nem reagál a megadott időn belül.

Fájlok letöltése hitelesítéssel

Fájl hitelesítést igénylő kiszolgálóra történő letöltéséhez meg kell adnia a bejelentkezési értékeket.

Fontolja meg a következő játékkönyvet:

- házigazdák: mind
- név: Fájl letöltése hitelesítéssel
vált: igen
get_url:
URL: http: // 102.15.192.120 / biztonsági mentések / adatbázis.kátrány.gz
dest: / biztonsági mentések
felhasználónév: felhasználó
jelszó: 'pass'
mód: 0777
időtúllépés: 5

Fájlok letöltése a helyi fájlútvonalról

Fájl letöltéséhez egy helyi fájl elérési útvonalról használhatja a file: // URI sémát, amelyet a fájl elérési útja követ.

Fontolja meg a következő játékkönyvet:

- gazdagépek: webszerverek
- név: Fájl letöltése a helyi fájl elérési útvonaláról
vált: igen
get_url:
url: file: /// backups / secure / config.kátrány.gz
dest: / dev / null

Töltse le az FTP fájlokat

Az FTP fájlok letöltése nagyon hasonló az előző szakaszban leírt folyamathoz. Mindössze annyit kell tennie, hogy megadja az ftp: // protokollt a szerver számára.

Biztonságos fájl letöltéséhez meg kell adnia a bejelentkezési információkat is, a korábban bemutatott módon.

Fontolja meg a következő játékkönyvet:

- házigazdák: mind
feladatok:
- név: Fájl letöltése az FTP szerverről
vált: igen
get_url:
URL: ftp: // 192.168.11.101
dest: / biztonsági mentések
mód: 0777

Ansible get_url modul beállításai

A get_url modul különféle lehetőségeket is támogat, amelyekkel meghatározhatja és figyelemmel kísérheti a fájlok letöltését és kezelését. A get_url modullal elérhető opciók a következőket tartalmazzák:

Következtetés

Ez a cikk részletesen taglalta az get_url modult az Ansible részben, és bemutatta, hogyan lehet ezzel a modullal fájlokat letölteni különböző forrásokból. Ebben a cikkben hivatkozhat arra, hogyan lehet fájlokat letölteni az Ansible programba a get_url modul használatával.

Hogyan lehet játékot fejleszteni Linuxon
Egy évtizeddel ezelőtt nem sok Linux-felhasználó jósolta, hogy kedvenc operációs rendszerük egy napon a videojátékok népszerű játékplatformja lesz. El...
Kereskedelmi játékmotorok nyílt forráskódú portjai
Ingyenes, nyílt forráskódú és platformokon átívelő játékmotorok szabadidős programjai felhasználhatók a régi, valamint a meglehetősen friss játékcímek...
A legjobb parancssori játékok Linuxhoz
A parancssor nem csak a legnagyobb szövetséges a Linux használatakor, hanem a szórakozás forrása is lehet, mert sok olyan szórakoztató játék lejátszás...