Kā vienlaikus atjaunināt vairākas mašīnas

Situācijās, kad pārvaldāt vairākas mašīnas, Apt var būt ļoti noderīgs, jo tas ļoti atvieglo katras mašīnas drošības ielāpu atjaunināšanu un lietošanu. Problēma ir tā, ka, izmantojot tradicionālo metodi, pēc atjaunināšanas iznākšanas jums ir jālejupielādē visu jauno mašīnu visu jauno pakotņu kopijas, kas nozīmē fenomenālu mūsu joslas un joslas platuma patēriņu. No oficiālā servera, par laimi, ir metode, kas ļauj mums atjaunināt vienu no mašīnām un pēc tam atjaunināt pārējās mašīnas, kas veido mūsu tīklu. Šī metode papildus izmaksu samazināšanai un mūsu joslas platuma izmantošanas optimizēšanai ļauj izvairīties no pakotņu dublēšanās dažādās mašīnās: visas paketes instalē, izmantojot mūsu "kešatmiņas serveri".


Palaižot vienu un to pašu izplatīšanu dažādās mašīnās (darbā, datoru laboratorijās, serveru fermās, kopās vai pat nelielajā mājas tīklā), var būt noderīgi izveidot tīklā kešatmiņas krātuvi. lai pēc tam, kad pakete ir lejupielādēta no oficiāla repozitorija, visas pārējās mašīnas to lejupielādē no šīs kešatmiņas repozitorija, kas tiek glabāta jūsu tīkla mašīnā, kuru mēs sauksim par "serveri". Tādā veidā no vienas mašīnas lejupielādētos atjauninājumus var instalēt arī pārējos, tos atkārtoti nelādējot no oficiālajiem krātuvēm.

Vispirms apskatīsim dažus "netradicionālus" risinājumus, kurus es NEiesaku, bet kas noteikti ienāks prātā, risinot šo jautājumu.

Kopīgot / etc / apt

Instalējot pakotni Debian izplatītājā (vai tās atvasinājumos), tā tiek lokāli saglabāta direktorijā '/ etc / apt'. Ja nepieciešama pakete, Apt vispirms meklē šajā direktorijā, lai redzētu, vai ir lokāla kopija (tas ir, kešatmiņa), tādējādi izvairoties no nevajadzīgas lejupielādes. Tā rezultātā vairāki no jums noteikti būs domājuši, ka labs veids, kā atrisināt attiecīgo problēmu, varētu būt izvēlēties datoru, kuru mēs apzīmēsim kā sava veida serveri, kuru atjauninās, izmantojot oficiālos krātuves, un kas koplietojiet direktoriju '/ etc / apt' ar pārējām tīkla mašīnām. Tomēr šī metode var radīt problēmas, kas saistītas ar faila “sources.list” bloķēšanu. Kopumā tas nav visplašāk izmantotais vai ērtākais risinājums.

Pārvietot pakas

Tā vietā, lai koplietotu kopīgu direktoriju / / etc / apt, cita alternatīva varētu būt katram datoram izmantot savu vietējo kešatmiņas direktoriju, bet ģenerēt skriptu, kas rūpējas par pakotņu kopēšanu no vienas mašīnas uz otru, lai tās visas paliktu atjaunināts. Rīks šī uzdevuma veikšanai var būt “apt-move”, taču, godīgi sakot, es to neiesaku, jo gala lietotājam tas nav pietiekami caurspīdīgs. Turklāt tas var nozīmēt pilnīgi nevajadzīgu diska vietas izmantošanu, jo visas paketes būs jākopē katrā no mašīnām.

Īpašas kešatmiņas sistēmas

Labākais šīs problēmas risinājums ir izmantot īpašu kešatmiņas sistēmu. Īsāk sakot, tas ir izveidot oficiālo serveru kopijas vienā no tīkla ierīcēm un pēc tam konfigurēt pārējās mašīnas tā, lai tā vietā, lai meklētu atjauninājumus no oficiālajiem serveriem, viņi to darītu, izmantojot šo vietējā kešatmiņa (vai kopija).

Ir dažādas sistēmas, kas paredzētas darbam ar Apt, tostarp apt-cacher, apt-proxy un apt-cached.

Šeit mēs strādāsim ar apt-cacher, kuru ir visvieglāk izmantot.

apt-cacher

Apt-cacher ļoti atšķiras no citām krātuves kešatmiņas sistēmām, jo ​​tā nav atsevišķa programma, bet Apache darbojas kā CGI skripts. Tam ir vairākas priekšrocības, piemēram, padarot to par mazu un vienkāršu rīku, bet tajā pašā laikā ļoti spēcīgu un līdz ar to izturīgāku, jo protokolu apstrādei nav nepieciešams savs kods, un tas ir ļoti elastīgs, jo jūs varat izmantot Apache piekļuves kontroles mehānisms, ja vēlaties ierobežot to mašīnu skaitu, kurām ir iespējota piekļuve kešatmiņai.

Apt-cacher ir jāinstalē tikai vienā mašīnā, kurai jāizlemj, ka tai vajadzētu darboties kā lokālajai repozitorija kešatmiņai. Pēc tam pārējie jūsu tīkla datori ir jākonfigurē, lai pieprasītu atjauninājumus no kešatmiņas, nevis no oficiālajiem serveriem.

Servera iestatīšana

Lai instalētu tikai

sudo apt-get instalēt apt-cacher

Šai pakotnei ir atkarības no apache, perl un wget, tāpēc tā tās instalēs, ja jums tā vēl nav instalēta.

Pēc instalēšanas ieteicams restartēt Apache:

/etc/init.d/apache restart

Visbeidzot, jums atliek tikai pielāgot skripta noklusējuma parametrus. Es rakstīju terminālā:

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

Kopumā visi noklusējumi ir labi, taču ieteicams pielāgot šādus trīs:

admin_email = mimail @ myserver generēt_ziņojumus = 1 derīguma termiņš_stundas = 24

Otrais elements ir Būla mainīgais, kas nosaka pārskatu ģenerēšanu (0 neražo pārskatus, 1 tos ģenerē). Pirmais elements tā vietā ir e-pasta adrese, uz kuru tiks nosūtīti izveidotie pārskati. Trešais un pēdējais elements nosaka stundu skaitu, ko Apt vajadzētu gaidīt, lai pārbaudītu, vai oficiālajos serveros ir pieejami atjauninājumi.

Ja izmantojat starpniekserveri, neaizmirstiet pievienot šādus vienumus:

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

Lai pārbaudītu, vai tas darbojas, varat piekļūt vietējai kešatmiņai, izmantojot vietrādi URL: http: // servera_nosaukums / apt-cacher /, un parādīsies lapa, kurā parādīta apt-cacher konfigurācija. Atcerieties, ka “servera_nosaukums” ir jāaizstāj ar tās mašīnas IP, kuru esat norādījis kā “serveris”, tas ir, kā vietējās pakešatmiņas glabātuvi.

Klientu konfigurācija

Tagad viss, kas jums jādara, ir modificēt klientu source.list, lai tos izietu caur serveri. Ja servera IP ir 123.123.123.123, tas ir jāpievieno katrai source.list rindai, kā arī jāuzmanās, lai tie visi atsauktos uz to pašu serveri, pretējā gadījumā kešatmiņa neietekmēs.

sudo gedit /etc/apt/sources.list
Piezīme: esiet piesardzīgs! Debian un tā atvasinājumos “sources.list” tiek glabāts mapē “/ etc / apt”. Tomēr citos izplatījumos tas var tikt saglabāts citā ceļā. Ja nevarat atrast failu, to vienmēr varat atrast, terminālā ievadot “locate sources.list”.

Kad fails ir atvērts un mūsu servera IP ir 123.123.123.123, visas līnijas ir jāmaina, izmantojot šādus kritērijus:

# Original #deb http://ftp.us.debian.org/debian/ sid galvenais ieguldījums bez maksas # deb-src http://ftp.us.debian.org/debian/ sid galvenais ieguldījums bez maksas # Modificēts deb http://123.123.123.123/apt-cacher/ftp.us.debian.org/debian/ sid galvenais ieguldījums bez maksas deb-src http://123.123.123.123/apt-cacher/ftp.us.debian. org / debian / sid galvenais ieguldījums nav bezmaksas

Kā redzat, URL sākumā ir jāpievieno servera IP + '/ apt-cacher /'. Tad nāk pārējā sākotnējā līnija.

Satiksmes statistika

Ja failā 'apt-cacher.conf' pievienojāt elementu 'generator_reports = 1', apt-cacher ģenerēs piekļuves statistiku, kurai varat piekļūt, izmantojot URL '/ apt-cacher / report'.

Ja kāda iemesla dēļ statistika ir jāveido pirms 'apt-cacher.conf' iestatītā stundu skaita, palaidiet šādu komandu:

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

12 komentāri, atstājiet savus

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   eduardo teica

    Sveicieni, lielisks ieguldījums, mans jautājums ir, ja jūs zināt kādu lietojumprogrammu, kas ļauj jums izveidot centralizētu repozitoriju, lai lietotu ielāpus, bet dažādiem sadalījumiem, tas ir, vienlaikus atjauninātu vairākas mašīnas, bet tām ir dažādi sadalījumi

  2.   Izmantosim Linux teica

    Sveiks, Eduardo! Patiesība ir tāda, ka es to redzu ļoti grūti. Ja atklājat kādu veidu, nepārtrauciet man to paziņot.
    Liels apskāviens! Priekā! Pāvils.

  3.   skops teica

    Es izmantoju leļļu, lai attālināti pārvaldītu pārvaldītos serverus.

  4.   Izmantosim Linux teica

    Jā, liels paldies par informāciju. Es to jau izlaboju.
    Apskāviens! Pāvils.

  5.   Geniutriksons teica

    Hello,

    apmācība ir ļoti laba ... man ir darbības joma .. Debian Lenny programmā source.lst atrodas ceļā / etc / apt /

    vēlējumiem

  6.   sepulvedamarcos teica

    jautājums….

    ja man ir pāris mašīnas ar tādu pašu distro ... bet ne ar tām pašām programmām .... Kā jūs zināt, ko lejupielādēt no oficiālajām repo vietnēm ... visu pazemina ??? ...

  7.   Izmantosim Linux teica

    Jūsu jautājums ir izcils. Es aprēķinu, ka sistēmai vajadzētu darboties tāpat kā parastajā Apt: ja to neatrod kešatmiņā, tā to lejupielādē no oficiālajiem krātuvēm. Šajā gadījumā viena no "klienta" mašīnām informē "serveri", ka tas ir jāatjaunina atbilstoši atjauninājumu sarakstam jūsu tīkla "serverī". Lai instalētu šo atjauninājumu, es aprēķinu, ka tas vispirms meklēs pakotni servera kešatmiņā. Ja to nevar atrast, tas to lejupielādē no oficiālajiem krātuvēm, saglabā serverī un no turienes tiek instalēts mašīnā, kurai tas bija nepieciešams. Šī pakete būs pieejama "servera" kešatmiņā, lai arī citas ierīces jūsu tīklā varētu to instalēt no turienes.

    Lūdzu, nevilcinieties rakstīt, ja man nebija pietiekami skaidra.

    Apskāviens! Pāvils.

  8.   Mišudarka teica

    Es domāju, ka ir KĻŪDA ... paketes netiek glabātas mapē / etc / apt .... viņi faktiski paliek / var / cache / apt / archives

  9.   Izmantosim Linux teica

    Patiesību es nezinu.
    Protams, ir veids, kā to izdarīt. 🙁
    Ja uzzināsiet, dariet to zināmu, un es to pievienošu.
    Priekā! Pāvils.

  10.   Alvaro teica

    Nekas ar dinamiskiem ip, vai ne?

  11.   Marce teica

    Acīmredzot jaunākajos rajonos vietējais tīkls URL ir jāpievieno ports (pēc noklusējuma 3142). Tas izskatīsies šādi: http://mi_servidor:3142/apt-cacher

  12.   Alfredo Torreļba teica

    Man ir lubuntu 16.04, kurš to ir izdarījis saskaņā ar šo sistēmu, un ja tas viņam ir izdevies? un tas, ko es gribēju jautāt, ir šāds, ja es instalēju šo serveri un manām citām mašīnām nav tādu pašu programmu, kad es klienta mašīnās pieprasu instalēt programmu, kas man ir serverī, vai jūs domājat, ka es instalēju tas tieši no vietējā servera vai pieprasījums tiek nosūtīts oficiālajam repozitorija serverim ¿?