GNU/Linux >> Linux Esercitazione >  >> AlmaLinux

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 un'origine dati esterna deve essere letta, il che riduce i costi generali e accelera i tempi di risposta. Il software di memorizzazione nella cache è un progetto open source gratuito che chiunque può utilizzare.

Alla fine del tutorial, 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 o 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 e supponendo che tu abbia lo stato 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 ai sudoer su AlmaLinux .

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

su

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:

Digita Y, quindi premere INVIO CHIAVE per procedere con l'installazione.

Nota, la seconda opzione di installazione, "libmemcached ", fornisce comandi aggiuntivi per portare interazione extra ed eseguire abilità in Memcached.

Quindi, verifica che Memcached sia stato installato correttamente verificandone la versione e la 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, utilizza il comando systemctl status come segue:

systemctl status memcached

Esempio di output:

Altri comandi utili per la 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 sulla porta 11211 predefinita . 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 memorizzato nella cache

Memcached deve ascoltare 127.0.0.1 . Apri 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 disponi di regole firewall esistenti, sarà necessario aggiornarle. Idealmente, questo può essere lasciato come predefinito.

La seconda opzione è modificare 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 un valore troppo alto.

Quindi, modifica la dimensione predefinita della cache di 64 MB in una dimensione che ritieni che la tua cache abbia 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 rispetta i tuoi limiti se hai un host con un budget limitato.

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

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 è disabilitare UDP se non richiesto.

-U 0

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

Solo esempio:

Ora salva il file CTRL+O e premi "Y" quindi CTRL+X per uscire e riavviare l'istanza Memcached.

sudo systemctl restart memcached

Configura Firewalld per Memcached

Per impostazione predefinita, non sono impostate regole per Memcached. Ciò significa che dovrai creare regole di autorizzazione essenziali per fermare gli attacchi. La mancata protezione di Memcached causerà problemi in futuro, quindi non saltare questo passaggio a meno che tu non disponga di 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, specifica 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 terminata l'aggiunta degli indirizzi IP, apri la porta del Memcached.

Per impostazione predefinita, questa è porta TCP 11211 .

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

Nota, puoi modificare la porta predefinita nel file di configurazione se modifichi la regola di apertura della porta del firewall sopra al nuovo valore.

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

sudo firewall-cmd --reload

Esempio di output in caso di successo:

success

Installa librerie PHP memorizzate nella cache

Memcached viene fornito con varie estensioni per i linguaggi di programmazione, ma viene utilizzato principalmente per PHP. Tuttavia, Almalinux necessita dell'installazione di alcuni repository aggiuntivi da cui estrarre questi pacchetti 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 sotto.

PHP 8.0:

sudo dnf module enable php:remi-8.0 -y

PHP 7.4:

sudo dnf module enable php:remi-7.4 -y

Quindi, installa il supporto PHP Memcached usando il seguente comando.

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

Esempio di output:

Digita Y, quindi premere INVIO CHIAVE per procedere con l'installazione.

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

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

Accesso a Memcached dalla riga di comando

Le statistiche di Memcached possono essere raccolte da molti software aggiuntivi e UI WEB con cui funziona insieme. Tuttavia, un modo migliore per verificare è interagire con Memcached direttamente utilizzando la riga di comando.

Innanzitutto, 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, esegui 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

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

Esempi di seguito:

Elenca le lastre nell'istanza connessa:

stats slabs

Elenco delle lastre che include un conteggio degli articoli immagazzinati all'interno di ciascuna lastra :

stats items

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

Innanzitutto, 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 "testkey." Per ottenere il valore effettivo, puoi utilizzare il "get key" 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 “testkey” 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.


AlmaLinux
  1. Come installare Memcached su Ubuntu 18.04

  2. Come installare Memcached su CentOS 8

  3. Come installare Memcached su CentOS 7

  4. Come installare MongoDB su AlmaLinux 8

  5. Come installare Lighttpd su AlmaLinux 8

Come installare Elasticsearch su AlmaLinux 8

Come installare e configurare Memcached su openSUSE Leap 15

Come installare Ntopng su AlmaLinux 8

Come installare Laravel su AlmaLinux 8

Come installare Memcached su AlmaLinux 8

Come installare e configurare Memcached su Ubuntu