SlideShare una empresa de Scribd logo
1 de 50
Alta Disponibilidad  y  Balanceo de Carga en Linux --------- Cursos GUL Marzo::2008 Javier Turégano Molina
Indice INDICE ,[object Object]
Heartbeat
IPVS
Keepalived
Almacenamiento Compartido
Casos de Éxito
Preguntas
Introducción ¿Qué es eso de la alta disponibilidad?
Introducción ¿Qué es el balanceo de carga?
Introducción ¿Qué tipos de crecimiento hay? VERTICAL HORIZONTAL
Introducción ¿Es importante la compartición de datos entre nodos?
Introducción ¿Tenemos disponibles todas esas herramientas con Software Libre? -Alta disponibilidad:  Heartbeat - Balanceo de carga:  IPVS  +  Keepalived - Almacenamiento compartido:  DRBD, JFS, OCFS, iSCSI, AoE
Introducción Pero, ¿quién está utilizando esto?
Introducción Alguna pega debe de tener ¿no?
HEARTBEAT :: HEARTBEAT :: http://www.linux-ha.org/HeartbeatProgram
HEARTBEAT Heartbeat es uno de los componentes principales del proyecto Linux-HA (Linux Hight Availability). Multiplataforma: Linux ,FreeBSD y Solaris. Nos ofrece detección de nodos caidos, comunicación y gestión de cluster en un solo proceso.
¿Cómo funciona Heartbeat? Heartbeat utiliza un sistema de latidos. Recomendaciones: - Comunicación dedicada - Comunicación redundante
¿Cómo funciona Heartbeat? Asignamos los recursos ,[object Object]
Servidores activos Maestro de almacenamiento
Heartbeat (Activo - Pasivo) ALTA DISPONIBILIDAD ACTIVO-PASIVO
Heartbeat (Activo - Pasivo) Z Z Z
Heartbeat (Activo – Pasivo Multiservicio) ALTA DISPONIBILIDAD ACTIVO-PASIVO MULTISERVICIO
Heartbeat (Activo – Pasivo Multiservicio)
Heartbeat (Failover) Opciones de recuperación del nodo caido: Autofailback on/off
Hearbeat (Autofailback on)
Configuración de Heartbeat Hearbeat se configura a través de dos ficheros de configuración principales: /etc/ha.d/ha.cf /etc/ha.d/haresources
Configuración de Heartbeat /etc/ha.d/ha.cf logfile  /var/log/ha-log logfacility  local0 keepalive  2 warntime  3 deadtime  12 initdead  30 auto_failback  off udpport  694 bcast  eth1 ping 192.168.17.2 192.168.17.1 node constantinopla node alejandria
Configuración de Heartbeat Ejemplo Activo – Pasivo /etc/ha.d/haresources constantinopla 192.168.1.1 apache postfix  alejandria  Ejemplo Activo – Pasivo Multiservicio /etc/ha.d/haresources constantinopla 192.168.1.1 apache postfix alejandria 192.168.1.2 mysql
Hearbeat 2 ¿Qué ventajas nos aporta la versión 2 de hearbeat?
Heartbeat 2 Configuration <?xml version=&quot;1.0&quot; ?> <cib> <configuration> <crm_config> <nvpair id=&quot;transition_idle_timeout&quot; name=&quot;transition_idle_timeout&quot; value=&quot;120s&quot;/> <nvpair id=&quot;symmetric_cluster&quot; name=&quot;symmetric_cluster&quot; value=&quot;true&quot;/> <nvpair id=&quot;no_quorum_policy&quot; name=&quot;no_quorum_policy&quot; value=&quot;stop&quot;/> </crm_config> <nodes/>
Hearbeat 2 Configuration <resources> <group id=&quot;group_1&quot;> <primitive class=&quot;ocf&quot; id=&quot;IPaddr_1&quot; provider=&quot;heartbeat&quot; type=&quot;IPaddr&quot;> <operations> <op id=&quot;1&quot; interval=&quot;5s&quot; name=&quot;monitor&quot; timeout=&quot;5s&quot;/> </operations> <instance_attributes> <attributes> <nvpair name=&quot;ip&quot; value=&quot;10.0.200.30&quot;/> <nvpair name=&quot;netmask&quot; value=&quot;16&quot;/> <nvpair name=&quot;nic&quot; value=&quot;eth0&quot;/> </attributes> </instance_attributes> </primitive>
Hearbeat 2 Configuration <primitive class=&quot;ocf&quot; id=&quot;apache2id&quot; provider=&quot;heartbeat&quot; type=&quot;apache2&quot;> <operations> <op id=&quot;3&quot; name=&quot;monitor&quot; interval=&quot;10s&quot; timeout=&quot;10s&quot;/> </operations> </primitive> </group> </resources> <constraints> <rsc_location id=&quot;rsc_location_group_1&quot; rsc=&quot;group_1&quot;> <rule id=&quot;prefered_location_group_1&quot; score=&quot;100&quot;> <expression attribute=&quot;#uname&quot; operation=&quot;eq&quot; value=&quot;mars&quot;/> </rule> </rsc_location> </constraints> </configuration>  <status/> </cib>
IPVS :: IPVS (IP Virtual Server) :: http://www.linuxvirtualserver.org/software/ipvs.html IPVS implementa balanceo de carga a nivel de la capa de transporte dentro del kernel de Linux (layer4-switching). IPVS actua como un balanceador de carga. Puede redirigir conexiones a servicios TCP/UDP a los servidores reales, y así hacer parecer que estos servicios de varios servidores como un único servicio virtual para una IP.
IPVS
IPVS - Caracteristicas Caracteristicas: ,[object Object],[object Object],[object Object]
Tunneling
Direct Routing ,[object Object]
IPVS Versiones: La versión estable actual es ipvs 1.2.1 y está incluida de serie en los kernel de linux a partir de la versión 2.6.10. Para los kernels 2.4 también tenemos disponible la versión de ipvs 1.0.12 a partir del kernel 2.4.28. Aparte del módulo del kernel disponemos de una aplicación en línea de comandos para administrarlo:  ipvsadm
Ejemplo - IPVS Ejemplo: Configuración de un balanceador con IPVS para que distribuya el tráfico que reciba por el puerto 80 a 5 servidores reales.
Ejemplo - IPVS Añadimos un servicio virtual para 207.175.44.110: $ ipvsadm -A -t 207.175.44.110:80 -s rr Añadimos los servidores al servicio virtual: $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.1:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.2:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.3:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.4:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.5:80 -m
Ejemplo - IPVS Necesitaremos activar el reenvio ip: $ echo &quot;1&quot; > /proc/sys/net/ipv4/ip_forward Listado de rutas existentes y activas: $ ipvsadm -l Nos va a ser muy útil para paradas programadas y mantemiento.
Failover en IPVS ¿Qué ocurre si uno de los equipos del balanceo cae? Para solucionarlo podemos utilizar: Keepalived
Keepalived :: KEEPALIVED :: http://www.keepalived.org/
Keepalived El objetivo principal de Keepalived es añadir una utilidad fuerte y robusta de recuperación ante fallos en el proyecto de Linux Virtual Server. Está escrito en C y nos provee de un sistema de chequeos multicapa sobre la pila TCP/IP. Nos permite trabajar en 3 capas: 3, 4 y 5/7.
Keepalived ¿Cómo funciona keepalived?
Keepalived
Configuración de Keepalived /etc/keepalived/keepalived global_defs { notification_email { [email_address] } notification_email_from balanceador@miservidor.net smtp_server 192.168.18.2 smtp_connect_timeout 30 lvs_id BALANCEADOR1_LVS }
Configuración de Keepalived vrrp_instance VI_EXTERNA { state MASTER interface eth0 lvs_sync_daemon_inteface eth0 virtual_router_id 51 priority 150 advert_int 1 smtp_alert authentication { auth_type PASS auth_pass example } virtual_ipaddress { 192.168.17.115}  }
Configuración de Keepalived virtual_server 192.168.17.115 110 { delay_loop 6 lb_algo wlc lb_kind NAT nat_mask 255.255.255.0 protocol TCP real_server 192.168.5.1 110 { weight 1 TCP_CHECK { connect_timeout 3 connect_port 110 } } real_server 192.168.5.2 110 { weight 1 TCP_CHECK { connect_timeout 3 connect_port 110 } } }

Más contenido relacionado

La actualidad más candente

Emulador de ensamblador EMU8086.
Emulador de ensamblador EMU8086.Emulador de ensamblador EMU8086.
Emulador de ensamblador EMU8086.RubnPilca
 
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa CondeProceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa CondeSam Espinosa
 
Estructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativoEstructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativoMarvin Romero
 
Windows server 2008
Windows server 2008Windows server 2008
Windows server 2008Jesus Mota
 
Fecha y hora cmd
Fecha y hora cmdFecha y hora cmd
Fecha y hora cmdrubhen123
 
Consumo de APIs usando el WSO2 API Manager
Consumo de APIs usando el WSO2 API ManagerConsumo de APIs usando el WSO2 API Manager
Consumo de APIs usando el WSO2 API ManagerIsildurMaC
 
Unidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxUnidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxjcfarit
 
Practica de procesos en Linux
Practica de procesos en LinuxPractica de procesos en Linux
Practica de procesos en LinuxTerrafx9
 
Introduccion A Los Procesos
Introduccion A Los ProcesosIntroduccion A Los Procesos
Introduccion A Los Procesospainni
 
Tecnicas de ingenieria de software
Tecnicas de ingenieria de softwareTecnicas de ingenieria de software
Tecnicas de ingenieria de software'Jorge Martinez
 
Lesson 2 Understanding Linux File System
Lesson 2 Understanding Linux File SystemLesson 2 Understanding Linux File System
Lesson 2 Understanding Linux File SystemSadia Bashir
 
Software management in linux
Software management in linuxSoftware management in linux
Software management in linuxnejadmand
 
Estructura modular
Estructura modularEstructura modular
Estructura modularjuan_180
 

La actualidad más candente (20)

Emulador de ensamblador EMU8086.
Emulador de ensamblador EMU8086.Emulador de ensamblador EMU8086.
Emulador de ensamblador EMU8086.
 
Proceso de arranque de un so
Proceso de arranque de un soProceso de arranque de un so
Proceso de arranque de un so
 
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa CondeProceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
 
Estructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativoEstructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativo
 
02. un ejemplo de requisitos
02. un ejemplo de requisitos02. un ejemplo de requisitos
02. un ejemplo de requisitos
 
Windows server 2008
Windows server 2008Windows server 2008
Windows server 2008
 
Cuadro comparativo hilos
Cuadro comparativo hilosCuadro comparativo hilos
Cuadro comparativo hilos
 
Fecha y hora cmd
Fecha y hora cmdFecha y hora cmd
Fecha y hora cmd
 
Ejercicios if en c#
Ejercicios if en c#Ejercicios if en c#
Ejercicios if en c#
 
Psp (personal software process)
Psp (personal software process)Psp (personal software process)
Psp (personal software process)
 
Consumo de APIs usando el WSO2 API Manager
Consumo de APIs usando el WSO2 API ManagerConsumo de APIs usando el WSO2 API Manager
Consumo de APIs usando el WSO2 API Manager
 
Unidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxUnidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linux
 
Arch linux
Arch  linuxArch  linux
Arch linux
 
Practica de procesos en Linux
Practica de procesos en LinuxPractica de procesos en Linux
Practica de procesos en Linux
 
Introduccion A Los Procesos
Introduccion A Los ProcesosIntroduccion A Los Procesos
Introduccion A Los Procesos
 
Tutorial Git y Smart Git
Tutorial Git y Smart GitTutorial Git y Smart Git
Tutorial Git y Smart Git
 
Tecnicas de ingenieria de software
Tecnicas de ingenieria de softwareTecnicas de ingenieria de software
Tecnicas de ingenieria de software
 
Lesson 2 Understanding Linux File System
Lesson 2 Understanding Linux File SystemLesson 2 Understanding Linux File System
Lesson 2 Understanding Linux File System
 
Software management in linux
Software management in linuxSoftware management in linux
Software management in linux
 
Estructura modular
Estructura modularEstructura modular
Estructura modular
 

Similar a Alta disponibilidad y balanceo de carga en Linux

Funcionamiento con my sql
Funcionamiento con my sqlFuncionamiento con my sql
Funcionamiento con my sqldante123456
 
Virtualizar con microsoft hyper v - por qué ahora parte1
Virtualizar con microsoft hyper v - por qué ahora parte1Virtualizar con microsoft hyper v - por qué ahora parte1
Virtualizar con microsoft hyper v - por qué ahora parte1Pablo Campos
 
Datacenter dinamico parte1
Datacenter dinamico parte1Datacenter dinamico parte1
Datacenter dinamico parte1Pablo Campos
 
Introduccion al switching
Introduccion al switchingIntroduccion al switching
Introduccion al switchingAndres Ldño
 
Interchange CMS - e-commerce
Interchange CMS - e-commerceInterchange CMS - e-commerce
Interchange CMS - e-commerceDavid Ramirez
 
6sos instalacion ipv6_windows_v4_0
6sos instalacion ipv6_windows_v4_06sos instalacion ipv6_windows_v4_0
6sos instalacion ipv6_windows_v4_0Victor Garcia Vara
 
Interchange How-To for Red Hat Linux ES4
Interchange How-To for Red Hat Linux ES4Interchange How-To for Red Hat Linux ES4
Interchange How-To for Red Hat Linux ES4David Ramirez
 
Policyd: Instalacion y configuracion
Policyd: Instalacion y configuracionPolicyd: Instalacion y configuracion
Policyd: Instalacion y configuracioncriscega
 
presentation_3341_1461569643.pdf
presentation_3341_1461569643.pdfpresentation_3341_1461569643.pdf
presentation_3341_1461569643.pdfBismarckBerrios2
 
Nagios para Dummies By pseudor00t
Nagios para Dummies By pseudor00tNagios para Dummies By pseudor00t
Nagios para Dummies By pseudor00tpseudor00t overflow
 
Itranser Virtualizacion (Vmware y Cloud Services)
Itranser  Virtualizacion (Vmware y Cloud Services)Itranser  Virtualizacion (Vmware y Cloud Services)
Itranser Virtualizacion (Vmware y Cloud Services)EuropeSIP Communications SL
 
Mikrotik RouterOs basics v0.3 español
Mikrotik RouterOs basics v0.3 españolMikrotik RouterOs basics v0.3 español
Mikrotik RouterOs basics v0.3 españolRod Hinojosa
 
El servidor perfecto
El servidor perfectoEl servidor perfecto
El servidor perfectobetabeers
 
Sacale El Jugo A La Virtualizacion
Sacale El Jugo A La VirtualizacionSacale El Jugo A La Virtualizacion
Sacale El Jugo A La VirtualizacionPablo Campos
 
Router os basicsv0 3espanol-mikrotik
Router os basicsv0 3espanol-mikrotikRouter os basicsv0 3espanol-mikrotik
Router os basicsv0 3espanol-mikrotikJulians Crystal
 
Mikrotik RouterOs basics v0.3
Mikrotik RouterOs basics v0.3Mikrotik RouterOs basics v0.3
Mikrotik RouterOs basics v0.3Rod Hinojosa
 
Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009
Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009
Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009CA RMDM Latam
 
Switchescatalyst1900
Switchescatalyst1900Switchescatalyst1900
Switchescatalyst19001 2d
 

Similar a Alta disponibilidad y balanceo de carga en Linux (20)

Funcionamiento con my sql
Funcionamiento con my sqlFuncionamiento con my sql
Funcionamiento con my sql
 
Virtualizar con microsoft hyper v - por qué ahora parte1
Virtualizar con microsoft hyper v - por qué ahora parte1Virtualizar con microsoft hyper v - por qué ahora parte1
Virtualizar con microsoft hyper v - por qué ahora parte1
 
Datacenter dinamico parte1
Datacenter dinamico parte1Datacenter dinamico parte1
Datacenter dinamico parte1
 
Guia postfix
Guia postfixGuia postfix
Guia postfix
 
Introduccion al switching
Introduccion al switchingIntroduccion al switching
Introduccion al switching
 
Interchange CMS - e-commerce
Interchange CMS - e-commerceInterchange CMS - e-commerce
Interchange CMS - e-commerce
 
6sos instalacion ipv6_windows_v4_0
6sos instalacion ipv6_windows_v4_06sos instalacion ipv6_windows_v4_0
6sos instalacion ipv6_windows_v4_0
 
Interchange How-To for Red Hat Linux ES4
Interchange How-To for Red Hat Linux ES4Interchange How-To for Red Hat Linux ES4
Interchange How-To for Red Hat Linux ES4
 
Policyd: Instalacion y configuracion
Policyd: Instalacion y configuracionPolicyd: Instalacion y configuracion
Policyd: Instalacion y configuracion
 
presentation_3341_1461569643.pdf
presentation_3341_1461569643.pdfpresentation_3341_1461569643.pdf
presentation_3341_1461569643.pdf
 
Monitorización En OpenSolaris
Monitorización En OpenSolarisMonitorización En OpenSolaris
Monitorización En OpenSolaris
 
Nagios para Dummies By pseudor00t
Nagios para Dummies By pseudor00tNagios para Dummies By pseudor00t
Nagios para Dummies By pseudor00t
 
Itranser Virtualizacion (Vmware y Cloud Services)
Itranser  Virtualizacion (Vmware y Cloud Services)Itranser  Virtualizacion (Vmware y Cloud Services)
Itranser Virtualizacion (Vmware y Cloud Services)
 
Mikrotik RouterOs basics v0.3 español
Mikrotik RouterOs basics v0.3 españolMikrotik RouterOs basics v0.3 español
Mikrotik RouterOs basics v0.3 español
 
El servidor perfecto
El servidor perfectoEl servidor perfecto
El servidor perfecto
 
Sacale El Jugo A La Virtualizacion
Sacale El Jugo A La VirtualizacionSacale El Jugo A La Virtualizacion
Sacale El Jugo A La Virtualizacion
 
Router os basicsv0 3espanol-mikrotik
Router os basicsv0 3espanol-mikrotikRouter os basicsv0 3espanol-mikrotik
Router os basicsv0 3espanol-mikrotik
 
Mikrotik RouterOs basics v0.3
Mikrotik RouterOs basics v0.3Mikrotik RouterOs basics v0.3
Mikrotik RouterOs basics v0.3
 
Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009
Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009
Ca Ar Cserve Backup R125 Ca X Osoft R125 Evento Partners Ca 2009
 
Switchescatalyst1900
Switchescatalyst1900Switchescatalyst1900
Switchescatalyst1900
 

Más de Javier Turégano Molina

Sprinkle your Devops platform with product thinking.pdf
Sprinkle your Devops platform with product thinking.pdfSprinkle your Devops platform with product thinking.pdf
Sprinkle your Devops platform with product thinking.pdfJavier Turégano Molina
 
Building Slack's internal developer platform as a product.pdf
Building Slack's internal developer platform as a product.pdfBuilding Slack's internal developer platform as a product.pdf
Building Slack's internal developer platform as a product.pdfJavier Turégano Molina
 
Scaling the culture of ownership at realestate.com.au
Scaling the culture of ownership at realestate.com.auScaling the culture of ownership at realestate.com.au
Scaling the culture of ownership at realestate.com.auJavier Turégano Molina
 
Introduction to Devops (Melbourne University)
Introduction to Devops (Melbourne University)Introduction to Devops (Melbourne University)
Introduction to Devops (Melbourne University)Javier Turégano Molina
 
Configuration management - A "love" story
Configuration management - A "love" storyConfiguration management - A "love" story
Configuration management - A "love" storyJavier Turégano Molina
 
Experiencias en la administración de sistemas con Software LIbre en empresas TIC
Experiencias en la administración de sistemas con Software LIbre en empresas TICExperiencias en la administración de sistemas con Software LIbre en empresas TIC
Experiencias en la administración de sistemas con Software LIbre en empresas TICJavier Turégano Molina
 

Más de Javier Turégano Molina (20)

Sprinkle your Devops platform with product thinking.pdf
Sprinkle your Devops platform with product thinking.pdfSprinkle your Devops platform with product thinking.pdf
Sprinkle your Devops platform with product thinking.pdf
 
Building Slack's internal developer platform as a product.pdf
Building Slack's internal developer platform as a product.pdfBuilding Slack's internal developer platform as a product.pdf
Building Slack's internal developer platform as a product.pdf
 
Scaling Slack during explosive growth
Scaling Slack during explosive growthScaling Slack during explosive growth
Scaling Slack during explosive growth
 
Scaling the culture of ownership at realestate.com.au
Scaling the culture of ownership at realestate.com.auScaling the culture of ownership at realestate.com.au
Scaling the culture of ownership at realestate.com.au
 
Introduction to Devops (Melbourne University)
Introduction to Devops (Melbourne University)Introduction to Devops (Melbourne University)
Introduction to Devops (Melbourne University)
 
Devopsgirls bootcamp3-next
Devopsgirls bootcamp3-nextDevopsgirls bootcamp3-next
Devopsgirls bootcamp3-next
 
FinOps
FinOpsFinOps
FinOps
 
The devops laboratory - 1 year later
The devops laboratory - 1 year laterThe devops laboratory - 1 year later
The devops laboratory - 1 year later
 
Performance beyond IT
Performance beyond ITPerformance beyond IT
Performance beyond IT
 
Devops101
Devops101Devops101
Devops101
 
The Devops Laboratory
The Devops LaboratoryThe Devops Laboratory
The Devops Laboratory
 
Web performance101
Web performance101Web performance101
Web performance101
 
The Ops dojo
The Ops dojoThe Ops dojo
The Ops dojo
 
Configuration management - A "love" story
Configuration management - A "love" storyConfiguration management - A "love" story
Configuration management - A "love" story
 
Velocity and DevopsDays 2013 takeaways
Velocity and DevopsDays 2013 takeawaysVelocity and DevopsDays 2013 takeaways
Velocity and DevopsDays 2013 takeaways
 
Mcollective introduction
Mcollective introductionMcollective introduction
Mcollective introduction
 
Devopsen tic
Devopsen ticDevopsen tic
Devopsen tic
 
Experiencias en la administración de sistemas con Software LIbre en empresas TIC
Experiencias en la administración de sistemas con Software LIbre en empresas TICExperiencias en la administración de sistemas con Software LIbre en empresas TIC
Experiencias en la administración de sistemas con Software LIbre en empresas TIC
 
Gestionando servidores con Puppet
Gestionando servidores con PuppetGestionando servidores con Puppet
Gestionando servidores con Puppet
 
Saas For Public Administration
Saas For Public AdministrationSaas For Public Administration
Saas For Public Administration
 

Último

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 

Último (15)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 

Alta disponibilidad y balanceo de carga en Linux

  • 1. Alta Disponibilidad y Balanceo de Carga en Linux --------- Cursos GUL Marzo::2008 Javier Turégano Molina
  • 2.
  • 9. Introducción ¿Qué es eso de la alta disponibilidad?
  • 10. Introducción ¿Qué es el balanceo de carga?
  • 11. Introducción ¿Qué tipos de crecimiento hay? VERTICAL HORIZONTAL
  • 12. Introducción ¿Es importante la compartición de datos entre nodos?
  • 13. Introducción ¿Tenemos disponibles todas esas herramientas con Software Libre? -Alta disponibilidad: Heartbeat - Balanceo de carga: IPVS + Keepalived - Almacenamiento compartido: DRBD, JFS, OCFS, iSCSI, AoE
  • 14. Introducción Pero, ¿quién está utilizando esto?
  • 15. Introducción Alguna pega debe de tener ¿no?
  • 16. HEARTBEAT :: HEARTBEAT :: http://www.linux-ha.org/HeartbeatProgram
  • 17. HEARTBEAT Heartbeat es uno de los componentes principales del proyecto Linux-HA (Linux Hight Availability). Multiplataforma: Linux ,FreeBSD y Solaris. Nos ofrece detección de nodos caidos, comunicación y gestión de cluster en un solo proceso.
  • 18. ¿Cómo funciona Heartbeat? Heartbeat utiliza un sistema de latidos. Recomendaciones: - Comunicación dedicada - Comunicación redundante
  • 19.
  • 20. Servidores activos Maestro de almacenamiento
  • 21. Heartbeat (Activo - Pasivo) ALTA DISPONIBILIDAD ACTIVO-PASIVO
  • 22. Heartbeat (Activo - Pasivo) Z Z Z
  • 23. Heartbeat (Activo – Pasivo Multiservicio) ALTA DISPONIBILIDAD ACTIVO-PASIVO MULTISERVICIO
  • 24. Heartbeat (Activo – Pasivo Multiservicio)
  • 25. Heartbeat (Failover) Opciones de recuperación del nodo caido: Autofailback on/off
  • 27. Configuración de Heartbeat Hearbeat se configura a través de dos ficheros de configuración principales: /etc/ha.d/ha.cf /etc/ha.d/haresources
  • 28. Configuración de Heartbeat /etc/ha.d/ha.cf logfile /var/log/ha-log logfacility local0 keepalive 2 warntime 3 deadtime 12 initdead 30 auto_failback off udpport 694 bcast eth1 ping 192.168.17.2 192.168.17.1 node constantinopla node alejandria
  • 29. Configuración de Heartbeat Ejemplo Activo – Pasivo /etc/ha.d/haresources constantinopla 192.168.1.1 apache postfix alejandria Ejemplo Activo – Pasivo Multiservicio /etc/ha.d/haresources constantinopla 192.168.1.1 apache postfix alejandria 192.168.1.2 mysql
  • 30. Hearbeat 2 ¿Qué ventajas nos aporta la versión 2 de hearbeat?
  • 31. Heartbeat 2 Configuration <?xml version=&quot;1.0&quot; ?> <cib> <configuration> <crm_config> <nvpair id=&quot;transition_idle_timeout&quot; name=&quot;transition_idle_timeout&quot; value=&quot;120s&quot;/> <nvpair id=&quot;symmetric_cluster&quot; name=&quot;symmetric_cluster&quot; value=&quot;true&quot;/> <nvpair id=&quot;no_quorum_policy&quot; name=&quot;no_quorum_policy&quot; value=&quot;stop&quot;/> </crm_config> <nodes/>
  • 32. Hearbeat 2 Configuration <resources> <group id=&quot;group_1&quot;> <primitive class=&quot;ocf&quot; id=&quot;IPaddr_1&quot; provider=&quot;heartbeat&quot; type=&quot;IPaddr&quot;> <operations> <op id=&quot;1&quot; interval=&quot;5s&quot; name=&quot;monitor&quot; timeout=&quot;5s&quot;/> </operations> <instance_attributes> <attributes> <nvpair name=&quot;ip&quot; value=&quot;10.0.200.30&quot;/> <nvpair name=&quot;netmask&quot; value=&quot;16&quot;/> <nvpair name=&quot;nic&quot; value=&quot;eth0&quot;/> </attributes> </instance_attributes> </primitive>
  • 33. Hearbeat 2 Configuration <primitive class=&quot;ocf&quot; id=&quot;apache2id&quot; provider=&quot;heartbeat&quot; type=&quot;apache2&quot;> <operations> <op id=&quot;3&quot; name=&quot;monitor&quot; interval=&quot;10s&quot; timeout=&quot;10s&quot;/> </operations> </primitive> </group> </resources> <constraints> <rsc_location id=&quot;rsc_location_group_1&quot; rsc=&quot;group_1&quot;> <rule id=&quot;prefered_location_group_1&quot; score=&quot;100&quot;> <expression attribute=&quot;#uname&quot; operation=&quot;eq&quot; value=&quot;mars&quot;/> </rule> </rsc_location> </constraints> </configuration> <status/> </cib>
  • 34. IPVS :: IPVS (IP Virtual Server) :: http://www.linuxvirtualserver.org/software/ipvs.html IPVS implementa balanceo de carga a nivel de la capa de transporte dentro del kernel de Linux (layer4-switching). IPVS actua como un balanceador de carga. Puede redirigir conexiones a servicios TCP/UDP a los servidores reales, y así hacer parecer que estos servicios de varios servidores como un único servicio virtual para una IP.
  • 35. IPVS
  • 36.
  • 38.
  • 39. IPVS Versiones: La versión estable actual es ipvs 1.2.1 y está incluida de serie en los kernel de linux a partir de la versión 2.6.10. Para los kernels 2.4 también tenemos disponible la versión de ipvs 1.0.12 a partir del kernel 2.4.28. Aparte del módulo del kernel disponemos de una aplicación en línea de comandos para administrarlo: ipvsadm
  • 40. Ejemplo - IPVS Ejemplo: Configuración de un balanceador con IPVS para que distribuya el tráfico que reciba por el puerto 80 a 5 servidores reales.
  • 41. Ejemplo - IPVS Añadimos un servicio virtual para 207.175.44.110: $ ipvsadm -A -t 207.175.44.110:80 -s rr Añadimos los servidores al servicio virtual: $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.1:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.2:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.3:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.4:80 -m $ ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.5:80 -m
  • 42. Ejemplo - IPVS Necesitaremos activar el reenvio ip: $ echo &quot;1&quot; > /proc/sys/net/ipv4/ip_forward Listado de rutas existentes y activas: $ ipvsadm -l Nos va a ser muy útil para paradas programadas y mantemiento.
  • 43. Failover en IPVS ¿Qué ocurre si uno de los equipos del balanceo cae? Para solucionarlo podemos utilizar: Keepalived
  • 44. Keepalived :: KEEPALIVED :: http://www.keepalived.org/
  • 45. Keepalived El objetivo principal de Keepalived es añadir una utilidad fuerte y robusta de recuperación ante fallos en el proyecto de Linux Virtual Server. Está escrito en C y nos provee de un sistema de chequeos multicapa sobre la pila TCP/IP. Nos permite trabajar en 3 capas: 3, 4 y 5/7.
  • 48. Configuración de Keepalived /etc/keepalived/keepalived global_defs { notification_email { [email_address] } notification_email_from balanceador@miservidor.net smtp_server 192.168.18.2 smtp_connect_timeout 30 lvs_id BALANCEADOR1_LVS }
  • 49. Configuración de Keepalived vrrp_instance VI_EXTERNA { state MASTER interface eth0 lvs_sync_daemon_inteface eth0 virtual_router_id 51 priority 150 advert_int 1 smtp_alert authentication { auth_type PASS auth_pass example } virtual_ipaddress { 192.168.17.115} }
  • 50. Configuración de Keepalived virtual_server 192.168.17.115 110 { delay_loop 6 lb_algo wlc lb_kind NAT nat_mask 255.255.255.0 protocol TCP real_server 192.168.5.1 110 { weight 1 TCP_CHECK { connect_timeout 3 connect_port 110 } } real_server 192.168.5.2 110 { weight 1 TCP_CHECK { connect_timeout 3 connect_port 110 } } }
  • 52. Almacenamiento compartido ¿En qué casos necesitamos almacenamiento compartido?
  • 53.
  • 54.
  • 55. GFS2 vs OCFS2 Podemos encontrar una extensa comparativa de sistemas de ficheros en: http://en.wikipedia.org/wiki/Comparison_of_file_systems
  • 56. DRBD :: DRBD :: http://www.drbd.org/ Drbd es un dispositivo de bloques que está diseñado para construir &quot;clusters&quot; de alta disponibilidad. Se realiza por medio de una copia idéntica de todo un dispositivo de bloques através de una red (dedicada). Lo podemos ver como un RAID-1 en red.
  • 57. DRBD 8 Ventajas de DRBD Version 8
  • 58. Casos de Exito Veamos algunos casos de éxito.
  • 59. Preguntas y Contacto ¿ ? www.turegano.net www.twitter.com/setoide Licencia Creative Commons Reconocimiento 2.5 de España