Estimados
He configurado Heartbeat en dos servidores
que tiene instalado el servicio squid, cuando inicio Heartbeat me sube todo sin
problemas..
/etc/init.d/heartbeat
restart
Stopping
High-Availability services:
[ OK ]
Waiting to allow resource
takeover to complete:
[ OK ]
Starting
High-Availability services:
[ OK ]
Pero cuando ejecuto crm_mon -i5 para
monitorear el servicio me dice que los dos nodos están activos pero
ningún servicio configurado , sin embargo, al hacer pruebas el cluster funciona
por un rato, es decir, navego especificando la dirección de uno de los dos
servidores luego bajo el servidor y sigo navegando e inclusive a otras paginas,
pero luego de un rato pierdo la conexión. ¿Qué puede estar mal?
El cluster es un activo activo , las
direcciones ip de los Server son , proxy1 10.100.5.140 y proxy2 10.100.5.141
Estos son los archivos de configuración
que están en cada uno de los nodos.
HA.CF
logfacility local0
auto_failback on
keepalive
1
# Send one heartbeat each second
warntime
3
# Warn when heartbeats are late
deadtime
10
# Declare nodes dead after 10 seconds
ping
1.100.5.10
# Ping our router to monitor ethernet connectivity
respawn hacluster
/usr/lib/heartbeat/ipfail # Failover on network failures
use_logd yes
bcast eth0
node proxy1 proxy2
crm on
CIB.XML
<configuration>
<crm_config/>
<nodes/>
<resources>
<group id="squid_group_1">
<primitive id="ip_resource_1" class="ocf"
type="IPaddr" provider="heartbeat">
<instance_attributes>
<attributes>
<nvpair name="ip" value="10.100.5.140"/>
</attributes>
</instance_attributes>
</primitive>
<primitive id="squid" class="heartbeat"
type="squid">
<instance_attributes>
<attributes>
<nvpair name="1" value="/etc/init.d/squid"/>
</attributes>
</instance_attributes>
</primitive>
</group>
<group id="squid_group_2">
<primitive id="ip_resource_2" class="ocf" type="IPaddr"
provider="heartbeat">
<instance_attributes>
<attributes>
<nvpair name="ip" value="10.100.5.141"/>
</attributes>
</instance_attributes>
</primitive>
<primitive id="squid" class="heartbeat"
type="squid">
<instance_attributes>
<attributes>
<nvpair name="1" value="/etc/init.d/squid"/>
</attributes>
</instance_attributes>
</primitive>
</group>
</resources>
<constraints>
<rsc_location id="run_squid_group_1"
rsc="squid_group_1">
<rule id="pref_run_squid_group_1" score="100">
<expression attribute="#uname" operation="eq"
value="proxy1"/>
</rule>
</rsc_location>
<rsc_location id="run_squid_group_2"
rsc="squid_group_2">
<rule id="pref_run_apache_group_2" score="100">
<expression attribute="#uname" operation="eq"
value="proxy2"/>
</rule>
</rsc_location>
</constraints>
</configuration>
<status/>
</cib>
Saluda atentamente
Hector Martínez
De: Diego Álvarez [mailto:diego.alvarez@microserv.cl]
Enviado el: miércoles, 02 de enero
de 2008 10:37
Para: Hector Martínez Romo
Asunto: Re: Saludos y consulta
Hector Martínez Romo wrote:
Estimado Diego
Mis más sinceros buenos deseos para el año que
comienza y agradecimiento por todo el apoyo in condicional prestado este último
tiempo.
En el Mineduc el acceso a Internet es a través
de dos servidores Proxy (squid) que funcionan independientemente, las cargas
están balanceadas a través de DNS, sin embargo, no existe ninguna
tolerancia a la falla, por esta razón estuve leyendo acerca de PIRANHA
para implementar un cluster de balanceo de carga, pero no es aplicable en este
caso debido a que solo tengo dos Server y PIRANHA requiere un Server mas para
que haga el balanceo entre estos dos, mi pregunta es ¿existe alguna tecnología
(GPL) como la existente en Windows (NBL-Network Load Balance) donde no se
requiere un Server dedicado para controlar el cluster, mejor dicho que maneje
el concepto de IP-virtual y granja de servidores?
Hola Hector,
Feliz Año Nuevo.
Si quieres tener sólo dos equipos, entonces lo que podrías hacer es un cluster
de alta disponibilidad, ya sea Activo/Activo o bien Activo/Pasivo.
Pero si quieres balanceo de carga, entonces lo que necesitas es un en tercer
equipo que se dedique a realizar esa tarea. Si embargo, con eso no tendrías
tolerancias a fallas.
Lo mejor que puedes hacer es un cluster de alta disponibilidad. Ya sea con
Heartbeat-2 o Red Hat Cluster Suite.
Saludos,
Diego.