Jak nainstalovat Memcached na Debian 12, 11 nebo 10

Brad Fitzpatrick vyvinul Memcached v roce 2003 pro web LiveJournal jako výkonný systém pro ukládání do mezipaměti s otevřeným zdrojovým kódem pro zvýšení výkonu dynamických webových aplikací snížením zatížení databáze. Od té doby se stal životně důležitým pro mnoho webů a aplikací s vysokou návštěvností. Než nainstalujeme Memcached na Debian 12 Bookworm, Debian 11 Bullseye nebo Debian 10 Buster, podívejme se níže na některé klíčové body o Memcached.

Klíčové vlastnosti a výhody:

  • Škálovatelnost: Memcached, který zvládá miliony operací za sekundu, je ideální pro rozsáhlé webové aplikace a služby.
  • Distribuované ukládání do mezipaměti: Díky distribuované architektuře ukládání do mezipaměti umožňuje Memcached horizontální škálování napříč více servery, čímž se rozšiřuje celková kapacita mezipaměti.
  • Úložiště v paměti: Jako úložiště klíč-hodnota v paměti zajišťuje Memcached rychlý přístup k datům uloženým v mezipaměti a výrazně snižuje latenci v diskových úložných systémech.
  • Jednoduché API: Memcached poskytuje přímočaré API, které podporuje různé programovací jazyky, včetně PHP, Python, Ruby a dalších.
  • Vypršení platnosti mezipaměti: Systém umožňuje vývojářům nastavit dobu vypršení platnosti dat uložených v mezipaměti, což usnadňuje automatické odstranění zastaralých nebo zastaralých dat z mezipaměti.
  • Lehká váha: S minimální režií CPU a paměti Memcached efektivně běží na různých konfiguracích serverů bez výrazného vyčerpání systémových zdrojů.
  • Flexibilní datové typy: Memcached pojme různé typy dat, jako jsou řetězce, celá čísla a složité objekty, takže je univerzální pro různé případy použití.

Následující průvodce vás provede procesem instalace Memcached na Debianu pomocí dvou metod: výchozího úložiště Debianu pro nejstabilnější verzi nebo stažení a kompilace nejnovějšího binárního souboru pro ty, kteří dávají přednost práci s nejnovější verzí.

Metoda 1: Nainstalujte Memcached přes výchozí úložiště APT

V této části nainstalujeme Memcached na váš systém Debian Linux pomocí správce balíčků APT. To zahrnuje aktualizaci vašich systémových balíčků a instalaci Memcached s některými užitečnými nástroji.

Aktualizujte svůj systém Debian před instalací Memcached

Abyste měli jistotu, že máte nejnovější verze balíčků a aktualizace zabezpečení, začněte aktualizací systému Debian. Spusťte následující příkaz:

sudo apt update && sudo apt upgrade

Tento příkaz aktualizuje váš seznam balíčků a upgraduje zastaralé balíčky na jejich nejnovější verze.

Nainstalujte nástroje Memcached a Libmemcached-tools

Debian obsahuje Memcached ve svých výchozích repozitářích, takže instalace je jednoduchá. Chcete-li nainstalovat Memcached, spusťte následující příkaz:

sudo apt install memcached libmemcached-tools

Tento příkaz nainstaluje jak Memcached, tak i libmemcached-tools balík. The libmemcached-tools balíček poskytuje další nástroje příkazového řádku, které umožňují více možností interakce a správy s Memcached.

Metoda 2: Nainstalujte Memcached přes zdroj

Tato část popisuje instalaci Memcached na váš systém Debian kompilací ze zdrojového kódu. Instalace ze zdroje může být výhodná, pokud chcete používat nejnovější verzi Memcached nebo přizpůsobit sestavení konkrétním požadavkům.

Stáhněte si zdroj Memcached

Nejprve navštivte Memcached stránka nejnovější verze najít aktuální verzi. Použijte následující wget příkaz ke stažení přímo:

wget https://memcached.org/latest

Rozbalte zdrojový archiv Memcached

Dále rozbalte stažený zdrojový kód spuštěním následujícího příkazu:

tar -xvf latest

Než budete pokračovat, přejděte do extrahovaného adresáře. Název adresáře závisí na stažené verzi:

cd memcached-{place version number here}

Nahradit {version_number} se skutečným číslem verze.

Nainstalujte počáteční balíčky nutné ke kompilaci Memcached

Před kompilací Memcached musíte nainstalovat potřebné závislosti sestavení. Spusťte následující příkaz a nainstalujte je:

sudo apt install build-essential libevent-dev gcc make libc6-dev

Nainstalované balíčky slouží k následujícím účelům:

  • gcc: Známý kompilátor jazyka C pro zdrojové soubory Memcached.
  • make: Řídí kompilaci.
  • libc6-dev: Poskytuje odkaz na knihovnu GNU C a hlavičkové soubory.
  • libevent-dev: Obsahuje vývojové soubory pro asynchronní upozornění na události.

Nakonfigurujte instalaci

Použijte --prefix= parametr pro nastavení adresáře, kam se nainstaluje binární soubor Memcached a knihovny:

./configure --prefix=/usr/local

Zkompilujte zdrojový kód Memcached

Zkompilujte zdrojový kód Memcached s make příkaz:

make

Otestujte Memcached potvrzením aktuální verze:

./memcached --version

Nainstalujte Memcached pomocí příkazu 'make install'

Jakmile je proces kompilace dokončen, nainstalujte Memcached spuštěním následujícího příkazu:

sudo make install

Tento příkaz nainstaluje Memcached do vašeho systému a zpřístupní jej z příkazového řádku. Abyste zajistili, že systém rozpozná nové knihovny, spusťte následující:

sudo ldconfig

Ověřte instalaci Memcached

Chcete-li ověřit, zda je Memcached úspěšně nainstalován, spusťte následující příkaz:

memcached -V

Tento příkaz zobrazí nainstalovanou verzi Memcached a potvrdí úspěšnou instalaci ze zdrojového kódu.

Vytvořte službu Systemd pro Memcached

Když nainstalujete Memcached ze zdroje, automaticky se nevytvoří soubor služby systemd. Spustit Memcached jako službu a spravovat ji pomocí systemctl, musíte vytvořit vlastní soubor služby systemd pro Memcached. Chcete-li vytvořit a povolit službu, postupujte takto:

Vytvořte nový soubor s názvem memcached.service v /etc/systemd/system adresář pomocí textového editoru dle vašeho výběru. V tomto příkladu použijeme nano:

sudo nano /etc/systemd/system/memcached.service

Přidejte následující obsah do memcached.service soubor:

[Unit]
Description=Memcached Service
After=network.target

[Service]
Type=simple
User=memcache
Group=memcache
ExecStart=/usr/local/bin/memcached /etc/memcached.conf
Restart=always

[Install]
WantedBy=multi-user.target

Uložte soubor a ukončete textový editor.

Vytvořit memcache uživatel a skupina pro bezpečné spuštění služby:

sudo useradd -r -s /sbin/nologin -U -M memcache

Znovu načtěte konfiguraci systemd, abyste rozpoznali nový soubor služby:

sudo systemctl daemon-reload

Nakonec spusťte službu:

sudo systemctl enable memcached --now

Správa stavu služby Memcached

Tato část se bude zabývat správou služby Memcached na vašem systému Debian. To zahrnuje kontrolu stavu služby, spouštění a zastavování služby a její konfiguraci pro spuštění při spouštění systému.

Zkontrolujte stav služby Memcached

Ve výchozím nastavení by měl Memcached po instalaci běžet. Chcete-li ověřit jeho stav, použijte systemctl příkaz takto:

systemctl status memcached

Tento příkaz zobrazí aktuální stav služby Memcached.

Spusťte službu Memcached

Pokud Memcached neběží, můžete službu spustit pomocí následujícího příkazu:

sudo systemctl start memcached

Povolte Memcached při spouštění systému

Chcete-li zajistit, aby se služba Memcached spustila automaticky při spuštění systému, použijte následující příkaz:

sudo systemctl enable memcached

Zastavte službu Memcached

Pokud potřebujete zastavit službu Memcached, použijte tento příkaz:

sudo systemctl stop memcached

Zakažte Memcached při spouštění systému

Chcete-li zabránit automatickému spuštění služby Memcached při spouštění systému, spusťte následující příkaz:

sudo systemctl disable memcached

Restartujte službu Memcached

Pokud potřebujete restartovat službu Memcached, například po provedení změn konfigurace, použijte tento příkaz:

sudo systemctl restart memcached

Ověřte, že Memcached naslouchá na výchozím portu

Nakonec ověřte, že Memcached aktivně naslouchá na localhost pomocí výchozího portu 11211. Chcete-li to potvrdit, spusťte následující příkaz:

ps -ef | grep memcached

Výstup by měl zobrazovat řádek indikující, že Memcached běží a naslouchá na zadaném portu, podobně jako v následujícím:

memcache    5934       1  0 09:36 ?        00:00:00 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -P /var/run/memcached/memcached.pid
root        6591    3653  0 09:55 pts/0    00:00:00 grep memcached

Konfigurace tipů Memcached

Tato část se bude zabývat konfigurací nastavení Memcached úpravou souboru memcached.conf soubor. Probereme úpravu naslouchací IP adresy, deaktivaci UDP a změnu výchozí alokace paměti.

Otevřete konfigurační soubor Memcached

Otevřete konfigurační soubor Memcached umístěný na /etc/memcached.conf pomocí textového editoru, např nano:

sudo nano /etc/memcached.conf

Uživatelé, kteří zkompilovali Memcached ze zdroje, jej budou muset vytvořit, takže když jej poprvé otevřete; soubor bude ve srovnání s metodou APT prázdný; můžete zkopírovat toto, abyste mohli začít s úpravou:

# Example memcached.conf file

# Start with a cap of 64 megs of memory. It's reasonable, and the daemon default
# Note that the daemon will grow to this size, but does not start out holding this much
# memory
-m 64

# Default port is 11211
-p 11211

# Run the daemon as a background process
-d

# Use syslog logging
-s

# Enable verbose logging
-vv

# Set the maximum number of simultaneous connections
-c 1024

Upravte IP adresu pro poslech

Ve výchozím nastavení Memcached naslouchá IP adrese 127.0.0.1. Zkontrolujte parametr -l v konfiguračním souboru a ujistěte se, že je nastaven na správnou IP adresu. Pokud potřebujete upravit IP adresu, nahraďte ji 127.0.0.1 s novou IP adresou:

-l 127.0.0.1

Zakázat UDP (volitelné)

Pokud nepotřebujete podporu UDP, doporučujeme ji vypnout. Chcete-li zakázat UDP, přidejte do konfiguračního souboru následující řádek:

-U 0

Nakonfigurujte alokaci paměti

Výchozí alokace paměti pro Memcached je 64 MB, což nemusí být dostatečné pro větší weby. Zvažte úpravu přidělení paměti na vyšší hodnotu, abyste maximalizovali Memcached.

Chcete-li nastavit přidělení paměti, vyhledejte -m parametr v konfiguračním souboru a nahraďte výchozí hodnotu požadovanou hodnotou (v MB). Chcete-li například přidělit 2 GB paměti, nastavte hodnotu na 2000:

-m 2000

Upravte toto nastavení na základě dostupné paměti vašeho serveru a požadavků.

Uložte a restartujte Memcached

Po provedení nezbytných změn uložte konfigurační soubor stisknutím tlačítka CTRL+O, následován Y, a pak CTRL+X pro ukončení textového editoru. Nakonec restartujte službu Memcached, aby se změny projevily:

sudo systemctl restart memcached

Další příklady konfigurace Memcached

Kromě výše uvedených možností konfigurace existuje několik dalších nastavení, která můžete upravit, abyste doladili Memcached podle svých požadavků. Zde je několik příkladů spolu s krátkými ukázkami:

Zadejte uživatele a skupinu

Memcached běží pod konkrétním uživatelem a skupinou zadanou pomocí -u parametr. Například spustit Memcached jako memcache uživatel, přidejte do konfiguračního souboru následující řádek:

-u memcache

Povolit velké stránky paměti

Povolení této funkce může zlepšit výkon, pokud váš systém podporuje velké stránky paměti. Chcete-li povolit velké stránky paměti, vyhledejte -L parametr a odkomentujte jej (odstraňte # na začátku řádku):

-L

Nakonfigurujte maximální velikost položky

Memcached má výchozí maximální velikost položky 1 MB. Chcete-li zvýšit maximální velikost položky, použijte -I parametr následovaný požadovanou velikostí. Chcete-li například nastavit maximální velikost položky na 5 MB, přidejte do konfiguračního souboru následující řádek:

-I 5m

Nastavte maximální počet vláken

Memcached standardně používá čtyři vlákna. Pomocí parametru můžete zvýšit nebo snížit počet vláken v závislosti na možnostech a pracovním zatížení vašeho serveru. Chcete-li například nastavit počet vláken na 8, přidejte následující řádek:

-t 8

Nakonfigurujte časový limit nečinnosti

Memcached automaticky zavře nečinná připojení po určité době nečinnosti. Chcete-li upravit časový limit nečinnosti, použijte -o parametr následovaný idle_timeout a požadovaný počet sekund. Chcete-li například nastavit časový limit nečinnosti na 600 sekund (10 minut), přidejte následující řádek:

-o idle_timeout=600

Povolit ověřování SASL

Podporu SASL (Simple Authentication and Security Layer) můžete povolit, pokud pro přístup k serveru Memcached vyžadujete ověření. Chcete-li povolit SASL, vyhledejte -S parametr a odkomentujte jej (odstraňte # na začátku řádku):

-S

Nezapomeňte vždy restartovat službu Memcached po provedení změn v konfiguračním souboru:

sudo systemctl restart memcached

Nainstalujte UFW Firewall pro Memcached

Pro zajištění bezpečnosti vaší instance Memcached je důležité správně nakonfigurovat pravidla brány firewall. Tato část se bude zabývat tím, jak nainstalovat a nakonfigurovat Uncomplicated Firewall (UFW) pro zabezpečení vašeho serveru Memcached.

Zkontrolujte, zda je nainstalován UFW

Nejprve ověřte, zda je ve vašem systému Debian již nainstalován UFW:

sudo ufw --version

Pokud je nainstalován UFW, uvidíte ve výstupu číslo jeho verze. Pokud ne, budete jej muset nainstalovat.

Nainstalujte UFW na Debian pro Memcached

Chcete-li nainstalovat UFW na váš systém Debian, spusťte následující příkaz:

sudo apt install ufw

Po dokončení instalace povolte UFW pomocí následujícího příkazu:

sudo ufw enable

Nakonfigurujte pravidla UFW pro Memcached

Nyní, když je UFW nainstalováno a povoleno, musíte vytvořit pravidla povolení na portu TCP 11211. Pravidla, která vytvoříte, budou záviset na vaší instalaci a požadavcích, ať už používáte jedno síťové připojení IP nebo pracujete s více instancemi v síti clusteru.

Příklad síťového připojení s jednou IP

Povolit přístup k Memcached z konkrétní IP adresy:

sudo ufw allow proto tcp from <ip_address> to any port 11211

Příklad síťového připojení clusteru IP s více instancemi

Povolit přístup k Memcached z podsítě IP adres:

sudo ufw allow proto tcp from <ip_address>/24 to any port 11211

Všimněte si, že druhé pravidlo UFW je pravidlo podsítě. Před povolením přístupu se ujistěte, že je interní síť bezpečná a důvěryhodná.

Krok 4: Ověřte pravidla UFW

Po nastavení příslušných pravidel ověřte, zda jsou správně nakonfigurována, uvedením aktuálních pravidel UFW:

sudo ufw status

Výstup by měl zobrazovat vaše nakonfigurovaná pravidla a zajistit, aby vaše instance Memcached byla zabezpečena pomocí UFW.

Nainstalujte knihovny Memcached

Memcached nabízí rozšíření pro různé programovací jazyky, ale nejčastěji se používá s PHP. Tato část vás provede instalací knihoven Memcached pro PHP, Python a Perl a konfigurací Memcached pro webové servery Apache a Nginx.

Nainstalujte knihovny PHP pro Memcached

Chcete-li nainstalovat knihovnu PHP pro Memcached, spusťte následující příkaz:

sudo apt install php-memcached libapache2-mod-php php php-cli

Nakonfigurujte Memcached pro Apache HTTP Server

Pokud používáte Apache HTTP Server, povolte modul Memcached provedením následujícího příkazu:

sudo phpenmod memcached && sudo systemctl restart apache2

Nakonfigurujte Memcached pro Nginx HTTP Server

Podpora Memcached bude ve výchozím nastavení povolena ve vašem konfiguračním bloku PHP, jakmile bude knihovna PHP nainstalována pro uživatele Nginx.

Níže je uveden jednoduchý příklad bloku serveru nginx:

server {
    listen 80;
    server_name example.com;

    root /var/www/example.com;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

Nainstalujte knihovnu Python pro Memcached

Chcete-li nainstalovat podporu Pythonu pro Memcached, spusťte následující příkaz:

sudo apt install python3-pymemcache

Nainstalujte knihovnu Perl pro Memcached

Chcete-li nainstalovat podporu Perl pro Memcached, spusťte následující příkaz:

sudo apt install libcache-memcached-libmemcached-perl

Přístup k Memcached z příkazového řádku

Memcached lze monitorovat a spravovat prostřednictvím různých softwarových a webových uživatelských rozhraní. Přímá interakce s Memcached pomocí příkazového řádku je však často nejpřímější metodou pro kontrolu jeho výkonu a správu jeho obsahu.

Nejprve se připojte ke své službě Memcached pomocí telnetu:

telnet localhost 11211

Příklad výstupu:

Zkouším 127.0.0.1... Připojeno k localhost. Escape znak je '^]'.

Dále můžete získat přehled o své službě Memcached pomocí následujícího příkazu:

stats

Tento příkaz vrátí různé statistiky o vaší instanci Memcached, jako je doba provozu, počet položek v mezipaměti a počet klientských připojení.

Svou analýzu můžete upřesnit prozkoumáním slabs Memcached (paměťové oddíly). Můžete například uvést desky v připojené instanci pomocí:

stats slabs

A získat seznam desek, včetně počtu položek uložených v každé desce, pomocí:

stats items

Pro přístup a manipulaci s daty uloženými v Memcached můžete použít cachedump příkaz pro výpis klíčů. Chcete-li vypsat všechny položky v konkrétní desce, proveďte následující příkaz:

stats cachedump [slab ID] [number of items, 0 for all items]

Například:

stats cachedump 1 0

Příklad výstupu:

ITEM testkey [9 b; 1296857316 s] KONEC

V tomto příkladu deska 1 obsahuje jednu položku s klíčem „testkey“. Chcete-li získat hodnotu této položky, použijte get příkaz:

get testkey

Příklad výstupu:

VALUE testkey 0 9 testovací data KONEC

Nakonec, chcete-li odstranit položku z mezipaměti, jako je „testkey“, použijte následující příkaz:

delete testkey

Příklad výstupu:

SMAŽENO

Závěr

Na závěr, instalace a konfigurace Memcached na Debian Linuxu může výrazně zlepšit výkon vašich webových aplikací tím, že poskytuje rychlý, efektivní a snadno použitelný systém ukládání do mezipaměti. Podle kroků uvedených v této příručce můžete úspěšně nastavit Memcached, nakonfigurovat jej pomocí preferovaného webového serveru a zabezpečit jej pomocí UFW. Se správnou konfigurací a správou se Memcached může stát nezbytným pro optimalizaci vašich aplikací a poskytování lepší uživatelské zkušenosti.

Joshua James
Následuj mě
Nejnovější příspěvky uživatele Joshua James (vidět vše)

Napsat komentář