Cómo desplegar y monitorear el rendimiento de una base de datos con Percona en Docker
Una de las responsabilidades de los administradores de bases de datos es supervisar el rendimiento de sus bases de datos. Pero, ¿cómo se logra esto? Gracias a varios proyectos de código abierto, existen muchas formas de gestionar esta tarea. Uno de esos métodos es a través del sistema Percona Monitoring and Management, que incluye características como:
- Soporte para múltiples tipos de bases de datos
- Cumplimiento de ACID y Control de Concurrencia de Múltiples Versiones
- Soporte para características avanzadas
- Optimización del rendimiento
- Análisis y monitoreo de consultas y métricas
- Seguridad
- ¿Qué necesitarás para desplegar Percona?
- Cómo instalar Docker
- Cómo desplegar Percona
- Cómo acceder a la interfaz web de Percona
- Cómo desplegar el agente de monitoreo de Percona
Soporte para múltiples tipos de bases de datos
Percona ofrece compatibilidad con MySQL, MariaDB, PostgreSQL, MongoDB y ProxySQL, lo que significa que puedes utilizarlo independientemente del sistema de gestión de bases de datos que estés utilizando.
Cumplimiento de ACID y Control de Concurrencia de Múltiples Versiones
Percona cumple con los estándares ACID (Atomicidad, Consistencia, Aislamiento y Durabilidad) y utiliza el Control de Concurrencia de Múltiples Versiones (MVCC) para garantizar la integridad y consistencia de los datos en las transacciones de la base de datos.
Soporte para características avanzadas
Percona es compatible con una amplia gama de características avanzadas, como disparadores (triggers), vistas (views), subconsultas (subqueries), procedimientos almacenados (stored procedures) y más. Esto te permite aprovechar al máximo tu base de datos y realizar consultas complejas y personalizadas cuando sea necesario.
Optimización del rendimiento
Percona cuenta con soporte para grupos de recursos de InnoDB, lo que te permite asignar recursos específicos a diferentes grupos de usuarios o aplicaciones. También es compatible con diversos motores de almacenamiento, como InnoDB, XtraDB y MyRocks para MySQL y MariaDB, y WiredTiger, MMAPv1, InMemory y RocksDB para MongoDB. Esto te brinda flexibilidad para adaptar el rendimiento de la base de datos a tus necesidades específicas.
Aprende desarrollo web moderno y programación MySQL con este paquete de cursosAnálisis y monitoreo de consultas y métricas
Percona ofrece herramientas integradas para analizar y monitorear consultas y métricas. Esto te permite identificar cuellos de botella de rendimiento, optimizar consultas y tomar decisiones informadas sobre la infraestructura de tu base de datos.
Seguridad
Percona incluye verificaciones para problemas de seguridad comunes, lo que te ayuda a proteger tus datos y prevenir ataques. Esto asegura que tu base de datos esté protegida de amenazas conocidas y te brinda tranquilidad en términos de seguridad.
Si necesitas un monitor de rendimiento de bases de datos, Percona podría ser exactamente lo que estás buscando. A continuación, te mostraré cómo instalar y desplegar este sistema utilizando Docker.
¿Qué necesitarás para desplegar Percona?
Lo único que necesitarás para desplegar este monitor de rendimiento de bases de datos es al menos una máquina que admita Docker y un usuario con privilegios de sudo. Yo estaré demostrando el proceso utilizando dos instancias de Ubuntu Server 22.04. Con eso listo, comencemos.
Cómo instalar Docker
Lo primero que debes hacer es instalar la clave GPG del repositorio oficial de Docker con el siguiente comando:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
A continuación, agrega el repositorio oficial de Docker con el siguiente comando:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Instala las dependencias necesarias con el siguiente comando:
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y
Finalmente, instala la última versión del motor de Docker:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
Agrega tu usuario al grupo "docker" con el siguiente comando:
sudo usermod -aG docker $USER
Cierra sesión y vuelve a iniciar sesión para que los cambios surtan efecto.
Cómo desplegar Percona
En primer lugar, crea un volumen para el despliegue con el siguiente comando:
docker create -v /srv --name pmm-data percona/pmm-server:latest /bin/true
Luego, despliega Percona con el siguiente comando:
Cómo instalar Containerd en Ubuntu Server 22.04: Guía paso a pasodocker run -d -p 8000:80 -p 8443:443 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server:latest
Cómo acceder a la interfaz web de Percona
Ahora deberías poder acceder a la interfaz web de Percona apuntando un navegador a https://SERVIDOR:8443, donde SERVIDOR es la dirección IP del servidor de alojamiento. Se te pedirá que inicies sesión utilizando las credenciales predeterminadas "admin/admin".
Después de autenticarte correctamente, se te pedirá que cambies la contraseña del usuario admin. Esto es esencial no solo por motivos de seguridad, sino también para poder conectar el agente de monitoreo de Percona.
Cómo desplegar el agente de monitoreo de Percona
Para que Percona pueda monitorear el rendimiento de tus servidores de bases de datos, debes conectar esos servidores al monitor. Para hacerlo, continuaremos utilizando Docker. Necesitarás conocer tres datos para esta parte:
- Dirección IP del servidor de Percona
- Nombre de usuario de administrador para Percona, que es "admin"
- Contraseña del usuario admin de Percona, que cambiaste al iniciar sesión por primera vez
También debes asegurarte de que Docker esté instalado en el servidor de la base de datos que deseas monitorear. Puedes utilizar las mismas instrucciones anteriores para hacerlo. Una vez que tengas Docker instalado, descarga el último cliente de Percona pmm-client con el siguiente comando:
docker pull percona/pmm-client:2
Crea un volumen para los datos persistentes con el siguiente comando:
docker create --volume /srv --name pmm-client-data percona/pmm-client:2 /bin/true
Finalmente, despliega el agente de PMM con el siguiente comando (asegúrate de cambiar SERVIDOR y CONTRASEÑA según tu despliegue):
docker run -d \
--rm \
--name pmm-client \
-e PMM_AGENT_SERVER_ADDRESS=SERVIDOR \
-e PMM_AGENT_SERVER_USERNAME=admin \
-e PMM_AGENT_SERVER_PASSWORD=CONTRASEÑA \
-e PMM_AGENT_SERVER_INSECURE_TLS=1 \
-e PMM_AGENT_SETUP=1 \
-e PMM_AGENT_CONFIG_FILE=config/pmm-agent.yaml \
--volumes-from pmm-client-data \
percona/pmm-client:2
Donde SERVIDOR es la dirección IP del servidor de monitoreo de Percona que desplegaste anteriormente y CONTRASEÑA es la nueva contraseña que creaste para el usuario admin.
Ahora puedes conectar el cliente al servidor con el siguiente comando:
Cómo instalar y desplegar contenedores con containerd y nerdctldocker exec pmm-client pmm-admin config --server-insecure-tls --server-url=https://admin:CONTRASEÑA@SERVIDOR:8443
Donde CONTRASEÑA es la contraseña de admin que creaste y SERVIDOR es la dirección IP de tu servidor Percona.
Deberías ver en la salida:
Verificando el estado del pmm-agent local...
pmm-agent está en ejecución.
Registrando pmm-agent en el servidor PMM...
Registrado.
Se actualizó el archivo de configuración /usr/local/percona/pmm2/config/pmm-agent.yaml.
Recargando la configuración del pmm-agent...
Configuración recargada.
Verificando el estado del pmm-agent local...
pmm-agent está en ejecución.
En este punto, deberías ver el nuevo nodo en tu panel de control de Percona (Figura A).
Detectando errores y problemas en tu proyecto con SonarQubeFigura A
Suscríbete al canal de YouTube de Newsmatic "How To Make Tech Work" para obtener los últimos consejos tecnológicos para profesionales de negocios de Jack Wallen.
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Cómo desplegar y monitorear el rendimiento de una base de datos con Percona en Docker , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados