{"id":2659,"date":"2015-03-10T21:10:27","date_gmt":"2015-03-11T01:10:27","guid":{"rendered":"http:\/\/arielantigua.com\/weblog\/?p=2659"},"modified":"2015-03-10T21:10:27","modified_gmt":"2015-03-11T01:10:27","slug":"freeloadbalancer-org-kemp-loadmaster-para-el-homelab","status":"publish","type":"post","link":"https:\/\/arielantigua.com\/weblog\/2015\/03\/freeloadbalancer-org-kemp-loadmaster-para-el-homelab\/","title":{"rendered":"FreeLoadBalancer.org \u2013 Kemp LoadMaster para el HomeLab."},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/kemplogo.png\" alt=\"\" width=\"201\" height=\"76\" \/><\/p>\n<p>KEMP es un proveedor de soluciones para alta disponibilidad y balanceo de carga (LoadMaster), mi primer contacto con el producto fue buscando una soluci\u00f3n tipo empresarial para reemplazar Ngnix y\/o Apache (mod_proxy). Uno de los primeros escenarios donde le\u00ed sobre el despliegue de las soluciones de LoadMaster (LVM100 para ser exacto) fue con vSphere Web Client y Exchange Server.<\/p>\n<p>Cuando fue mi turno de desplegar LoadMaster lo hice usando ESXi como plataforma y en ese momento use dos servidores f\u00edsicos cada uno con una VM de LoadMaster.<\/p>\n<p>Para ese momento KEMP no ten\u00eda una versi\u00f3n gratuita como lo hace ahora y por esta raz\u00f3n no pod\u00eda jugar con la soluci\u00f3n en el homelab, ahora todo cambia, hace varios d\u00edas KEMP anuncio la versi\u00f3n gratuita que tanto he esperado e inmediatamente un VLM y estoy probando como configurar la plataforma y reemplazar un ZenLoadBalancer que tengo corriendo desde hace un tiempo y es el usado para publicar muchos de los servicios que uso de prueba o uso personal.<\/p>\n<p>La configuraci\u00f3n tradicional de un LoadMaster es para tener alta disponibilidad de un aplicativo web, digamos un Lync, Exchange o VMware Horizon View. En mi caso la idea de usar LoadMaster (como lo ha sido con ZenLoadBalancer) es poder publicar todo lo que necesite ya sea HTTP(80) o HTTPS(443) usando una \u00fanica direcci\u00f3n IP (o varias si es necesario). Me gustar\u00eda aclarar que la soluci\u00f3n ZenLoadBalancer no me ha fallado y ha cubierto la necesidad que ten\u00eda, entonces porque cambiarlo?<\/p>\n<p>La decisi\u00f3n podr\u00eda decirse que es personal ya que pienso, es m\u00e1s probable que termine administrando un LoadMaster a que me encuentre o que decida instalar ZenLoadBalancer en un ambiente empresarial.<\/p>\n<p>Las funcionalidades, si miramos en <a href=\"http:\/\/freeloadbalancer.com\">http:\/\/freeloadbalancer.com<\/a>. Podemos ver que la versi\u00f3n gratuita nos trae Layer4-7 Load Balancer, Reverse Proxy, Edge Security, WAF (Web Application Firewall) y GSLB (Global Server Load Balanceing), para ser versi\u00f3n gratuita tiene buena pinta, la \u00fanica funcionalidad que podr\u00eda hacer falta es HA pero como esto esta apuntado a peque\u00f1as empresas o homelab como es mi caso puede que sea la raz\u00f3n de que no est\u00e9 disponible HA.<\/p>\n<p>Para m\u00e1s informaci\u00f3n de las diferencias se puede ver directamente en <a href=\"http:\/\/freeloadbalancer.com\">http:\/\/freeloadbalancer.com<\/a><\/p>\n<p>La raz\u00f3n de este post es tratar de documentar los pasos y configuraciones que necesite para poder usar LoadMaster como un Reverse Proxy que es actualmente como uso ZenLoadMaster en mi homelab, una diferencia que aplica en mi homelab es que dos de los host ESXi est\u00e1n en un datacenter a unas cuantas miles de millas de mi localidad y me conecto con ellos a trav\u00e9s de una VPN tipo mesh (Tinc VPN). Para LoadMaster los Real Servers no est\u00e1n en la misma subred e inicialmente falla al ser agregados en los Virtual Servers si no hacemos los cambios necesarios, esto podr\u00eda aplicar si los VirtualServers est\u00e1n en 192.168.100.0\/24, los RealServers est\u00e1n en 192.168.200.0\/24 y el LoadMaster est\u00e1 en modo One-ARM.<\/p>\n<p>Aqu\u00ed un peque\u00f1o diagrama de red donde se ve un VLM en un lado de la red:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/aaNetworksMiniDiag.jpg\" alt=\"\" width=\"997\" height=\"755\" \/><\/p>\n<p>Lo primero que debemos hacer es definir algunos Content Rules.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft\" src=\" https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen1.png\" alt=\"\" width=\"185\" height=\"76\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>En mi caso quedo algo asi:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen2.png\" alt=\"\" width=\"1199\" height=\"173\" \/><\/p>\n<p>Aqu\u00ed se puede ver mientras modifico una regla llamada <strong>guacamole<\/strong>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen3.png\" alt=\"\" width=\"557\" height=\"301\" \/><\/p>\n<p>Procedemos a agregar un Virtual Server, en mi configuraci\u00f3n inicialmente tendr\u00e9 un Virtual Server para el puerto 80 y otro para el puerto 443.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen4.png\" alt=\"\" width=\"491\" height=\"235\" \/><\/p>\n<p>En Advanced Properties habilitamos Content Switching.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen5.png\" alt=\"\" width=\"699\" height=\"132\" \/><\/p>\n<p>Ahora toca crear los SubVS que queramos o necesitemos. Actualmente solo tengo 2 en la parte de HTTP:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen6.png\" alt=\"\" width=\"1316\" height=\"149\" \/><\/p>\n<p>Como se puede ver en la imagen anterior, ya estos 2 SubVS tienen Content Rules habilitadas y seleccionadas, si hacemos click en el numero podremos remover o agregar otro Content Rule.<\/p>\n<p><a href=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen7.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/dl.dropboxusercontent.com\/u\/9924670\/blogposts\/KEMP\/ReverseProxy\/imagen7.png\" alt=\"\" width=\"962\" height=\"60\" \/><\/a><\/p>\n<p>Con relaci\u00f3n a los Real Servers, estos ser\u00e1n agregados en cada SubVSs, cuando usamos Content Rule los Real Servers podr\u00edan ser el mismo ya que el Content Rule se encargar\u00eda de definir el Host Header y re-direccionar el tr\u00e1fico a donde sea necesario.<\/p>\n<p>Lo importante es tener en cuenta los Content Rule, all\u00ed es donde decidiremos cuales dominios ser\u00edan los aceptados, esto es parecido a los Virtual Name de Apache.<\/p>\n<p>Otra configuraci\u00f3n que tuve que aplicar en mi caso fue habilitar fue la de Eable Non-Local Real Servers que se encuentra en <strong>System Configuration &gt; Miscellaneous Options &gt; Network Options<\/strong>., adem\u00e1s de esto los Virtual Servers no pueden tener habilitado <strong>Transparency.<\/strong><\/p>\n<p>Aqu\u00ed la documentaci\u00f3n oficial -&gt; <a href=\"https:\/\/support.kemptechnologies.com\/hc\/en-us\/articles\/201849033-How-do-I-add-remote-Real-Servers\">https:\/\/support.kemptechnologies.com\/hc\/en-us\/articles\/201849033-How-do-I-add-remote-Real-Servers<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>KEMP es un proveedor de soluciones para alta disponibilidad y balanceo de carga (LoadMaster), mi primer contacto con el producto fue buscando una soluci\u00f3n tipo empresarial para reemplazar Ngnix y\/o Apache (mod_proxy). Uno de los primeros escenarios donde le\u00ed sobre el despliegue de las soluciones de LoadMaster (LVM100 para ser exacto) fue con vSphere Web [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,34],"tags":[73,117],"class_list":["post-2659","post","type-post","status-publish","format-standard","hentry","category-general","category-networking","tag-homelab","tag-kemp-lvm"],"_links":{"self":[{"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/posts\/2659","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/comments?post=2659"}],"version-history":[{"count":0,"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/posts\/2659\/revisions"}],"wp:attachment":[{"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/media?parent=2659"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/categories?post=2659"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arielantigua.com\/weblog\/wp-json\/wp\/v2\/tags?post=2659"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}