Come installare e configurare Memcached su AlmaLinux 8

memcached viene utilizzato per velocizzare i siti Web dinamici basati su database memorizzando nella cache dati e oggetti nella RAM. Ciò riduce il numero di volte in cui è necessario leggere un'origine dati esterna, riducendo i costi generali e accelerando i tempi di risposta. Il software di memorizzazione nella cache è un progetto open source gratuito che chiunque può utilizzare.

Alla fine del tutorial, lo saprai come installare e configurare Memcached sul tuo sistema operativo Almalinux 8.

Prerequisiti

  • Sistema operativo consigliato: AlmaLinux 8.
  • Account utente: Un account utente con privilegi sudo or accesso root (comando su).

Aggiornamento del sistema operativo

Aggiorna il tuo AlmaLinux sistema operativo per assicurarsi che tutti i pacchetti esistenti siano aggiornati:

sudo dnf upgrade --refresh -y

Il tutorial utilizzerà il comando sudo che collaborano con noi, attingono direttamente dalla storia e dalla tradizione veneziana supponendo che tu abbia lo stato di sudo.

Per verificare lo stato di sudo sul tuo account:

sudo whoami

Esempio di output che mostra lo stato di sudo:

[joshua@localhost ~]$ sudo whoami
root

Per configurare un account sudo esistente o nuovo, visita il nostro tutorial su Come aggiungere un utente a Sudoers su AlmaLinux.

Per utilizzare l' account di root, usa il seguente comando con la password di root per accedere.

su

pubblicità


Installa Memcached

Per impostazione predefinita, AlmaLinux ha Memcached nel suo flusso di app. Per installare Memcached, inserisci il seguente comando:

sudo dnf install memcached libmemcached

Esempio di output:

Come installare e configurare Memcached su AlmaLinux 8

Tipologia Y, quindi premere TASTO INVIO per procedere con l'installazione.

Nota, la seconda opzione di installazione, il "libmemcached", fornisce comandi aggiuntivi per portare ulteriore interazione ed eseguire capacità a Memcached.

Quindi, verifica che Memcached sia stato installato correttamente verificando la sua versione e build

memcached --version

Esempio di output:

memcached 1.5.22

Il servizio, per impostazione predefinita, non sarà attivo. Per avviare Memcached usando il seguente comando:

sudo systemctl enable memcached --now

Memcached dovrebbe essere attivato per impostazione predefinita. Per verificarlo, usa il comando di stato systemctl come segue:

systemctl status memcached

Esempio di output:

Come installare e configurare Memcached su AlmaLinux 8

Altri comandi utili alla gestione del servizio Memcached sono i seguenti:

Per abilitare il servizio Memcached all'avvio del sistema:

sudo systemctl enable memcached

Per interrompere il servizio Memcached:

sudo systemctl stop memcached

Per disabilitare il servizio Memcached all'avvio del sistema:

sudo systemctl disable memcached

Per riavviare il servizio Memcached:

sudo systemctl restart memcached

Quindi, verifica che Memcached stia ascoltando attivamente localhost per impostazione predefinita porto 11211. Per confermare questo tipo, quanto segue:

ps -ef | grep memcached

Esempio di output:

memcach+   27220       1  0 22:24 ?        00:00:00 /usr/bin/memcached -p 11211 -u memcached -m 2000 -c 2000 -l 127.0.0.1 -U 0
joshua     29536   25923  0 22:52 pts/0    00:00:00 grep --color=auto memcached

Configura Memcached

Memcached deve essere in ascolto 127.0.0.1. Aprire l'impostazione predefinita nel file di configurazione che si trova in "/etc/sysconfig/memcached".

sudo nano /etc/sysconfig/memcached

La prima opzione è cambiare il numero di porta tradizionale per Memcached.

11211

Se disponi di questo numero di porta e di regole firewall esistenti, sarà necessario aggiornarle. Idealmente, questo può essere lasciato come predefinito.

La seconda opzione è cambiare le connessioni massime in qualcosa di leggermente più alto se il tuo sistema è in grado di gestirlo.

MAXCONN="2000"

Le connessioni massime dovrebbero essere aumentate lentamente e testate. Non impostare troppo in alto.

Quindi, cambia la dimensione della cache di 64 MB predefinita a una dimensione che ritieni che la tua cache avrà un po' di respiro.

Esempio di passaggio a 2 GB:

CACHESIZE="2000"

Se il tuo server ha molte risorse, qualsiasi numero andrà bene, ma fai attenzione e imposta entro i tuoi limiti se sei su un host economico.

Ora scorri verso il basso e trova la riga seguente e controlla il “-l” parametro esistente.

Da qui, puoi lasciare il localhost o specificare un indirizzo IP interno o esterno. Inoltre, puoi aggiungere ulteriori opzioni che verranno descritte di seguito.

-l 127.0.0.1

Il primo flag aggiuntivo consiste nel disabilitare UDP se non richiesto.

-U 0

Una panoramica del tutorial su come potrebbe apparire la tua configurazione una volta terminata.

Solo esempio:

Come installare e configurare Memcached su AlmaLinux 8

Ora salva il file CTRL + O e colpisci "S" poi CTRL + X per uscire e riavviare l'istanza Memcached.

sudo systemctl restart memcached

pubblicità


Configura Firewalld per Memcached

Per impostazione predefinita, non sono impostate regole per Memcached. Ciò significa che dovrai creare regole di autorizzazione che sono essenziali per fermare gli attacchi. La mancata protezione di Memcached porterà a problemi lungo il percorso, quindi non saltare questo a meno che tu non abbia altri mezzi per proteggere la tua installazione.

Innanzitutto, aggiungi una nuova zona dedicata per il criterio firewalld Memcached:

sudo firewall-cmd --permanent --new-zone=memcached

Quindi, specificare gli indirizzi IP consentiti a cui è consentito accedere a Memcached.

sudo firewall-cmd --permanent --zone=memcached --add-source=1.2.3.4

Sostituisci 1.2.3.4 con l'IP indirizzo che verrà aggiunto all'elenco di autorizzazioni.

Una volta che hai finito di aggiungere gli indirizzi IP, apri la porta del Memcached.

Per impostazione predefinita, questo è Porta TCP 11211.

sudo firewall-cmd --permanent --zone=memcached --add-port=11211/tcp

Nota, puoi cambiare la porta predefinita nel tuo file di configurazione se cambi la regola di apertura della porta del firewall sopra con il nuovo valore.

Dopo aver eseguito questi comandi, ricarica il firewall per implementare le nuove regole:

sudo firewall-cmd --reload

Output di esempio in caso di successo:

success

Installa librerie PHP Memcached

Memcached viene fornito con varie estensioni per i linguaggi di programmazione, ma è utilizzato principalmente per PHP. Tuttavia, Almalinux necessita di alcuni repository aggiuntivi installati per estrarre questi pacchetti da poiché non sono presenti nel flusso dell'app predefinito.

Innanzitutto, installa il repository EPEL e Remi PHP.

sudo dnf install epel-release -y
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y

Quindi, abilita il modulo PHP che stai attualmente utilizzando. Alcuni esempi sono di seguito.

PHP 8.0:

sudo dnf module enable php:remi-8.0 -y

PHP 7.4:

sudo dnf module enable php:remi-7.4 -y

Successivamente, installa il supporto PHP Memcached utilizzando il seguente comando.

sudo dnf install php-pecl-memcache php-pecl-memcached

Esempio di output:

Come installare e configurare Memcached su AlmaLinux 8

Tipologia Y, quindi premere TASTO INVIO per procedere con l'installazione.

Inoltre, per il supporto di Memcached con Python, è possibile installare i seguenti pacchetti utilizzando la libreria PIP.

pip3 install pymemcache --user
pip3 install python-memcached --user

pubblicità


Accesso a Memcached dalla riga di comando

Le statistiche di Memcached possono essere raccolte da molti software aggiuntivi e dall'interfaccia utente WEB con cui funziona in combinazione. Tuttavia, un modo migliore per verificare è interagire con Memcached direttamente utilizzando la riga di comando.

In primo luogo, TELNET al tuo servizio:

telnet localhost 11211

Esempio di output:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Nota, se Telnet non è installato, eseguire il comando seguente per l'installazione.

sudo dnf install telnet -y

Nota, TELNET non dovrebbe mai essere autorizzato a comunicare con una rete pubblica e limitato in ambienti di rete privati.

Successivamente, puoi ottenere una panoramica del tuo servizio Memcached utilizzando il seguente comando:

stats

Esempio di output:

STAT pid 5934
STAT uptime 1275
STAT time 1631930242
STAT version 1.6.9
STAT libevent 2.1.12-stable
STAT pointer_size 64
STAT rusage_user 0.113635
STAT rusage_system 0.000000
STAT max_connections 1024
STAT curr_connections 1
STAT total_connections 2
STAT rejected_connections 0
STAT connection_structures 2
STAT response_obj_oom 0
STAT response_obj_count 1
STAT response_obj_bytes 16384
STAT read_buf_count 2
STAT read_buf_bytes 32768
STAT read_buf_bytes_free 0
STAT read_buf_oom 0
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT cmd_meta 0
STAT get_hits 0
STAT get_misses 0
STAT get_expired 0
STAT get_flushed 0
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 7
STAT bytes_written 0
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT time_in_listen_disabled_us 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT slab_reassign_rescues 0
STAT slab_reassign_chunk_rescues 0
STAT slab_reassign_evictions_nomem 0
STAT slab_reassign_inline_reclaim 0
STAT slab_reassign_busy_items 0
STAT slab_reassign_busy_deletes 0
STAT slab_reassign_running 0
STAT slabs_moved 0
STAT lru_crawler_running 0
STAT lru_crawler_starts 6
STAT lru_maintainer_juggles 1325
STAT malloc_fails 0
STAT log_worker_dropped 0
STAT log_worker_written 0
STAT log_watcher_skipped 0
STAT log_watcher_sent 0
STAT unexpected_napi_ids 0
STAT round_robin_fallback 0
STAT bytes 0
STAT curr_items 0
STAT total_items 0
STAT slab_global_page_pool 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT evicted_active 0
STAT evictions 0
STAT reclaimed 0
STAT crawler_reclaimed 0
STAT crawler_items_checked 0
STAT lrutail_reflocked 0
STAT moves_to_cold 0
STAT moves_to_warm 0
STAT moves_within_lru 0
STAT direct_reclaims 0
STAT lru_bumps_dropped 0
END

Come sopra, questo mostra alcune cose cruciali che potresti voler vedere, come il tempo di attività, il numero di elementi nella cache e il numero di connessioni client all'istanza

È possibile affinare la ricerca esaminando le diverse lastre (partizioni) di memoria Memcached per restituire i risultati.

Esempi di seguito:

Elenca i solai nell'istanza connessa:

stats slabs

Elenco delle lastre che include un conteggio degli elementi memorizzati all'interno di ciascuna lastra:

stats items

Successivamente, puoi accedere ed eliminare i dati utilizzando il comando cachedump per elencare le chiavi.

Per prima cosa, esegui il comando cachedump:

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

Esempio in azione:

stats cachedump 1 0

Esempio di output:

ITEM testkey [9 b; 1296857316 s]
END

Come sopra, SLAB 1 ha un elemento con la chiave "chiave di prova". Per ottenere il valore effettivo, puoi utilizzare il "ottenere la chiave" comando come segue:

get testkey

Esempio di output:

VALUE testkey 0 9
test data
END

Infine, per eliminare un elemento memorizzato nella cache, in questo caso, il pulsante "chiave di prova" usa il seguente comando:

delete testkey

Esempio di output:

DELETED

Come rimuovere (disinstallare) Memcached

Per rimuovere Memcached, usa il seguente comando nel tuo terminale.

sudo dnf autoremove memcached libmemcached

Questo rimuoverà immediatamente Memcached dal tuo sistema.


pubblicità


Commenti e Conclusione

Il tutorial ti ha mostrato come installare Memcached sul tuo sistema operativo Almalinux 8, installare le librerie aggiuntive e come accedere all'elenco dei comandi del terminale.

Per ulteriore documentazione, il progetto Wiki di Github La pagina spiega in modo più dettagliato per gli amministratori del server qualsiasi specifica o informazione di cui hanno bisogno.

Lascia un tuo commento