OVH Community, your new community space.

cPanel con servidor MySQL externo


Power
10/06/2010, 20:33
Hola,
Cita Publicado inicialmente por MarcosBL
No he trabajado con cPanel, ya sabes, pero por si ayuda, igual puedes montarte un "redirector":

Cita:
socat UNIX-LISTEN:/var/lib/mysql/mysql.sock,fork,user=mysql,group=mysql,mode=777
TCP:localhost:3306 2> /dev/null &
y un túnel SSH con ese socket virtual (siempre que los admitan los Cloud, que npi)

Cita:
autossh -M 3337 -f -N -g -L 3306:localhost:3306 mysqlserver.domain.com
Se le ocurrió a alguien para evitar que la libreria mysql de php se empeñase en usar el socket unix en lugar del TCP que él pretendía, pero creo que entre esto y lo que entresaques de los comentarios podrías montarte esa "ñapa" , siempre con el SSH claro - http://urlcorta.es/29kw

La forma "limpia" debería ser por medio de MySQL Proxy, donde seguro no tendrás problema para hacer el alias:

http://forge.mysql.com/wiki/MySQL_Proxy
http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy.html
http://dev.mysql.com/tech-resources/...ngstarted.html
¡¡¡ Uaaauuu !!!
Mucha información ... y de la buena.
Iré estudiándola.
Muchas gracias, una vez más, MarcosBL.

Saludos

MarcosBL
10/06/2010, 19:37
No he trabajado con cPanel, ya sabes, pero por si ayuda, igual puedes montarte un "redirector":

socat UNIX-LISTEN:/var/lib/mysql/mysql.sock,fork,user=mysql,group=mysql,mode=777
TCP:localhost:3306 2> /dev/null &
y un túnel SSH con ese socket virtual (siempre que los admitan los Cloud, que npi)

autossh -M 3337 -f -N -g -L 3306:localhost:3306 mysqlserver.domain.com
Se le ocurrió a alguien para evitar que la libreria mysql de php se empeñase en usar el socket unix en lugar del TCP que él pretendía, pero creo que entre esto y lo que entresaques de los comentarios podrías montarte esa "ñapa" , siempre con el SSH claro - http://urlcorta.es/29kw

La forma "limpia" debería ser por medio de MySQL Proxy, donde seguro no tendrás problema para hacer el alias:

http://forge.mysql.com/wiki/MySQL_Proxy

http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy.html

http://dev.mysql.com/tech-resources/...ngstarted.html

Power
10/06/2010, 18:58
Hola,

Reabro este tema por una duda que me ha surgido.

Si utilizo un Cloud con cPanel, podría utilizar un dC/MySQL como servidor externo de MySQL.
Pero le veo el problema de que cPanel, para poder manejar el servidor remoto de MySQL, debe tener acceso root a él por SSH.
Y me pareció entender a Oles que los dC no tendrían acceso root.

¿Cómo hacerlo entonces?

Por supuesto, cambiando todos los scripts de conexión de PHP para que en lugar de conectarse a localhost se conecten al servidor remoto.
Pero eso es complicado cuando se tienen muchos clientes.

¿Sabéis si cambiando en el php.ini y en el my.conf los parámetros correspondientes a usuario de mysql se podría, de alguna manera, engañar a los scripts para que realmente se conecten al servidor remoto?

Gracias anticipadas.

Saludos

luis_sanz
04/03/2010, 18:57
Cita Publicado inicialmente por kitamarchas
lo de balancear no es solo por el nivel de carga que puedas tener, si no para garantizar una reduncancia y tolerancia a fallo. Un servicio crítico con baja carga sería una locura no tenerlo balanceado, si es crítico, hay que balancear, no es profesional depender de un solo servidor, cualquier día puede fallar algo y no pienso depender de Celine para solucionar el problema que tengo.
claro! si para eso el balanceo es lo suyo, pero para eso que tu dices, necesitas balancear TODO no solo tus archivos PHP y tus correos, no se si me explico!!

yo si pongo 10 servidores balanceandose, si luego tengo el servidor mysql funcionando el solito en otro servidor, pues ya me diras la redundancia que hago, mas cuando mis webs son inaccesibles si el servidor mysql se cae

kitamarchas
04/03/2010, 18:53
lo de balancear no es solo por el nivel de carga que puedas tener, si no para garantizar una reduncancia y tolerancia a fallo. Un servicio crítico con baja carga sería una locura no tenerlo balanceado, si es crítico, hay que balancear, no es profesional depender de un solo servidor, cualquier día puede fallar algo y no pienso depender de Celine para solucionar el problema que tengo.

luis_sanz
04/03/2010, 18:42
solo le faltaria añadir al script de cpanel, la opcion de instalar y configurar mysql en el servidor remoto, seria la bomba.. no por ahorrarme el instalar yo mismo mysql si no por usar la version mysql que en cpanel se ofrece, de esta forma si la distro que instalas tiene por ejemplo mysql5.0.X como centos5, pues cpanel te instala la version 5.1.x que ya tiene RE-probada

Power
04/03/2010, 18:41
Hola,
Cita Publicado inicialmente por luis_sanz
pues menuda cantidad de visitas debes tener para tener que balancear servidores sin mysql

cada caso es un mundo, pero en mi caso si alguna vez multiplico por 10 mi trafico, con separar mysql del servidor principal, seria mas que suficiente para no tener que balancear nada.., es mas si alguna vez necesitara balancear algo seria el servidor mysql
Más que por balancear carga, le veo más ventajas por poder acceder a los mismos datos almacenados en MySQL, no sólo en lectura sino también en escritura desde cualquier máquina sin necesidad de replicaciones remotas.

Y poder optimizar el servidor de MySQL aisladamente de otros servicios.
(Al margen de que haciéndolo en una máquina virtualizada los backups del servidor MySQL los haría como imágenes instantáneas sin necesidad de parar el servicio.)

Saludos

Power
04/03/2010, 18:35
Hola,

Leyendo en los foros de cPanel, parece que, efectivamente, la opción "Setup Remote MySQL server" cambia el servidor local MySQL a otro servidor MySQL remoto.

cPanel se encarga de hacerlo todo mediante scripts.
Se precisa que ambos servidores tengan Perl, habilitados sus cortafuegos de entrada y salida para permitir tráfico entre ellos.
El servidor remoto debe tener abierto el puerto 3306.

Desde la opción "Setup Remote MySQL server" de WHM se piden los datos de acceso por SSH al servidor remoto para que los scripts de cambio realicen todas las faenas.

Hay una presentación de la cPanel Conference de 2008 sobre el tema muy interesante:
http://twiki.cpanel.net/twiki/pub/Al...YSQLServer.pdf
Es impresionante que cPanel automáticamente se encargue de hacer los 10 pasos del escenario 1.

Y por lo que leo sobre la futura versión 12 de cPanel, posiblemente tenga otras posibilidades de clusters, no sólo DNS, sino también de mail, MySQL, etc.

Y, siendo de cPanel, seguro que funciona bien.

Saludos

luis_sanz
04/03/2010, 18:33
Cita Publicado inicialmente por Power

Efectivamente, parece una opción muy interesante poder separar el servidor MySQL.
Yo ya estoy pensando en un servidor MySQL separado (en una VM de OpenVZ sobre Proxmox).
Con la ventaja de que varios servidores podrían utilizar el mismo servidor (por ejemplo, en casos de varios servidores web con balanceo de carga).

Saludos
pues menuda cantidad de visitas debes tener para tener que balancear servidores sin mysql

cada caso es un mundo, pero en mi caso si alguna vez multiplico por 10 mi trafico, con separar mysql del servidor principal, seria mas que suficiente para no tener que balancear nada.., es mas si alguna vez necesitara balancear algo seria el servidor mysql

Power
04/03/2010, 16:53
Hola,

Justo te acabo de decir en otro post que yo no tengo las BD separadas, pero si lo he probado.
Yo lo he probado pero usando el mismo sistema que uso para el correo, con subdominio apuntando al servidor de mysql y cargar las bd desde bd.dominio.tld. Supongo que lo que hará CPanel sera directamente direccionar MySQL a la IP del servidor, eso si asegúrate de abrir las conexiones remotas a MySQL en el servidor de MySQL.
Creo que, en este caso, cPanel debe utilizar el servidor remoto de MySQL como si fuese el local.

A la opción la llama: Setup Remote MySQL server
Y dice:
This feature allows you to place MySQL databases on a remote server that is running MySQL. Using a separate server for MySQL can be useful for busy servers or servers with large databases, allowing you to offload MySQL-related work to the remote MySQL server.
mmm, y si das de alta un sql remoto luego, los clientes con cpanel cuando crean sus bases de datos se crean en ese sql remoto o en localhost?
Suena bien, igual me interesa un servidor con discos ssd solo para sql.
Efectivamente, parece una opción muy interesante poder separar el servidor MySQL.
Yo ya estoy pensando en un servidor MySQL separado (en una VM de OpenVZ sobre Proxmox).
Con la ventaja de que varios servidores podrían utilizar el mismo servidor (por ejemplo, en casos de varios servidores web con balanceo de carga).

Saludos

kitamarchas
04/03/2010, 15:43
mmm, y si das de alta un sql remoto luego, los clientes con cpanel cuando crean sus bases de datos se crean en ese sql remoto o en localhost?
Suena bien, igual me interesa un servidor con discos ssd solo para sql.

icenrg
04/03/2010, 15:11
Cita Publicado inicialmente por Power
Hola,

He visto que en la nueva versión 11.25 de MySQL se permite, desde el WHM, poner servidores externos de MySQL.

¿Alguien lo ha probado?
¿Funciona bien teniendo el servidor MySQL en otra máquina?
Gracias

Saludos
Hola Power,

Justo te acabo de decir en otro post que yo no tengo las BD separadas, pero si lo he probado.
Yo lo he probado pero usando el mismo sistema que uso para el correo, con subdominio apuntando al servidor de mysql y cargar las bd desde bd.dominio.tld. Supongo que lo que hará CPanel sera directamente direccionar MySQL a la IP del servidor, eso si asegúrate de abrir las conexiones remotas a MySQL en el servidor de MySQL.

Salu2.

Power
04/03/2010, 14:34
Hola,

He visto que en la nueva versión 11.25 de MySQL se permite, desde el WHM, poner servidores externos de MySQL.

¿Alguien lo ha probado?
¿Funciona bien teniendo el servidor MySQL en otra máquina?
Gracias

Saludos