Kako istovremeno održavati ažurnost više strojeva

U situacijama kada upravljate s više strojeva, Apt može biti vrlo koristan jer postupak ažuriranja i primjene sigurnosnih zakrpa za svaki stroj čini vrlo jednostavnim. Problem je u tome što, s tradicionalnom metodom, nakon što izađe ažuriranje, morate preuzeti kopiju svih novih paketa za svaki od strojeva, što podrazumijeva fenomenalnu potrošnju naše propusnosti i propusnosti. sa službenog poslužitelja Srećom, postoji metoda koja nam omogućuje ažuriranje jednog od strojeva i odatle ažuriranje ostalih strojeva koji čine našu mrežu. Ova metoda, osim što smanjuje troškove i optimizira upotrebu naše propusnosti, izbjegava dupliciranje paketa na različitim strojevima: svi oni instaliraju pakete pomoću našeg "poslužitelja predmemorije".


Kada pokrećete istu distribuciju na različitim strojevima (bilo na poslu, u računalnim laboratorijima, na "farmama poslužitelja", u klasterima ili čak na vašoj maloj kućnoj mreži), može biti korisno stvoriti spremište predmemorije na vašoj mreži tako da nakon preuzimanja paketa iz službenog spremišta, svi ostali strojevi preuzimaju ga iz onog spremišta predmemorije koje je pohranjeno na računalu u vašoj mreži koji ćemo nazvati "poslužitelj". Na taj se način nadogradnje preuzete s jednog računala mogu instalirati na ostale, bez ponovnog preuzimanja iz službenih spremišta.

Pogledajmo najprije neka "netradicionalna" rješenja koja NE preporučujem, ali koja će vam sigurno pasti na pamet prilikom rješavanja ovog pitanja.

Podijeli / etc / apt

Kada instalirate paket na distribucijski sustav Debian (ili njegove derivate), on se lokalno pohranjuje u direktorij '/ etc / apt'. Kada je potreban paket, Apt prvo pogleda u ovaj direktorij kako bi utvrdio postoji li lokalna kopija (odnosno predmemorija), izbjegavajući nepotrebno preuzimanje. Kao rezultat toga, nekolicina vas sigurno će pomisliti da bi dobar način rješavanja predmetnog problema mogao biti odabir računala koje bismo odredili kao neku vrstu poslužitelja, koje bi se ažuriralo pomoću službenih spremišta i koje bi dijelilo svoj direktorij '/ etc / apt' s ostalim računalima na mreži. Međutim, ova metoda može dovesti do problema povezanih s blokiranjem datoteke 'sources.list'. Općenito, to nije najčešće korišteno ili najprikladnije rješenje.

Premjestite pakete

Umjesto dijeljenja zajedničkog direktorija '/ etc / apt', druga alternativa može biti svako računalo da koristi vlastiti direktorij lokalne predmemorije, ali generira skriptu koja se brine za kopiranje paketa s jednog računala na drugi tako da svi ostanu ažurirano. Alat za izvršavanje ovog zadatka može biti "apt-move", ali iskreno ga ne preporučujem jer nije dovoljno transparentan za krajnjeg korisnika. Uz to, to može značiti potpuno nepotrebno korištenje prostora na disku, jer će svi paketi morati biti kopirani na svaki od strojeva.

Namjenski predmemorijski sustavi

Najbolje rješenje za ovaj problem je uporaba namjenskog predmemorijskog sustava. Ukratko, ono o čemu se radi je stvoriti kopiju službenih poslužitelja na jednom od računala u vašoj mreži, a zatim konfigurirati ostatak strojeva tako da, umjesto da traže ažuriranja sa službenih poslužitelja, oni to učine pomoću ove lokalne predmemorije (ili kopije).

Postoji niz sustava dizajniranih za rad s Aptom, uključujući apt-cacher, apt-proxy i apt-cached.

Ovdje ćemo se pozabaviti apt-cacherom, koji je najjednostavniji za korištenje.

apt-cacher

Apt-cacher se vrlo razlikuje od ostalih sustava za predmemoriranje spremišta, jer nije samostalni program, već se izvodi kao CGI skripta pod Apacheom. To ima nekoliko prednosti, kao što je stvaranje malog i jednostavnog alata, ali istodobno vrlo moćnog i, shodno tome, robusnijeg jer ne zahtijeva vlastiti kôd za obradu protokola, a vrlo je fleksibilan jer možete koristiti Apacheov mehanizam kontrole pristupa u slučaju da želite ograničiti broj strojeva kojima je omogućen pristup predmemoriji.

Apt-cacher treba instalirati samo na jednom računalu, onaj za koji odlučite da treba funkcionirati kao vaša predmemorija lokalnog spremišta. Zatim, ostatak računala na vašoj mreži mora biti konfiguriran tako da zahtijeva ažuriranja iz predmemorije, a ne sa službenih poslužitelja.

Konfiguracija poslužitelja

Za samo instaliranje

sudo apt-get instalirati apt-cacher

Ovaj paket ima ovisnosti o apacheu, perlu i wgetu, pa će ih instalirati ako ga prethodno niste instalirali.

Jednom instaliran, preporuča se ponovno pokrenuti Apache:

/etc/init.d/apache ponovno pokretanje

Napokon, sve što morate učiniti je prilagoditi zadane parametre skripte. U terminalu sam napisao:

sudo gedit /etc/apt-cacher/apt-cacher.conf

Općenito su sve zadane vrijednosti u redu, ali preporuča se prilagoditi sljedeće tri:

admin_email = mimail @ myserver generiraj izvještaje = 1 expire_hours = 24

Drugi element je logička varijabla koja određuje generiranje izvješća (0 ne generira izvješća, 1 ih generira). Umjesto toga, prvi je element adresa e-pošte na koju će se poslati stvorena izvješća. Treća i zadnja stavka određuje broj sati koje bi Apt trebao pričekati da provjeri ima li ažuriranja dostupnih na službenim poslužiteljima.

Ako koristite proxy, ne zaboravite dodati sljedeće stavke:

http_proxy = proxy.example.com: 8080 use_proxy = 1

Da biste provjerili radi li, lokalnoj predmemoriji možete pristupiti putem URL-a http: // ime_poslužitelja / apt-cacher / i pojavit će se stranica koja prikazuje konfiguraciju apt-cachera. Imajte na umu da 'server_name' mora biti zamijenjen IP-om stroja koji ste odredili kao 'server', odnosno kao depozitar lokalne predmemorije paketa.

Konfiguracija klijenata

Sada sve što morate učiniti je modificirati Source.list klijenata tako da prolaze kroz poslužitelj. Ako je IP poslužitelja 123.123.123.123, morate ga dodati u svaki redak sources.list-a i također pripaziti da se svi odnose na isti poslužitelj, inače predmemorija neće imati učinka.

sudo gedit /etc/apt/sources.list
Napomena: Budite oprezni! U Debianu i njegovim izvedenicama 'sources.list' pohranjen je u '/ etc / apt'. Međutim, u drugim distribucijama može se pohraniti na drugi put. U slučaju da datoteku ne možete pronaći, uvijek je možete pronaći unošenjem "locate sources.list" u terminalu.

Jednom kada se datoteka otvori, IP našeg poslužitelja je 123.123.123.123, sve linije treba izmijeniti prema sljedećim kriterijima:

# Original #deb http://ftp.us.debian.org/debian/ sid glavni prilog neslobodno # deb-src http://ftp.us.debian.org/debian/ sid glavni prilog neslobodno # Izmijenjeno deb http://123.123.123.123/apt-cacher/ftp.us.debian.org/debian/ sid glavni doprinos neslobodni deb-src http://123.123.123.123/apt-cacher/ftp.us.debian. org / debian / sid glavni doprinos neslobodan

Kao što vidite, na početku URL-a morate dodati IP poslužitelja + '/ apt-cacher /'. Zatim ide ostatak originalne linije.

Statistika prometa

Ako ste dodali element 'generiraj izvještaje = 1' u datoteku 'apt-cacher.conf', apt-cacher će generirati statistiku pristupa kojoj možete pristupiti s url-om '/ apt-cacher / report'.

Ako iz bilo kojeg razloga trebate generirati statistiku prije broja sati postavljenih u 'apt-cacher.conf', pokrenite sljedeću naredbu:

/usr/share/apt-cacher/apt-cacher-report.pl

12 komentara, ostavi svoj

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Eduardo dijo

    Pozdrav, izvrstan doprinos, moje pitanje je ako znate bilo koju aplikaciju koja vam omogućuje da imate centralizirano spremište za primjenu zakrpa, ali na različite distribucije, odnosno održavajte nekoliko računala ažuriranim u isto vrijeme, ali imaju različite distribucije

  2.   Koristimo Linux dijo

    Bok Eduardo! Istina je da to vidim vrlo teško. Ako otkrijete bilo koji način, nemojte mi prestajati javljati.
    Veliki zagrljaj! Živjeli! Pavao.

  3.   chiche dijo

    Lutku koristim za daljinsko upravljanje poslužiteljima kojima upravljam.

  4.   Koristimo Linux dijo

    Da, puno vam hvala na informacijama. Već sam to ispravio.
    Zagrliti! Pavao.

  5.   Geniutrikson dijo

    Pozdrav,

    tutorial je super dobar ... imam opseg .. u Debianu Lennyju source.lst je na putu / etc / apt /

    pozdravi

  6.   sepulvedamarcos dijo

    pitanje….

    ako imam nekoliko strojeva s istim distro-om ... ali ne s istim programima .... Kako znati što preuzeti sa službenog repoa ... spušta sve ??? ...

  7.   Koristimo Linux dijo

    Vaše pitanje je izvrsno. Računam da bi sustav trebao raditi isto kao u uobičajenom Apt-u: ako ga ne pronađe u predmemoriji, preuzima ga iz službenih spremišta. U tom slučaju, jedan od "klijentskih" strojeva obavještava "poslužitelj" da mu je potrebno ažuriranje prema popisu ažuriranja na "poslužitelju" vaše mreže. Da bih instalirao to ažuriranje, izračunavam da će prvo potražiti paket u predmemoriji poslužitelja. Ako ga ne može pronaći, preuzima ga iz službenih spremišta, sprema na poslužitelj i odatle se instalira na stroj koji ga zahtijeva. Ovaj će paket biti dostupan u predmemoriji "poslužitelja", tako da ga odatle mogu instalirati i drugi strojevi na vašoj mreži.

    Slobodno pišite ako nisam bio dovoljno jasan.

    Zagrljaj! Pavao.

  8.   Mišudark dijo

    Mislim da postoji GREŠKA… paketi se ne pohranjuju u / etc / apt…. zapravo ostaju u / var / cache / apt / archives

  9.   Koristimo Linux dijo

    Istina je da ne znam.
    Sigurno postoji način da se to učini. 🙁
    Ako saznate, javite mi i ja ću ga dodati.
    Živjeli! Pavao.

  10.   Alvaro dijo

    Ništa s dinamičkim IP-ovima, zar ne?

  11.   Marce dijo

    Očito u aktualnijim distribucijama morate dodati priključak (3142 prema zadanim postavkama) URL-u lokalne mreže. To bi izgledalo ovako: http://mi_servidor:3142/apt-cacher

  12.   alfredo torrealba dijo

    Imam lubuntu 16.04 tko je to radio pod ovim sustavom i je li to uspjelo kod njega? a ono što sam želio pitati je sljedeće ako instaliram ovaj poslužitelj i moji drugi strojevi nemaju iste programe prilikom podnošenja zahtjeva na mojim klijentskim strojevima za instalaciju programa koji imam na poslužitelju, mislite li da ga instaliram izravno s lokalnog poslužitelja ili ne zahtjev službenom poslužitelju spremišta?