Cómo instalar y configurar Memcached en AlmaLinux 8

Memcached se utiliza para acelerar los sitios web dinámicos basados ​​en bases de datos almacenando en caché datos y objetos en la RAM. Esto reduce la cantidad de veces que se debe leer una fuente de datos externa, lo que reduce los gastos generales y acelera los tiempos de respuesta. El software de almacenamiento en caché de memoria es un proyecto gratuito de código abierto que cualquiera puede usar.

Al final del tutorial, sabrá cómo instalar y configurar Memcached en su sistema operativo Almalinux 8.

Requisitos previos

  • SO recomendado: Alma Linux 8.
  • Cuenta de usuario: Una cuenta de usuario con privilegios de sudo or acceso root (comando su).

Actualización del sistema operativo

Actualice su AlmaLinux sistema operativo para asegurarse de que todos los paquetes existentes estén actualizados:

sudo dnf upgrade --refresh -y

El tutorial utilizará el comando sudo y asumiendo que tienes el estado de sudo.

Anuncio

Para verificar el estado de sudo en su cuenta:

Anuncio
sudo whoami

Salida de ejemplo que muestra el estado de sudo:

[joshua@localhost ~]$ sudo whoami
root

Para configurar una cuenta sudo nueva o existente, visite nuestro tutorial en Cómo agregar un usuario a Sudoers en AlmaLinux.

Para utilizar el cuenta root, use el siguiente comando con la contraseña de root para iniciar sesión.

su

Instalar Memcached

De forma predeterminada, AlmaLinux tiene Memcached en su flujo de aplicaciones. Para instalar Memcached, ingrese el siguiente comando:

Anuncio
sudo dnf install memcached libmemcached

Ejemplo de salida:

Cómo instalar y configurar Memcached en AlmaLinux 8

Tipo Y, entonces presione INTRODUCIR CLAVE para continuar con la instalación.

Anuncio

Tenga en cuenta que la segunda opción de instalación, la "libmemcaché”, Proporciona comandos adicionales para brindar interacción adicional y ejecutar habilidades a Memcached.

A continuación, verifique que Memcached se haya instalado correctamente verificando su versión y compilación

memcached --version

Ejemplo de salida:

Anuncio
memcached 1.5.22

El servicio, por defecto, no estará activo. Para iniciar Memcached usando el siguiente comando:

sudo systemctl enable memcached --now

Memcached debería estar activado por defecto. Para verificar esto, use el comando de estado systemctl como sigue:

systemctl status memcached

Ejemplo de salida:

Anuncio
Cómo instalar y configurar Memcached en AlmaLinux 8

Otros comandos útiles para administrar el servicio Memcached son los siguientes:

Para habilitar el servicio Memcached en el arranque del sistema:

Anuncio
sudo systemctl enable memcached

Para detener el servicio Memcached:

sudo systemctl stop memcached

Para deshabilitar el servicio Memcached al arrancar el sistema:

sudo systemctl disable memcached

Para reiniciar el servicio Memcached:

sudo systemctl restart memcached

A continuación, verifique que Memcached esté escuchando activamente a localhost en la configuración predeterminada. puerto 11211. Para confirmar este tipo, lo siguiente:

Anuncio
ps -ef | grep memcached

Ejemplo de salida:

Anuncio
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

Configurar Memcached

Memcached debe estar escuchando 127.0.0.1. Abra la configuración predeterminada en el archivo de configuración ubicado en "/ etc / sysconfig / memcached".

sudo nano /etc/sysconfig/memcached

La primera opción es cambiar el número de puerto tradicional de Memcached.

11211

Si tiene este número de puerto y tiene reglas de firewall existentes, deberá actualizarlas. Idealmente, esto se puede dejar como predeterminado.

Vea también  Cómo instalar Nginx Mainline en Ubuntu 22.10/22.04/20.04

La segunda opción es cambiar las conexiones máximas a algo un poco más alto si su sistema puede manejarlo.

MAXCONN="2000"

Las conexiones máximas deben aumentarse lentamente y probarse. No lo ponga demasiado alto.

Anuncio
Anuncio

A continuación, cambie el tamaño de caché predeterminado de 64 MB a un tamaño que crea que su caché tendrá algo de espacio para respirar.

Ejemplo de cambio a 2GB:

CACHESIZE="2000"

Si su servidor tiene muchos recursos, cualquier número servirá, pero tenga cuidado y colóquelo dentro de sus límites si tiene un host económico.

Ahora desplácese hacia abajo y busque la siguiente línea y verifique el "-L" parámetro que existe.

Desde aquí, puede dejar el localhost o especificar una dirección IP interna o externa. Además, puede agregar opciones adicionales que se describirán a continuación.

Anuncio
-l 127.0.0.1

El primer indicador adicional es deshabilitar UDP si no es necesario.

Anuncio
-U 0

Una descripción general del tutorial sobre cómo se verá su configuración una vez finalizada.

Solo ejemplo:

Cómo instalar y configurar Memcached en AlmaLinux 8

Ahora guarda el archivo CTRL + O y golpear "Y" luego CTRL + X para salir y reiniciar su instancia de Memcached.

sudo systemctl restart memcached

Configurar Firewalld para Memcached

De forma predeterminada, no se configuran reglas para Memcached. Esto significa que deberá crear reglas de permiso, lo cual es esencial para detener los ataques. No asegurar Memcached dará lugar a problemas en el futuro, así que no omita esto a menos que tenga otros medios para proteger su instalación.

Anuncio

Primero, agregue una nueva zona dedicada para la política Firewalld de Memcached:

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

A continuación, especifique las direcciones IP permitidas que pueden acceder a Memcached.

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

Reemplazar 1.2.3.4 con la IP dirección que se agregará a la lista de permitidos.

Una vez que haya terminado de agregar las direcciones IP, abra el puerto de Memcached.

Por defecto, esto es Puerto TCP 11211.

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

Tenga en cuenta que puede cambiar el puerto predeterminado en su archivo de configuración si cambia la regla de apertura del puerto del cortafuegos anterior al nuevo valor.

Vea también  Cómo instalar Linux Kernel 6.0 en AlmaLinux 9

Después de ejecutar esos comandos, vuelva a cargar el firewall para implementar las nuevas reglas:

sudo firewall-cmd --reload

Salida de ejemplo si tiene éxito:

Anuncio
success

Instalar bibliotecas PHP Memcached

Memcached viene con varias extensiones para los lenguajes de programación, pero se usa principalmente para PHP. Sin embargo, Almalinux necesita algunos repositorios adicionales instalados para extraer estos paquetes, ya que no aparecen en el flujo de aplicaciones predeterminado.

Primero, instale el repositorio PHP EPEL y Remi.

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

A continuación, habilite el módulo PHP que está utilizando actualmente. A continuación se muestran algunos ejemplos.

PHP 8.0:

sudo dnf module enable php:remi-8.0 -y

PHP 7.4:

sudo dnf module enable php:remi-7.4 -y

A continuación, instale el soporte PHP de Memcached usando el siguiente comando.

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

Ejemplo de salida:

Anuncio
Cómo instalar y configurar Memcached en AlmaLinux 8

Tipo Y, entonces presione INTRODUCIR CLAVE para continuar con la instalación.

Además, para el soporte de Memcached con Python, puede instalar los siguientes paquetes utilizando la biblioteca PIP.

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

Accediendo a Memcached desde la línea de comandos

Las estadísticas de Memcached se pueden recopilar mediante mucho software adicional y UI WEB con las que trabaja en conjunto. Sin embargo, una mejor manera de verificarlo es interactuar con Memcached directamente usando la línea de comando.

En primer lugar, TELNET a su servicio:

telnet localhost 11211

Ejemplo de salida:

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

Tenga en cuenta que si Telnet no está instalado, ejecute el siguiente comando para instalarlo.

sudo dnf install telnet -y

Tenga en cuenta que nunca se debe permitir que TELNET se comunique con una red pública y restringido en entornos de redes privadas.

A continuación, puede obtener una descripción general de su servicio Memcached mediante el siguiente comando:

stats

Ejemplo de salida:

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

Como se indicó anteriormente, esto muestra algunas cosas cruciales que puede querer ver, como el tiempo de actividad, la cantidad de elementos en la caché y la cantidad de conexiones de cliente a la instancia.

Anuncio

Puede refinar la búsqueda examinando las diferentes losas de Memcached (particiones) de memoria para obtener resultados.

Anuncio

Ejemplos a continuación:

Vea también  Cómo instalar FFmpeg en Fedora 37/36/35

Enumere las losas en la instancia conectada:

stats slabs

Lista de losas que incluye un recuento de los elementos almacenados dentro de cada losa:

stats items

A continuación, puede acceder y eliminar datos utilizando el comando cachedump para enumerar las claves.

Anuncio

Primero, ejecute el comando cachedump:

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

Ejemplo en acción:

Anuncio
stats cachedump 1 0

Ejemplo de salida:

ITEM testkey [9 b; 1296857316 s]
END

Como arriba, SLAB 1 tiene un elemento con la clave "Clave de prueba". Para obtener el valor real, puede utilizar el "obtener la clave" comando de la siguiente manera:

get testkey

Ejemplo de salida:

Anuncio
VALUE testkey 0 9
test data
END

Por último, para eliminar un elemento en caché, en este caso, el "Clave de prueba" usa el siguiente comando:

delete testkey

Ejemplo de salida:

DELETED

Cómo quitar (desinstalar) Memcached

Para eliminar Memcached, use el siguiente comando en su terminal.

Anuncio
sudo dnf autoremove memcached libmemcached

Esto eliminará Memcached de su sistema de inmediato.

Comentarios y Conclusión

El tutorial le ha mostrado cómo instalar Memcached en su sistema operativo Almalinux 8, instalar las bibliotecas adicionales y cómo acceder a la lista de comandos del terminal.

Anuncio

Para obtener más documentación, el proyecto Wiki de Github La página explica en mayor detalle a los administradores del servidor cualquier especificación o información que necesiten.


¿No es lo que estabas buscando? Intente buscar tutoriales adicionales.

Deja un comentario