Jak udržovat více strojů aktualizovaných současně

V situacích, kdy spravujete více počítačů, může být Apt velmi užitečný, protože velmi usnadňuje proces aktualizace a použití bezpečnostních oprav pro každý počítač. Problém je v tom, že s tradiční metodou, jakmile vyjde aktualizace, musíte si stáhnout kopii všech nových balíčků pro každý ze strojů, což znamená fenomenální spotřebu naší šířky pásma a šířky pásma. z oficiálního serveru Naštěstí existuje metoda, která nám umožňuje aktualizovat jeden ze strojů a odtud aktualizovat ostatní stroje, které tvoří naši síť. Tato metoda kromě snížení nákladů a optimalizace využití naší šířky pásma zamezuje duplikaci balíčků na různých počítačích: všechny balíčky instalují pomocí našeho „serveru mezipaměti“.


Pokud používáte stejnou distribuci na různých počítačích (ať už v práci, v počítačových laboratořích, na serverových „farmách“, v klastrech nebo dokonce v malé domácí síti), může být užitečné vytvořit úložiště mezipaměti v síti tak, aby jakmile byl balíček stažen z oficiálního úložiště, všechny ostatní počítače jej stáhnou z tohoto úložiště mezipaměti, které je uloženo v počítači ve vaší síti, který budeme nazývat „server“. Tímto způsobem lze aktualizace stažené z jednoho počítače instalovat na ostatní, aniž byste je museli znovu stahovat z oficiálních úložišť.

Nejprve se podívejme na některá „netradiční“ řešení, která NEDOPORUČUJEM, ale to mi při řešení této otázky jistě přijde na mysl.

Sdílet / etc / apt

Když instalujete balíček na distribuci Debianu (nebo jeho deriváty), je uložen lokálně v adresáři '/ etc / apt'. Je-li vyžadován balíček, Apt nejprve vyhledá v tomto adresáři, aby zjistil, zda existuje místní kopie (tj. Mezipaměť), čímž se vyhne zbytečnému stahování. Výsledkem bude, že si mnozí z vás jistě mysleli, že dobrým způsobem, jak vyřešit daný problém, může být výběr počítače, který bychom označili jako jakýsi server, který by byl aktualizován pomocí oficiálních úložišť a který by sdílel adresář '/ etc / apt' se zbytkem počítačů v síti. Tato metoda by však mohla vést k problémům souvisejícím s blokováním souboru „sources.list“. Obecně se nejedná o nejpoužívanější nebo nejpohodlnější řešení.

Přesunout balíčky

Místo sdílení společného adresáře '/ etc / apt' může být další alternativou to, že každý počítač používá svůj vlastní adresář místní mezipaměti, ale vygeneruje skript, který se postará o kopírování balíčků z jednoho počítače do druhého, aby všechny zůstaly aktualizováno. Nástrojem k provedení tohoto úkolu může být „apt-move“, ale upřímně ho nedoporučuji, protože pro koncového uživatele není dostatečně transparentní. Může to také znamenat zcela zbytečné využití místa na disku, protože všechny balíčky budou muset být zkopírovány do každého ze strojů.

Vyhrazené systémy mezipaměti

Nejlepším řešením tohoto problému je použití vyhrazeného systému mezipaměti. Stručně řečeno, jde o to, vytvořit kopii oficiálních serverů na jednom ze počítačů ve vaší síti a poté nakonfigurovat ostatní počítače tak, aby to místo hledání aktualizací z oficiálních serverů dělaly pomocí této místní mezipaměti (nebo kopie).

Existuje celá řada systémů navržených pro práci s Apt, včetně apt-cacher, apt-proxy a apt-cached.

Zde se budeme zabývat apt-cacher, který je nejjednodušší použít.

apt-cacher

Apt-cacher se zcela liší od jiných systémů ukládání do mezipaměti úložiště, protože to není samostatný program, ale běží jako CGI skript pod Apache. To má několik výhod, například to, že se jedná o malý a jednoduchý nástroj, ale zároveň velmi výkonný a následně robustnější, protože pro zpracování protokolů nevyžaduje vlastní kód, a je velmi flexibilní, protože můžete použít Mechanismus řízení přístupu Apache v případě, že chcete omezit počet počítačů, které mají povolen přístup do mezipaměti.

Apt-cacher musí být nainstalován pouze na jednom počítači, ten, o kterém se rozhodnete, by měl fungovat jako místní mezipaměť úložiště. Poté musí být zbytek počítačů ve vaší síti nakonfigurován tak, aby vyžadoval aktualizace z mezipaměti, a nikoli z oficiálních serverů.

Nastavení serveru

Chcete-li nainstalovat jen

sudo apt-get nainstalovat apt-cacher

Tento balíček má závislosti s apache, perl a wget, takže je nainstaluje, pokud jej nemáte dříve nainstalovaný.

Po instalaci se doporučuje restartovat Apache:

/etc/init.d/apache restartovat

Nakonec vše, co musíte udělat, je upravit výchozí parametry skriptu. Napsal jsem do terminálu:

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

Obecně jsou všechny výchozí hodnoty v pořádku, ale doporučuje se upravit následující tři:

admin_email = mimail @ myserver generate_reports = 1 expire_hours = 24

Druhým prvkem je proměnná typu Boolean, která určuje generování sestav (0 negeneruje zprávy, 1 je generuje). Prvním prvkem je e-mailová adresa, na kterou se budou zasílat vytvořené zprávy. Třetí a poslední položka určuje počet hodin, kdy by Apt měl čekat na kontrolu dostupnosti aktualizací na oficiálních serverech.

Pokud používáte proxy, nezapomeňte přidat následující položky:

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

Chcete-li ověřit, že to funguje, můžete přistupovat k místní mezipaměti prostřednictvím adresy URL http: // název_serveru / apt-cacher / a zobrazí se stránka s konfigurací apt-cacher. Pamatujte, že 'název_serveru' musí být nahrazen IP zařízením, které jste označili jako 'server', tedy jako depozitář lokální mezipaměti paketů.

Konfigurace klientů

Nyní už jen musíte upravit seznam sources.list klientů tak, aby procházel serverem. Pokud je adresa IP serveru 123.123.123.123, musíte ji přidat do každého řádku seznamu sources.list a také dávat pozor, aby všichni odkazovali na stejný server, jinak nebude mít mezipaměť žádný účinek.

sudo gedit /etc/apt/sources.list
Poznámka: Buďte opatrní! V Debianu a jeho derivátech je soubor „sources.list“ uložen v souboru „/ etc / apt“. V jiných distribucích však může být uložen v jiné cestě. Pokud soubor nemůžete najít, můžete jej vždy vyhledat zadáním příkazu „locate sources.list“ do terminálu.

Jakmile je soubor otevřen, IP našeho serveru je 123.123.123.123, všechny řádky by měly být upraveny podle následujících kritérií:

# Původní #deb http://ftp.us.debian.org/debian/ sid main contrib non-free # deb-src http://ftp.us.debian.org/debian/ sid main contrib non-free # Upraveno deb http://123.123.123.123/apt-cacher/ftp.us.debian.org/debian/ sid main contrib non-free deb-src http://123.123.123.123/apt-cacher/ftp.us.debian. org / debian / sid hlavní příspěvek nesvobodný

Jak vidíte, na začátku adresy URL je třeba přidat server IP + '/ apt-cacher /'. Pak přichází zbytek původní linie.

Statistiky provozu

Pokud jste do souboru 'apt-cacher.conf' přidali prvek 'generate_reports = 1', apt-cacher vygeneruje statistiku přístupu, ke které máte přístup pomocí adresy URL '/ apt-cacher / report'.

Pokud z nějakého důvodu potřebujete vygenerovat statistiku před počtem hodin nastaveným v souboru 'apt-cacher.conf', spusťte následující příkaz:

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

Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.

  1.   Eduardo řekl

    Zdravím, vynikající příspěvek, moje otázka zní, pokud víte o jakékoli aplikaci, která vám umožní mít centralizované úložiště pro použití oprav, ale pro různé distribuce, to znamená udržovat několik strojů aktualizovaných současně, ale mají různé distribuce

  2.   Pojďme použít Linux řekl

    Ahoj Eduardo! Pravdou je, že to vidím velmi obtížně. Pokud něco objevíte, nepřestávejte mi dávat vědět.
    Velké objetí! Na zdraví! Pavel.

  3.   chiche řekl

    K dálkové správě serverů, které spravuji, používám loutku.

  4.   Pojďme použít Linux řekl

    Ano, velmi vám děkuji za informace. Už jsem to opravil.
    Objetí! Pavel.

  5.   Geniutrixon řekl

    Dobrý den,

    výukový program je super dobrý ... mám rozsah .. v Debianu Lenny je source.lst v cestě / etc / apt /

    jde o

  6.   sepulvedamarcos řekl

    otázka….

    pokud mám pár strojů se stejnou distribucí… ale ne se stejnými programy…. Jak víte, co si stáhnout z oficiálních repozitářů…. snižuje všechno ??? ...

  7.   Pojďme použít Linux řekl

    Vaše otázka je vynikající. Počítám, že systém by měl fungovat stejně jako v běžném Apt: pokud jej nenajde v mezipaměti, stáhne jej z oficiálních úložišť. V tomto případě jeden z „klientských“ počítačů informuje „server“, že potřebuje aktualizaci, podle seznamu aktualizací, který se zobrazí na „serveru“ vaší sítě. Chcete-li nainstalovat tuto aktualizaci, počítám, že nejprve vyhledá balíček v mezipaměti serveru. Pokud ji nemůže najít, stáhne ji z oficiálních úložišť, uloží ji na server a odtud se nainstaluje do počítače, který to vyžadoval. Tento balíček bude k dispozici v mezipaměti „serveru“, aby jej odtamtud mohli nainstalovat i ostatní počítače ve vaší síti.

    Pokud mi nebylo dostatečně jasné, neváhejte napsat.

    Objetí! Pavel.

  8.   Mišudark řekl

    Myslím, že existuje CHYBA… balíčky nejsou uloženy v / etc / apt…. ve skutečnosti zůstávají v / var / cache / apt / archivech

  9.   Pojďme použít Linux řekl

    Pravdou je, že nevím.
    Jistě existuje způsob, jak to udělat. 🙁
    Pokud zjistíte, dejte mi vědět a já ji přidám.
    Na zdraví! Pavel.

  10.   Alvaro řekl

    Nic s dynamickými IP, že?

  11.   Marce řekl

    Zřejmě ve více aktuálních distribucích musíte přidat port (ve výchozím nastavení 3142) na adresu URL místní sítě. Vypadalo by to takto: http://mi_servidor:3142/apt-cacher

  12.   alfredo torrealba řekl

    Mám lubuntu 16.04, kdo to udělal v rámci tohoto systému a pokud to pro něj fungovalo? A to, co jsem se chtěl zeptat, je následující, pokud nainstaluji tento server a moje ostatní počítače nemají stejné programy, když žádám na svých klientských počítačích o instalaci programu, který mám na serveru, myslíte si, že jej instaluji přímo z místního serveru nebo ano požadavek na oficiální server úložiště ¿?