Introducción
Memcached es un almacén de datos de valor-clave en memoria de alto rendimiento, gratuito y de código abierto. Se utiliza principalmente como un sistema de almacenamiento en caché para acelerar las aplicaciones al almacenar en caché varios objetos de los resultados de las llamadas a la base de datos.
En este tutorial, explicaremos cómo instalar y configurar Memcached en CentOS 8.
Prerrequisitos
Antes de continuar con este tutorial, asegúrese de haber iniciado sesión como usuario con privilegios de sudo.
Si desea instalar Memcached en un servidor remoto, continúe leyendo; de lo contrario, omita el primer párrafo "Conectando al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:
ssh root@IP_DEL_SERVER
A continuación, deberá ingresar la contraseña del usuario root.
Si no está utilizando el usuario root, puede iniciar sesión con otro nombre de usuario utilizando el mismo comando, luego cambie root a su nombre de usuario:
ssh nome_utente@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Instalar Memcached
Los paquetes memcached se incluyen en los repositorios predeterminados de CentOS 8. La instalación es bastante sencilla, simplemente escriba el siguiente comando:
sudo yum install memcached libmemcached
El libmemcached
contiene varias herramientas de línea de comandos para administrar el servidor Memcached.
Una vez que se complete la instalación, inicie y habilite el servicio Memcached
sudo systemctl start memcached
sudo systemctl enable memcached
Eso es todo, en este punto tiene Memcached instalado y ejecutándose en su servidor CentOS 8.
Configurar Memcached
Memcached se puede configurar editando el /etc/sysconfig/memcached
. De forma predeterminada, Memcached está configurado para escuchar en todas las interfaces. En las siguientes secciones, le mostraremos cómo configurar el servicio para acceso local y remoto.
Si Memcached está configurado incorrectamente, se puede usar para realizar un ataque de denegación de servicio distribuido (DDoS).
Solo acceso local
Si el cliente que se conecta al servidor también se ejecuta en el mismo host, se recomienda que configure el servicio Memcached para que escuche solo a localhost.
Para hacer esto, abra el memcache
con su editor de texto:
sudo vi /etc/sysconfig/memcached
En el parámetro OPTIONS
-l 127.0.0.1
. Esto le dice a Memcached que se vincule solo a la interfaz especificada:
OPTIONS="-l 127.0.0.1"
Reinicie el servicio Memcached para que los cambios surtan efecto:
sudo systemctl restart memcached
Acceso remoto
Si la aplicación que se conectará a Memcached está alojada en un servidor remoto, debe configurar el firewall y permitir el acceso al puerto de Memcached 11211
solo desde la dirección IP del cliente.
El siguiente ejemplo asume que desea conectarse al servidor Memcached a través de una red privada. La IP del servidor Memcached es 192.168.222.222
y la dirección IP del cliente es 192.168.111.111
CentOS viene con una herramienta de configuración de firewall FirewallD
Los siguientes comandos crearán una nueva zona llamada memcached
, abrirán el puerto 11211
y solo permitirán el acceso desde la dirección IP del cliente.
sudo firewall-cmd --new-zone=memcached --permanent
sudo firewall-cmd --zone=memcached --add-port=11211/udp --permanent
sudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanent
sudo firewall-cmd --zone=memcached --add-source=192.168.100.30/32 --permanent
sudo firewall-cmd --reload
Una vez que se configura el firewall, el siguiente paso es modificar la configuración de Memcached y configurar el servicio para que escuche en la interfaz de red privada del servidor:
Abra el archivo de configuración de memcached
sudo nano /etc/sysconfig/memcached
En el OPTIONS
agregue la dirección IP del servidor -l 192.168.222.222
:
OPTIONS="-l 192.168.222.222"
Guarde el archivo y reinicie el servicio Memcached:
sudo systemctl restart memcached
Conectarse a Memcached
Se debe utilizar un cliente específico del idioma para conectarse al servidor Memcached.
PHP
Para usar Memcached como una base de datos de almacenamiento en caché para su aplicación PHP como WordPress, Drupal o Magento, necesita instalar la extensión php-pecl-memcached
sudo yum install php-pecl-memcache
Pitón
Hay varias bibliotecas de Python para interactuar con Memcache. Puede instalar su biblioteca favorita usando pip:
pip install pymemcache
pip install python-memcached
Conclusión
Ha aprendido a instalar Memcached en su servidor CentOS 8. Para obtener más información sobre este tema, consulte Memcached Wiki.