{"id":306,"date":"2019-09-03T21:05:04","date_gmt":"2019-09-03T21:05:04","guid":{"rendered":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/?page_id=306"},"modified":"2024-07-25T11:50:22","modified_gmt":"2024-07-25T11:50:22","slug":"hadoop-instalar-hdp-en-un-cluster-sin-conexion","status":"publish","type":"page","link":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/hadoop-instalar-hdp-en-un-cluster-sin-conexion\/","title":{"rendered":"[Hadoop] Instalar HDP en un cluster sin conexi\u00f3n"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/miro.medium.com\/max\/848\/0*sQUi1nwl6LjhbfxK.png\" alt=\"\"\/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\">[Hadoop] Instalar HDP en un cluster sin conexi\u00c3\u0083\u00c2\u00b3n<\/h2>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\"><strong>Hadoop<\/strong>&#8230; s\u00ed, ya s\u00e9 lo que seguramente estas pensando: <em>\u00bfporque instalar Hadoop en un cluster, si tenemos la posibilidad de utilizar la nube de Amazon?, todos los problemas con el mantenimiento, todos los problemas con la integraci\u00f3n de las herramientas<\/em>&#8230; Uff, realmente yo pensar\u00ed\u00ada lo mismo, Hadoop es un pantano en el que muy pocos les gusta meterse&#8230; y si te digo la verdad, si pudiera volver atr\u00e1s&#8230; pues mira, volver\u00ed\u00ada encantado.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Obviamente, no hay nada mejor que luchar en las trincheras para entender c\u00f3mo funcionan todos los sistema, leerte la arquitectura, darte leches y leches con los que otros han creado, leerte el c\u00f3digo [o no], ver esquemas de arquitecturas [y comprobar que despu\u00e9s no es lo que hay en el c\u00f3digo (aqu\u00ed puedo decir lo que un compa\u00f1ero de la vieja escuela me dijo una vez: Da igual las palabras, los diagramas y los esquemas, lo \u00fanico que es real es el c\u00f3digo fuente)], eso es realmente lo que te hace crecer como programador, arquitecto, y t\u00e9cnico realmente.\u00a0<br><\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">En fin, me voy por las ramas.&nbsp;<br><\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Instalar Hadoop es una tarea \u00c3\u0083\u00c2\u00a1rdua, aunque Hortonworks [en otro post explicar\u00e9 porqu\u00e9 elegimos Hortonworks y no Cloudera que estaba de moda en aquel momento, os puedo adelantar que el se\u00f1or $ estuvo cerca] nos indicara en aquel momento que era tan f\u00e1cil como &#8220;play and go&#8221;&#8230; ilusos [o ilusos nosotros]. Todo esto comenz\u00f3 cuando un cliente quer\u00eda integrar un sistema de datos, y que desarrollaramos un ETL que permitiera integrar todas las partes de su sistema de recolecci\u00f3n de datos, con grandes vol\u00famenes y quer\u00eda procesamientos de estos en tiempo real. Genial, dijimos, podemos utilizar AWS y as\u00ed ellos a\u00f1adieron: &#8220;ah, y los servidores donde se van a instalar no queremos que tengan internet, todo ha de quedar en casa&#8221;\u00c3\u00a2\u00c2\u0080\u00c2&#8221;\u009d&#8230;\u00a0<br><\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">As\u00ed que imagina lo que pensamos, pues nada instalamos Hadoop y arreando. Pero no acaba ah\u00ed la cosa: \u201cah, y esos servidores jam\u00e1s podr\u00e1n tener acceso afuera, as\u00ed que nos d\u00e1is un instalable y lo instalamos\u201d<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Ante esta situaci\u00f3n, barajamos tres situaciones.<br><\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">1.Desarrollar un sistema con scripts de python, scala y node para integrar todo.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">2. Instalar Hadoop en servidores sin conexi\u00f3n a internet.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">3. Salimos corriendo por la puerta y nos bajamos a tomarnos una cerveza en alg\u00fan bar de M\u00e1laga.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Evaluando ambos sistemas lo vimos r\u00e1pido. La tercera opci\u00f3n. XD<br><\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Ahora no, en serio, aunque la tercera opci\u00f3n fue la que elegimos en primer lugar, al final decidimos que instalar Hadoop en los servidores era lo mejor.<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">As\u00ed que buscamos por internet y encontramos esto <a href=\"https:\/\/docs.cloudera.com\/HDPDocuments\/Ambari-2.2.0.0\/bk_Installing_HDP_AMB\/content\/_obtaining_the_repositories.html\">[<strong>Automated install with Ambari<\/strong>]<\/a>. Por lo que que podr\u00edamos instalar HDP dentro de un cluster con servers que est\u00e9n en una zona militarizada. Mola.<br><\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">As\u00ed que listamos una serie de pasos que fuimos haciendo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 1. Obtener los repositorios<\/h2>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Nosotros utilizamos Ubuntu 14, para ello, tuvimos que descargarnos el <a href=\"http:\/\/public-repo-1.hortonworks.com\/ambari\/ubuntu16\/2.x\/updates\/2.5.2.0\/ambari-2.5.2.0-ubuntu16.tar.gz\"><strong>tarball de ambari<\/strong><\/a><strong>,<\/strong> y tambi\u00e9n el <a href=\"http:\/\/public-repo-1.hortonworks.com\/HDP-UTILS-1.1.0.21\/repos\/ubuntu16\/HDP-UTILS-1.1.0.21-ubuntu16.tar.gz\"><strong>HDP-utils<\/strong><\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paso 2. Preparar un repositorio local en la m\u00c3\u0083\u00c2\u00a1quina<\/h2>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">En este paso, os dejo todos los pasos que dimos para instalar el repositorio en la m\u00e1quina.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Seleccionar un servidor [mirror server] que tenga el sistema operativo del que hemos descargado el repo.<\/li>\n\n\n\n<li>Nos aseguramos que todos los servidores pueden conectarse con ese servidor que ser\u00e1 el mirror server.<\/li>\n\n\n\n<li>Hay que instalar el apache o alg\u00fan http server.<\/li>\n\n\n\n<li>Asegurarse que el mirror server tiene el apt-get manager instalado.<\/li>\n\n\n\n<li>Crear un HTTP server [aseg\u00farate que no hay ning\u00fan tipo de firewall activado en el mirror server.<\/li>\n\n\n\n<li>Ejecutar: mkdir -p \/var\/www\/html<\/li>\n\n\n\n<li>Copiar todos los tarballs en el directorio del servidor web.<\/li>\n\n\n\n<li>Ejecutar: cd \/var\/www\/html<\/li>\n\n\n\n<li>Untar los tarballs.<\/li>\n\n\n\n<li>Deber\u00e1n de estar de la siguiente forma [es un ejemplo]:\n<ol class=\"wp-block-list\">\n<li>\/var\/www\/html\/Ambari-2.5.2.0\/ubuntu16<\/li>\n\n\n\n<li>\/var\/www\/html\/HDP\/HDP\/ubuntu16\/2.x\/updates\/<a href=\"http:\/\/127.0.0.1\/HDP\/HDP\/ubuntu16\/2.x\/updates\/2.6.2.14\">2.6.2.14<\/a><\/li>\n\n\n\n<li>\/var\/www\/html\/HDP\/<a href=\"http:\/\/127.0.0.1\/HDP\/HDP-UTILS-1.1.0.21\/repos\/ubuntu16\">HDP-UTILS-1.1.0.21<\/a>\/repos\/ubuntu16<\/li>\n<\/ol>\n<\/li>\n\n\n\n<li>Aseg\u00farate que puedes entrar en estos directorios.<\/li>\n<\/ol>\n\n\n\n<p><strong>URLs for a Local Repository &#8211; No Internet Access<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Repository<\/strong><\/td><td><strong>Base URL<\/strong><\/td><\/tr><tr><td>Ambari Base URL<\/td><td>http:\/\/&lt;web.server&gt;\/ambari-<a href=\"http:\/\/public-repo-1.hortonworks.com\/ambari\/ubuntu16\/2.x\/updates\/2.5.2.0\/ambari-2.5.2.0-ubuntu16.tar.gz\">2.5.2.0<\/a>\/&lt;OS&gt;<\/td><\/tr><tr><td>HDP Base URL<\/td><td>http:\/\/&lt;web.server&gt;\/hdp\/HDP\/&lt;OS&gt;\/2.x\/updates\/&lt;latest.version&gt;<\/td><\/tr><tr><td>HDP-UTILS Base URL<\/td><td>http:\/\/&lt;web.server&gt;\/hdp\/HDP-UTILS-&lt;version&gt;\/repos\/&lt;OS&gt;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Descargarse el ambari.repo [en el caso de ubuntu es ambari.list] desde el respositorio p\u00fablico<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttp:\/\/public-repo-1.hortonworks.com\/ambari\/ubuntu16\/2.x\/updates\/2.5.2.0\/ambari.list\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttp:\/\/public-repo-1.hortonworks.com\/HDP\/ubuntu16\/2.x\/updates\/2.6.2.14\/hdp.list\n<\/div><\/figure>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Editar el ambari.list y el hdp.list,\u00a0<\/li>\n<\/ol>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p> <br>Ambari.list:  <br>#VERSION_NUMBER=2.5.2.0-298  <br>deb <a href=\"http:\/\/127.0.0.1\/Ambari-2.5.2.0\/ubuntu16\/\">http:\/\/localhost\/Ambari-2.5.2.0\/ubuntu16\/<\/a> Ambari main <\/p>\n\n\n\n<p> hdp.list <\/p>\n\n\n\n<p><br>#VERSION_NUMBER=2.6.2.14-5  <br>#deb <a href=\"http:\/\/127.0.0.1\/HDP\/HDP\/ubuntu16\/2.x\/updates\/2.6.2.14\">http:\/\/localhost\/HDP\/HDP\/ubuntu16\/2.x\/updates\/2.6.2.14<\/a> HDP main  <br>deb <a href=\"http:\/\/127.0.0.1\/HDP\/HDP\/ubuntu16\/2.x\/updates\/2.6.2.14\">http:\/\/localhost\/HDP\/HDP\/ubuntu16\/<\/a> HDP main  <br>deb <a href=\"http:\/\/127.0.0.1\/HDP\/HDP-UTILS-1.1.0.21\/repos\/ubuntu16\">http:\/\/localhost\/HDP\/HDP-UTILS-1.1.0.21\/repos\/ubuntu16<\/a>\/dists HDP-UTILS main <\/p>\n\n\n\n<p><\/p>\n<\/blockquote>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Pon el repo en la m\u00e1quina que va a utilizar el Ambari Server en este lugar: &#8220;\/etc\/apt\/sources.list.d\/ambari.list&#8221; &#8220;\/etc\/apt\/sources.list.d\/hdp.list&#8221;<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\">\n<li>El \/etc\/apt\/sources.list se pasa a \/etc\/apt\/old.source.list\u00a0<\/li>\n\n\n\n<li>Para actualizar la base de datos, hay que hacer apt-get update.<\/li>\n\n\n\n<li>Creo que haciendo: add-apt-repository ppa:localhost y apt-get update<\/li>\n\n\n\n<li>wget <a href=\"http:\/\/public-repo-1.hortonworks.com\/ARTIFACTS\/jdk-8u112.linux-x64.tar.gz\">http:\/\/public-repo-1.hortonworks.com\/ARTIFACTS\/jdk-8u112-linux-x64.tar.gz<\/a> a \/var\/lib\/ambari-server\/resources\/jdk-8u112-linux-x64.tar.gz<\/li>\n\n\n\n<li>wget <a href=\"http:\/\/public-repo-1.hortonworks.com\/ARTIFACTS\/jce_policy-8.zip\">http:\/\/public-repo-1.hortonworks.com\/ARTIFACTS\/jce_policy-8.zip<\/a> a \/var\/lib\/ambari-server\/resources\/jce_policy-8.zip<\/li>\n\n\n\n<li>apt-get install ambari-server<\/li>\n\n\n\n<li>ambari-server setup<\/li>\n\n\n\n<li>ambari-server start<\/li>\n\n\n\n<li>En un navegador ir a http:\/\/127.0.0.1:8080<\/li>\n\n\n\n<li>admin\/admin<\/li>\n\n\n\n<li>Click en Ambari Cluster Install Wizard.<\/li>\n\n\n\n<li>Seleccionar HDP 2.5.2<\/li>\n\n\n\n<li>Seleccionar Local Repository,\u00a0 quitar todas las versiones excepto Ubuntu16 y HDP 2.5<\/li>\n\n\n\n<li>Copiar ambari.list base url e insertarlo en la web.<\/li>\n\n\n\n<li>Copiar hdp.list base url e insertarlo en la web [hdp-utils]<\/li>\n\n\n\n<li>Crear un enlace simb\u00c3\u0083\u00c2\u00b3lico a HDP:\u00a0<\/li>\n<\/ol>\n\n\n\n<p>ln -s \/var\/www\/html\/HDP\/HDP\/ubuntu16\/dists\/HDP HDP<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Copiar en los target hosts con el hostname<\/li>\n\n\n\n<li>Crear una llave p\u00fablica: ssh-keygen -t rsa<\/li>\n\n\n\n<li>Aseg\u00farate que ssh est\u00e1 instalado: &#8220;service status ssh&#8221; &#8220;apt-get -s install openssh-server&#8221;<\/li>\n<\/ol>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Y ya est\u00e1. Sencillo, solamente son dos pasos, uno con una sola tarea y otra con 33 pero en fin, es lo que hay. Para m\u00e1s documentaci\u00f3n, consulta la web de Hortonwork:<\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\"><a href=\"https:\/\/docs.cloudera.com\/HDPDocuments\/Ambari-2.2.0.0\/bk_Installing_HDP_AMB\/content\/_using_a_local_repository.html\"><strong>https:\/\/docs.cloudera.com\/HDPDocuments\/Ambari-2.2.0.0\/bk_Installing_HDP_AMB\/content\/_using_a_local_repository.html<\/strong><\/a><strong> <\/strong>para instalar el HDP desde un repositorio local.  <\/p>\n\n\n\n<p class=\"has-very-dark-gray-color has-text-color\" style=\"font-size:18px\">Si quieres hacerme un comentario, no dudes en seguirme o hacerme un comentario referenci\u00e1ndome a\u00a0<a href=\"https:\/\/twitter.com\/gatreyu\"><strong>Rafael Piernagorda<\/strong><\/a>\u00a0en Twitter o a\u00a0<a href=\"https:\/\/www.linkedin.com\/in\/rafaeldavidpiernagorda\/\"><strong>Rafael Piernagorda<\/strong><\/a>\u00a0en Linkedin.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00bfTe gustar\u00eda saber c\u00f3mo podr\u00eda encajar Hadoop con tu proyecto?<\/h3>\n\n\n\n<div class=\"wp-block-contact-form-7-contact-form-selector\">\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f17-o1\" lang=\"en-US\" dir=\"ltr\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/tusociotecnologico\/wp-json\/wp\/v2\/pages\/306#wpcf7-f17-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" novalidate=\"novalidate\" data-status=\"init\">\n<div style=\"display: none;\">\n<input type=\"hidden\" name=\"_wpcf7\" value=\"17\" \/>\n<input type=\"hidden\" name=\"_wpcf7_version\" value=\"5.9.8\" \/>\n<input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/>\n<input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f17-o1\" \/>\n<input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/>\n<input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/>\n<input type=\"hidden\" name=\"_wpcf7_recaptcha_response\" value=\"\" \/>\n<\/div>\n<p><label> Your Name (required)<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required\" aria-required=\"true\" aria-invalid=\"false\" value=\"\" type=\"text\" name=\"your-name\" \/><\/span> <\/label>\n<\/p>\n<p><label> Your Email (required)<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email\" aria-required=\"true\" aria-invalid=\"false\" value=\"\" type=\"email\" name=\"your-email\" \/><\/span> <\/label>\n<\/p>\n<p><label> Subject<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-subject\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text\" aria-invalid=\"false\" value=\"\" type=\"text\" name=\"your-subject\" \/><\/span> <\/label>\n<\/p>\n<p><label> Your Message<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-message\"><textarea cols=\"40\" rows=\"10\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea\" aria-invalid=\"false\" name=\"your-message\"><\/textarea><\/span> <\/label>\n<\/p>\n<p><input class=\"wpcf7-form-control wpcf7-submit has-spinner\" type=\"submit\" value=\"Send\" \/>\n<\/p><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>[Hadoop] Instalar HDP en un cluster sin conexi\u00c3\u0083\u00c2\u00b3n Hadoop&#8230; s\u00ed, ya s\u00e9 lo que seguramente estas pensando: \u00bfporque instalar Hadoop en un cluster, si tenemos la posibilidad de utilizar la &#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-306","page","type-page","status-publish","hentry"],"featured_image_urls_v2":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","onepress-blog-small":"","onepress-small":"","onepress-medium":""},"post_excerpt_stackable_v2":"<p>[Hadoop] Instalar HDP en un cluster sin conexi\u00c3\u0083\u00c2\u00b3n Hadoop&#8230; s\u00ed, ya s\u00e9 lo que seguramente estas pensando: \u00bfporque instalar Hadoop en un cluster, si tenemos la posibilidad de utilizar la nube de Amazon?, todos los problemas con el mantenimiento, todos los problemas con la integraci\u00f3n de las herramientas&#8230; Uff, realmente yo pensar\u00ed\u00ada lo mismo, Hadoop es un pantano en el que muy pocos les gusta meterse&#8230; y si te digo la verdad, si pudiera volver atr\u00e1s&#8230; pues mira, volver\u00ed\u00ada encantado. Obviamente, no hay nada mejor que luchar en las trincheras para entender c\u00f3mo funcionan todos los sistema, leerte la arquitectura,&hellip;<\/p>\n","category_list_v2":"","author_info_v2":{"name":"Digital Drimz","url":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/author\/digitaldrimz\/"},"comments_num_v2":"0 comments","_links":{"self":[{"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/pages\/306"}],"collection":[{"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/comments?post=306"}],"version-history":[{"count":37,"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/pages\/306\/revisions"}],"predecessor-version":[{"id":359,"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/pages\/306\/revisions\/359"}],"wp:attachment":[{"href":"https:\/\/www.digitaldrimz.com\/tusociotecnologico\/wp-json\/wp\/v2\/media?parent=306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}