GNU/Linux >> LINUX-Kenntnisse >  >> AlmaLinux

So installieren und konfigurieren Sie Memcached auf AlmaLinux 8

Memcache wird verwendet, um dynamische datenbankgesteuerte Websites zu beschleunigen, indem Daten und Objekte im RAM zwischengespeichert werden. Dies reduziert die Anzahl der Male, die eine externe Datenquelle gelesen werden muss, was den Overhead senkt und die Antwortzeiten beschleunigt. Die Memory-Caching-Software ist ein kostenloses Open-Source-Projekt, das jeder verwenden kann.

Am Ende des Tutorials wissen Sie, wie Sie Memcached auf Ihrem Almalinux 8-Betriebssystem installieren und konfigurieren.

Voraussetzungen

  • Empfohlenes Betriebssystem: AlmaLinux 8.
  • Benutzerkonto: Ein Benutzerkonto mit sudo-Privilegien oder Root-Zugriff (su-Befehl) .

Betriebssystem aktualisieren

Aktualisieren Sie Ihr AlmaLinux Betriebssystem, um sicherzustellen, dass alle vorhandenen Pakete auf dem neuesten Stand sind:

sudo dnf upgrade --refresh -y

Das Tutorial verwendet den sudo-Befehl und vorausgesetzt, Sie haben den Sudo-Status .

So überprüfen Sie den Sudo-Status Ihres Kontos:

sudo whoami

Beispielausgabe, die den Sudo-Status zeigt:

[joshua@localhost ~]$ sudo whoami
root

Um ein bestehendes oder neues Sudo-Konto einzurichten, besuchen Sie unser Tutorial zum So fügen Sie einen Benutzer zu Sudoers auf AlmaLinux hinzu .

So verwenden Sie das Root-Konto verwenden Sie den folgenden Befehl mit dem Root-Passwort, um sich anzumelden.

su

Memcache installieren

Standardmäßig hat AlmaLinux Memcache in seinem App-Stream. Um Memcached zu installieren, geben Sie den folgenden Befehl ein:

sudo dnf install memcached libmemcached

Beispielausgabe:

Geben Sie Y, ein drücken Sie dann die ENTER-TASTE um mit der Installation fortzufahren.

Beachten Sie, dass die zweite Installationsoption, die Datei „libmemcached ”-Paket bietet zusätzliche Befehle, um Memcached zusätzliche Interaktions- und Ausführungsfähigkeiten zu verleihen.

Überprüfen Sie als Nächstes, ob Memcached korrekt installiert wurde, indem Sie die Version und den Build überprüfen

memcached --version

Beispielausgabe:

memcached 1.5.22

Der Dienst ist standardmäßig nicht aktiv. Um Memcached mit dem folgenden Befehl zu starten:

sudo systemctl enable memcached --now

Memcached sollte standardmäßig aktiviert sein. Um dies zu überprüfen, verwenden Sie den Befehl systemctl status wie folgt:

systemctl status memcached

Beispielausgabe:

Weitere nützliche Befehle zum Verwalten des Memcached-Dienstes sind wie folgt:

So aktivieren Sie den Memcache-Dienst beim Systemstart:

sudo systemctl enable memcached

So beenden Sie den Memcache-Dienst:

sudo systemctl stop memcached

So deaktivieren Sie den Memcache-Dienst beim Systemstart:

sudo systemctl disable memcached

So starten Sie den Memcache-Dienst neu:

sudo systemctl restart memcached

Stellen Sie als Nächstes sicher, dass Memcached localhost auf dem standardmäßigen Port 11211 aktiv überwacht . Um diesen Typ zu bestätigen, Folgendes:

ps -ef | grep memcached

Beispielausgabe:

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

Memcache konfigurieren

Memcached muss auf 127.0.0.1 hören . Öffnen Sie die Standardeinstellung in der Konfigurationsdatei unter „/etc/sysconfig/memcached “.

sudo nano /etc/sysconfig/memcached

Die erste Option besteht darin, die traditionelle Portnummer für Memcached zu ändern.

11211

Wenn Sie über diese Portnummer und vorhandene Firewallregeln verfügen, müssen diese aktualisiert werden. Idealerweise kann dies als Standard belassen werden.

Die zweite Option besteht darin, die maximalen Verbindungen etwas höher zu ändern, wenn Ihr System damit umgehen kann.

MAXCONN="2000"

Die maximalen Verbindungen sollten langsam erhöht und getestet werden. Nicht zu hoch einstellen.

Ändern Sie als Nächstes die standardmäßige Cache-Größe von 64 MB auf eine Größe, von der Sie glauben, dass Ihr Cache etwas Luft zum Atmen hat.

Beispiel für die Änderung auf 2 GB:

CACHESIZE="2000"

Wenn Ihr Server über genügend Ressourcen verfügt, reicht jede beliebige Anzahl aus, aber seien Sie vorsichtig und setzen Sie sich innerhalb Ihrer Grenzen, wenn Sie sich auf einem Budget-Host befinden.

Scrollen Sie nun nach unten und suchen Sie die folgende Zeile und überprüfen Sie das „-l“ vorhandener Parameter.

Von hier aus können Sie den localhost verlassen oder eine interne oder externe IP-Adresse angeben. Außerdem können Sie zusätzliche Optionen hinzufügen, die unten beschrieben werden.

-l 127.0.0.1

Das erste zusätzliche Flag ist, UDP zu deaktivieren, wenn es nicht benötigt wird.

-U 0

Eine Übersicht über das Tutorial, wie Ihr Setup aussehen könnte, wenn es fertig ist.

Nur Beispiel:

Speichern Sie nun die Datei STRG+O und drücken Sie „Y“ dann STRG+X um Ihre Memcache-Instanz zu beenden und neu zu starten.

sudo systemctl restart memcached

Firewalld für Memcached konfigurieren

Standardmäßig sind keine Regeln für Memcached eingerichtet. Dies bedeutet, dass Sie Zulassungsregeln erstellen müssen, die zum Stoppen von Angriffen unerlässlich sind. Wenn Memcached nicht gesichert wird, führt dies später zu Problemen. Überspringen Sie dies also nicht, es sei denn, Sie haben andere Mittel zum Schutz Ihrer Installation.

Fügen Sie zunächst eine neue dedizierte Zone für die Memcached-Firewalld-Richtlinie hinzu:

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

Geben Sie als Nächstes die zulässigen IP-Adressen an, die auf den Memcached zugreifen dürfen.

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

Ersetzen Sie 1.2.3.4 durch die IP Adresse, die der Zulassungsliste hinzugefügt wird.

Wenn Sie mit dem Hinzufügen der IP-Adressen fertig sind, öffnen Sie den Port des Memcached.

Standardmäßig ist dies TCP-Port 11211 .

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

Beachten Sie, dass Sie den Standardport in Ihrer Konfigurationsdatei ändern können, wenn Sie die Firewall-Port-Öffnungsregel oben auf den neuen Wert ändern.

Nachdem Sie diese Befehle ausgeführt haben, laden Sie die Firewall neu, um die neuen Regeln zu implementieren:

sudo firewall-cmd --reload

Beispielausgabe bei Erfolg:

success

Memcache-PHP-Bibliotheken installieren

Memcached bringt verschiedene Erweiterungen für die Programmiersprachen mit, wird aber hauptsächlich für PHP verwendet. Almalinux benötigt jedoch einige zusätzliche Repositories, die installiert werden müssen, um diese Pakete abzurufen, da sie nicht im standardmäßigen App-Stream enthalten sind.

Installieren Sie zuerst das EPEL- und Remi-PHP-Repository.

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

Als nächstes aktivieren Sie das PHP-Modul, das Sie gerade verwenden. Einige Beispiele sind unten aufgeführt.

PHP 8.0:

sudo dnf module enable php:remi-8.0 -y

PHP 7.4:

sudo dnf module enable php:remi-7.4 -y

Installieren Sie als Nächstes die Memcached-PHP-Unterstützung mit dem folgenden Befehl.

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

Beispielausgabe:

Geben Sie Y, ein drücken Sie dann die ENTER-TASTE um mit der Installation fortzufahren.

Zusätzlich können Sie für Memcached-Unterstützung mit Python die folgenden Pakete mit der PIP-Bibliothek installieren.

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

Zugriff auf Memcache über die Befehlszeile

Memcache-Statistiken können durch viele zusätzliche Software und WEB-Benutzeroberflächen gesammelt werden, mit denen es zusammenarbeitet. Eine bessere Möglichkeit zur Überprüfung ist jedoch die direkte Interaktion mit Memcached über die Befehlszeile.

Zuerst TELNET in Ihren Dienst:

telnet localhost 11211

Beispielausgabe:

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

Hinweis:Wenn Telnet nicht installiert ist, führen Sie zur Installation den folgenden Befehl aus.

sudo dnf install telnet -y

Beachten Sie, dass TELNET niemals erlaubt werden sollte, mit einem öffentlichen Netzwerk zu kommunizieren, und in privaten Netzwerkumgebungen eingeschränkt werden sollte.

Als Nächstes können Sie sich mit dem folgenden Befehl einen Überblick über Ihren Memcache-Dienst verschaffen:

stats items

Beispielausgabe:

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

Wie oben zeigt dies einige wichtige Dinge, die Sie möglicherweise sehen möchten, wie z. B. die Betriebszeit, die Anzahl der Elemente im Cache und die Anzahl der Clientverbindungen zur Instanz

Sie können die Suche verfeinern, indem Sie in den verschiedenen Memcached-Slabs (Partitionen) des Arbeitsspeichers nachsehen, um Ergebnisse zurückzugeben.

Beispiele unten:

Listen Sie die Platten in der verbundenen Instanz auf:

stats slabs

Liste der Platten, die eine Anzahl der in jeder Platte gelagerten Gegenstände enthält :

stats items

Als Nächstes können Sie mit dem cachedump-Befehl auf Daten zugreifen und diese löschen um die Schlüssel aufzulisten.

Führen Sie zuerst den cachedump-Befehl aus :

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

Beispiel in Aktion:

stats cachedump 1 0

Beispielausgabe:

ITEM testkey [9 b; 1296857316 s]
END

Wie oben hat SLAB 1 ein Element mit dem Schlüssel „testkey.“ Um den tatsächlichen Wert zu erhalten, können Sie den „get key“ verwenden Befehl wie folgt:

get testkey

Beispielausgabe:

VALUE testkey 0 9
test data
END

Zuletzt, um ein zwischengespeichertes Element zu löschen, in diesem Fall den „Testschlüssel“ Verwenden Sie den folgenden Befehl:

delete testkey

Beispielausgabe:

DELETED

So entfernen (deinstallieren) Sie Memcached

Um Memcached zu entfernen, verwenden Sie den folgenden Befehl in Ihrem Terminal.

sudo dnf autoremove memcached libmemcached

Dadurch wird Memcached sofort von Ihrem System entfernt.


AlmaLinux
  1. So installieren Sie Memcached auf Ubuntu 18.04

  2. So installieren Sie Memcached auf CentOS 8

  3. So installieren Sie Memcached auf CentOS 7

  4. So installieren Sie MongoDB auf AlmaLinux 8

  5. So installieren Sie Lighttpd auf AlmaLinux 8

So installieren Sie Elasticsearch auf AlmaLinux 8

So installieren und konfigurieren Sie Memcached auf openSUSE Leap 15

So installieren Sie Ntopng auf AlmaLinux 8

So installieren Sie Laravel auf AlmaLinux 8

So installieren Sie Memcached auf AlmaLinux 8

So installieren und konfigurieren Sie Memcached unter Ubuntu