Alta disponibilidad-postgres

2,849 views
2,780 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,849
On SlideShare
0
From Embeds
0
Number of Embeds
1,345
Actions
Shares
0
Downloads
58
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Alta disponibilidad-postgres

  1. 1. Alta Disponibilidad con PostgreSQL Lenin Hernández Junio 2012    @leninmhs 2012
  2. 2. ¿Por que estamos aqui?  Divulgar el Software Libre  Profundizar el uso de Software Libre  Potenciar las capacidades de desarrollo tecnológico  Aprender, compartir, disfrutar, debatir  Autodesarrollo, autodeterminación.  Conocimiento Libre  4 Libertades   
  3. 3. Gracias a Universidad Nacional Experimental Romulo Gallegos“Un viaje de mil leguas comienza con un primer paso”     @leninmhs 2012
  4. 4. ¿Por qué PostgreSQL?  #aptitude install postgres postgresql­8.4  Proyectos de interfaces de administración WEB y por GUI  Proyectos para datos geográficos/geométricos (PostGIS)   Proyectos de uso de indices avanzados (OpenFTS)  Proyectos para soportar diversos lenguajes de programación como  lenguajes de funciones internas del motor (pl/Php, pl/Java, pl/Python,  pl/Perl, pl/Tcl,pl/Javascript, pl/C etc.)  Licencia BSD, la mas permisiva de todas.  Corre en casi todos los principales sistemas operativos : (Linux, Unix,  Solaris, BSDs, Mac OS, Beos)  Soporte para los lenguajes mas populares del medio: PHP, C, C++, Java,  Perl, Python, Ruby,etc.  Máximo de base de datos : ILIMITADO     Máximo de tamaño de tabla : 32TB
  5. 5. Y la competencia???    Imagen por: http://www.exprimetuhost.com/2010/10/mysql-o-postgresql/mysql-vs-postgresql/ @leninmhs 2012
  6. 6. En algún momento...    Imagen por: http://www.seofaction.com/postgres @leninmhs 2012
  7. 7. Actualmente...    Imagen por: http://stefano.salvatori.cl/blog/2007/09/21/postgresql-vs-mysql-2/ @leninmhs 2012
  8. 8. Cluster Alta Disponibilidad Nos enfocamos en la disponiblidad del servicio. Lo medimos en tiempos en linea y tiempos fuera de linea Lo medimos en tiempos en linea y tiempos fuera de linea   
  9. 9. Alta Disponibilidad (High Availability) <=>Continuidad operativa del servicio. 24 - 7 Por lo general, consiste en ● Servidor maestro (s) ● Servidor esclavo (s) ● Software para detectar la falta de un maestro ● Software para promover un esclavo a maestro ● Software o hardware para garantizar la coherencia de datos ● entre el maestro (s) y el esclavo (s) ● Software para restaurar el servicio luego de caída o falla ¿Que NO es alta disponibilidad en Bases de Datos?●   Una forma de aumentar el rendimiento  ● Una manera de simplificar tu trabajo, la red, el mantenimiento● Fácil de implementar @leninmhs 2012
  10. 10. Cuando hablamos de alta disponibilidad hablamos de: Replicación Balanceo de Cargas (Load Balance) Tolerancia a fallos (FailOver) Conexiones Agrupadas (Pool Connection) Consultas Distribuidas (Parallel Query) Gestión de Divergencias    @leninmhs 2012
  11. 11. Replicación    Extraido de: http://py-arahat.blogspot.com/2011/11/alta-disponibilidad-con-postgresql.html
  12. 12.     Extraido de: http://py-arahat.blogspot.com/2011/11/alta-disponibilidad-con-postgresql.html
  13. 13.     Extraido de: http://py-arahat.blogspot.com/2011/11/alta-disponibilidad-con-postgresql.html
  14. 14. Divergencia    Extraido de: http://py-arahat.blogspot.com/2011/11/alta-disponibilidad-con-postgresql.html
  15. 15. Tolerancia a Fallos    Extraido de: http://py-arahat.blogspot.com/2011/11/alta-disponibilidad-con-postgresql.html
  16. 16. Replicación Síncrona Se realiza tan pronto como se realiza una transacción la misma se ejecuta en todos los nodos. Esto es muy costoso en términos de latencia y la cantidad de mensajes que se enviarán, pero evita la divergencia    Extraido de: http://py-arahat.blogspot.com/2011/11/alta-disponibilidad-con-postgresql.html
  17. 17. Replicación AsíncronaLos nodos del cluster pueden aplicar los datos detransacciones en cualquier momento posterior, por lo quelos nodos pueden servir diferentes simultáneamente distintadata.    
  18. 18. Soluciones Alta DisponibilidadPostgreSQL 9 Slony RubyRep Londiste MammothPgPool-IIPgPool Bucardo PgCluster Solución mágica y esotérica ● Scripts automaticos, semiautomaticos ● Restaurar, replicar etc.. a partir de logs     @leninmhs 2012
  19. 19. Consideraciones a tomar en cuentaal elegir una solución: Software Libre. 4 Libertades Linux,FreeBSD,Solaris y xUnix PostgreSQL y Solución versión estable Comunidad y Desarrollo activo Sinergia [Solución - Organización]     @leninmhs 2012
  20. 20. Instalar & Implementar alguna de las soluciones: Camino 1 Camino 2 aptitude search tu_solucion Camino largo, doloroso y recomendado aptitude install tu_solucion para entornos en producción Configuración, adaptación,pruebas etc.. Descargar Descomprimir PD: aptitude solo disponible en: Ingresar directorio y derivados... ./configure make make install Configuración, adaptación,pruebas etc.. If pruebas = ok anotar_chuleta(); compartir_internet(); Else intenter_nuevamente();   probar_otra_herramienta();   @leninmhs 2012
  21. 21. PGpool-IIEs una capa intermedia de software(middleware),que nos provee de unainterfaz de conexión con uno o masnodos de PostgreSQL. Nuestros clientesse conectaran en realidad al PgPool yeste a su vez repartirá el trabajo a losNodos según se haya configurado.Es una de las soluciones mas completade alta disponibilidad en software libre.   
  22. 22. pgpool-II Una imagen vale más que mil palabras Q Q Q Q R E R R E R Clientes R E R R E R y y y y IP Puerto Usuario PgPool-II Contraseña Se comporta como cliente y servidor Q Q Q R R R E E E R R R y y y IP IP IP Puerto Puerto Puerto Usuario Usuario Usuario Contraseña Contraseña Contraseña nodo1 nodo2 nodo3    Pool de servidores PostgreSQL @leninmhs 2012
  23. 23. PgPoolAdmin Herramienta de Administración de PgPool de interfaz web, similar a PhpPgAdmin, escrita en PHP que nos permite administrar, configurar, monitoriar y aplicar algunas acciones sobre nuestra instalación de PgPool ó nuestros nodos.    @leninmhs 2012
  24. 24. Dudas, Preguntas, Dudas, Preguntas, Sugerencias??? Sugerencias???    @leninmhs 2012
  25. 25. preguntas http://tubasededatoslibre.org http://leninmhs.wordpress.com/2012/05/09/alta-disponibilidad-pgpool/ http://wiki.postgresql.org/wiki/Clustering http://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling http://bucardo.org    @leninmhs 2012
  26. 26. Gracias Totales... Blog: leninmhs.wordpress.com Correo: leninmhs@gmail.com Twitter: @leninmhs www.tubasededatoslibre.org Twitter: @tu_bd_libre Facebook: facebook.com/TuBaseDeDatosLibre    @leninmhs 2012

×