Centurile creează repository local, rtfm linux, devops și administrarea sistemului

Centurile creează repository local, rtfm linux, devops și administrarea sistemului
Există 8 servere și un canal foarte trist pentru lume.

Pentru a reduce încărcarea și a accelera procesul, puteți crea un depozit separat pe o singură mașină care va actualiza pachetele din acesta și apoi va distribui actualizări la alte mașini din rețea.

Configurația este efectuată pe CentOS 6.6.

O listă de oglinzi (atât HTTP cât și rsync) poate fi găsită aici >>>.

Creăm directoare pentru depozit:

Pe scurt despre structura directoarelor din depozit.

  • [Base] - de obicei stocate în directorul os. conține pachete care se află în eliberarea de eliberare a sistemului;
  • [Actualizări] - de obicei stocate în directorul actualizări. Acesta conține pachete mai noi față de [Base].

Acum avem nevoie doar de aceste două. Descrierea celorlalți poate fi găsită aici >>>.

Conectăm imaginea DVD. care nu ar descărca totul din rețea:

Copiem conținutul discului în directorul /repository/CentOS/6.6/os/i386/:

Se conectează DVD2. și repetați, dar copiați numai fișierele rpm:

Dimensiunea totală a fost:

Pentru a descărca fișierele de pe discuri a dispărut

Dacă nu puteți conecta unitatea, puteți descărca [Base] din oglindă.

Selectăm serverul, verificăm conținutul acestuia:

Și începe descărcarea:

Depozitul [Base] este gata. Utilitarul createrepo este necesar numai dacă doriți să creați un depozit propriu cu pachetele.

Din moment ce am copiat datele de pe un disc sau o rețea - toate metadatele pentru repozitoriu există deja în directorul /repository/CentOS/6.6/os/i386/repodata/:

Continuați cu [Actualizări]. Conținutul va fi descărcat din oglindă.

Și vom încărca datele în actualizările de catalog:

Până când a durat

Creați fișierul de configurare al repozitorului /etc/yum.repos.d/local.repo:

Verificăm actualizările prin dezactivarea tuturor depozitelor, cu excepția noilor noastre [Actualizări]:

Apoi, acest lucru ar deschide accesul la depozit pentru alte servere - configurați NGINX (sau Apache HTTP., Dar am NGINX peste tot).

Creați fișierul /etc/nginx/conf.d/repo.local.net.conf cu următorul conținut:

Apoi, reveniți la fișierul de setări al depozitului și schimbați:

Acum, în loc să accesați direct directorul local - YUM va trimite o cerere prin HTTP.

În cazul unor erori ale formularului:

Eroare la importul repomd.xml pentru actualizare: Fișier repomd.xml deteriorat

În primul rând, încercăm să obținem fișierul prin HTTP:

Și uitați-vă la erorile serverului web.

Instalăm un nou depozit (fișier local.repo) pe alte servere.

Ultimul pas este să configurați pachetele de actualizare din [Actualizări].

Să facem un script simplu /etc/cron.daily/reposupdate.sh:

Ultimul punct care trebuie clarificat. În toate exemplele de mai sus - descărcarea pachetelor se face din directorul 6.6, în timp ce pe oglinzi există un director 6:

Puteți actualiza de la acesta (în mod necesar, atât [Base] și [Updates]), apoi sistemul se va actualiza când va fi lansată o nouă versiune, de exemplu, 6.7 (deși acest lucru nu va fi, probabil).

În același mod - se adaugă și depozitele Elrepo. RPMforge și altele.