Memcached est un serveur de cache open source hautes performances pour un stockage et une récupération faciles des données de la mémoire principale. Memcached est souvent utilisé en relation avec des applications Web pour améliorer leurs performances en prouvant le cache d'objets. Dans la configuration standard, Memcached écoute sur le port 11211 / TCP et (jusqu'à la version 1.5.5 incluse) en plus sur le port 11211 / UDP.
Ici, nous allons apprendre les étapes pour installer et configurer le serveur Memcached sur CentOS 8.
Installation de MemCached sur Linux CentOS 8
Si vous utilisez WordPress ou tout autre site Web sur Cpanel avec CentOS, l'installation de Memcache sur votre serveur améliorera les performances globales du site.
Exigences :
- Un accès utilisateur root.
- Serveur CentOS 6/7/8
- connexion Internet fonctionnelle.
1. Installer le serveur Memcached
Sur CentOS 8 ou dans les versions précédentes de CentOS 7 et 6, nous n'avons pas besoin d'installer de référentiel tiers. Il est disponible sur l'officiel. Par conséquent, accédez simplement à votre terminal serveur et exécutez une commande :
yum install memcached libmemcached
Dans la commande ci-dessus, nous installons deux packages, l'un est un système de cache et l'autre est une bibliothèque pour avoir un ensemble d'outils afin de gérer le serveur Memcached installé.
2. Modifier le fichier de configuration
Une fois l'installation réussie, modifions la configuration pour augmenter ou diminuer la taille d'accumulation du cache. Par défaut, il sera de 64 Mo et selon vos besoins, par exemple 256 Mo, 512 Mo ou 1 Go.
vi /etc/sysconfig/memcached
Vous trouverez les lignes suivantes ou les ajouterez.
PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS="-l 127.0.0.1,::1"
Pour modifier le fichier, appuyez sur "INSÉRER ” sur le clavier.
port=C'est le numéro de port par défaut qui sera utilisé par le Memcache.
maxconn=Connexion maximale pour ce système de cache
cache Size=Quantité de cache générée avant d'atteindre le seuil
Options=Pour déclarer des paramètres supplémentaires pour le cache, que nous utiliserons à l'étape suivante.
3. Liez Memcache à une adresse IP spécifique (facultatif)
Eh bien, si Memcache n'est pas correctement sécurisé, il pourrait devenir un hôte pour lancer les attaques DDOS. C'est la raison pour laquelle Digital Ocean a définitivement bloqué le numéro de port 112211 sur ses serveurs.
Par conséquent, je suppose que vous exécutez Memcache sur le serveur du même serveur ou réseau dans lequel se trouvent d'autres applications telles que le serveur Web.
Remarque :Maintenant, le serveur se lie par défaut à l'hôte local, dans le cas contraire, faites-le manuellement.
Par exemple , sur Cpanel ou un hébergement VPS où un seul serveur hébergeait à la fois le serveur Memcache et le serveur Apache, puis ajoutez simplement la ligne suivante pour lier le serveur à écouter localhost uniquement en tant que valeur OPTIONS :
-l 127.0.0.1
donc ce sera comme ça :
OPTIONS="-l 127.0.0.1"
(facultatif ) Si vous souhaitez accéder au système de cache au sein du même réseau privé, connectez-vous à une plage d'adresses IP locales. Par exemple, supposons que l'adresse du serveur de cache est 10.0.0.14
puis les clients sur 10.0.0.x.
ne pourra que s'y connecter.
De plus, pour le lier uniquement à l'interface de bouclage locale et rejeter toutes les autres connexions distantes, ajoutez également :
-U 0
Par conséquent, la syntaxe complète ressemblera à ceci :
OPTIONS="-l 127.0.0.1 -U 0"
Pour enregistrer le fichier de configuration, appuyez sur ESC
key et le type :wq
et appuyez sur le bouton Entrée.
4. Activer et démarrer le service
La configuration est terminée, activons maintenant le serveur Memcache au démarrage et démarrons-le. Pour qu'il puisse commencer à mettre des choses en cache.
systemctl enable memcached
systemctl start memcached
Pour les versions précédentes telles que CentOS 6/5, utilisez la commande service :
service memcached enable
service memcached start
Si vous souhaitez arrêter :
service memcached stop
Pour redémarrer/démarrer/arrêter, vous pouvez également utiliser :
etc/init.d/memcached restart
5. Vérifier l'état d'exécution de memcached
Pour confirmer que le service fonctionne sans aucune erreur, vérifiez l'état de ce système de cache.
sudo systemctl status memcached
ou
service memcached status
6. Confirmer que le cache écoute le port local
Ici, nous utilisons un outil pour vérifier que l'hôte local est correctement répertorié sur 11211, cela se traduira par toutes les valeurs de configuration :
memcached-tool 127.0.0.1:11211 stats
7. Autoriser le service de cache via le pare-feu
Par défaut, le port de service n'est pas sur liste blanche dans le pare-feu pour nous permettre de nous connecter en dehors de la demande du client, nous devons donc l'autoriser.
Sur CentOS 8, FirewallD est le service de pare-feu par défaut :
sudo firewall-cmd –zone=memcached –add-port=11211/tcp –permanent
Pour l'ancien système d'exploitation utilisant uniquement des tables IP, utilisez celui-ci :
iptables -A INPUT -i eth0 -p tcp --dport 11211-j ACCEPT
8. Installer l'extension PHP Memcache
Donc, notre serveur de cache est opérationnel mais pour l'utiliser avec PHP, afin qu'il puisse mettre en cache la base de données des applications PHP telles que WordPress, Joomla, etc. Nous devons activer une extension pour cela.
dnf install php php-pecl-memcache
La commande ci-dessus installera le module, cependant, au cas où vous obtiendriez une erreur :
No match for argument: php-pecl-memcache Error: Unable to find a match
Cela signifie que le paquet n'est pas disponible dans le dépôt officiel, donc au lieu d'ajouter un autre dépôt pour avoir les outils, construisons-le en utilisant le PECL.
dnf install zlib zlib-devel make
dnf install php php-devel php-pear
Enfin, lancez :
pecl install memcache
9. Activez l'extension=memcache.so
Le module PHP pour le système de cache est maintenant sur notre serveur, il est temps de l'ajouter au fichier php.ini. Au lieu d'ouvrir et de modifier, voici un raccourci. Utilisez cette commande unique pour ajouter l'extension en tant que fichier .ini supplémentaire dans le répertoire d'extension php.d.
echo "extension=memcache.so" >> /etc/php.d/memcache.ini
Redémarrer Apache
#Sur CentOS 8 ou 7
systemctl restart httpd
#Si vous êtes sur CentOS 6/5
service httpd restart
10. Vérifiez si le support est activé ou non
Pour confirmer le support de l'extension de PHP exécutez la commande suivante :
php -i | grep memcach
Sortie :