Importante:

IBM Cloud Pak® for Data La versión 4.8 alcanzará el fin de soporte (EOS) el 31 de julio de 2025. Para más información, consulte el anuncio de interrupción del servicio para la versión IBM Cloud Pak for Data 4.X.
Actualice a IBM Software Hub Versión 5.1 antes de que IBM Cloud Pak for Data Versión 4.8 alcance el fin de soporte. Para obtener más información, consulte Actualización de IBM Cloud Pak for Data Versión 4.8 a IBM Software Hub Versión 5.1.

Instalación de Execution Engine for Apache Hadoop en clústeres de Apache Hadoop

Para integrar Watson Studio con el clúster Apache Hadoop remoto, instale y configure el servicio Execution Engine for Apache Hadoop en el clúster Hadoop .

Antes de empezar

Debe completar los siguientes requisitos previos:

  1. Instale Execution Engine en Cloud Pak for Data y en el clúster de Hadoop . Para obtener más información sobre la instalación de Execution Engine for Apache Hadoop en Cloud Pak for Data, consulte Instalación de Execution Engine for Apache Hadoop.

  2. Revise y confirme que cumple los requisitos del sistema y que conoce las versiones y plataformas de Hadoop soportadas antes de instalar el servicio.

Requisitos del sistema

Debe asegurarse de que se cumplen los siguientes requisitos del sistema antes de instalar los clústeres de Execution Engine for Apache Hadoop .

Requisitos de hardware de nodo Edge
  • 8 GB de memoria
  • 2 núcleos de CPU
  • 100 GB de disco, montado y disponible en /var en el sistema de archivos Linux local. La instalación crea los directorios siguientes en ubicaciones no configurables:
    • Para almacenar los registros: /var/log/dsxhi.
    • Para almacenar los ID de proceso: /var/run/dsxhi and /var/run/livy.
  • Se recomienda la tarjeta de interfaz de red de 10 GB para entornos multiarrendatario (tarjeta de interfaz de red de 1 GB si no se utiliza WEBHDFS intensamente)
Requisitos de software de nodo Edge
  • Java 1.8
  • Python 3.8 o superior
  • curl 7.19.7-53 o posterior
  • Para clusters con la seguridad Kerberos activada, un keytab de usuario y un keytab SPNEGO ( HTTP ).
  • Para los clústeres sin la seguridad de Kerberos habilitada, permisos de escritura para el usuario yarn en todos los directorios en los que escribirá un trabajo YARN.
Nota:

El soporte para las versiones precedentes de Red Hat Enterprise Linux (RHEL) depende del soporte público proporcionado por RHEL. Si una versión de RHEL alcanza su fecha de fin de servicio (EoS), la versión no será compatible con Execution Engine for Apache Hadoop.

Puertos
  • Un puerto externo para el servicio de pasarela.
  • Un puerto interno para el servicio de integración de Hadoop.
  • Puertos internos para el servicio Livy y Jupyter Enterprise Gateway para Spark 3.0. Esto es necesario si sólo desea que el servicio Execution Engine for Apache Hadoop instale Livy.
Nota:

Si está utilizando el servicio Livy existente en el clúster Hadoop , puede esperar algunos problemas. Debe considerar la posibilidad de utilizar el servicio Livy que se suministra con Hadoop Execution Engine. Para obtener más información, consulte Problema deApache - Livy.

Requisitos de configuración
  • Se necesita AUTO TLS para ejecutar el servicio Jupyter Enterprise Gateway (JEG) y conectarse a Spark.
Versiones de Hadoop soportadas
  • 4.4.8.1 - 4.8.5 Cloudera Data Platform (CDP) versión 7.1.7-SP1, 7.1.7-SP2, 7.1.8, 7.1.9
  • 4. Cloudera Data Platform (CDP) versión 7.1.7-SP1, 7.1.7-SP2, 7.1.9

El soporte para las versiones precedentes de Cloudera Data Platform (CDP) dependen del soporte público proporcionado por Cloudera. Si una versión de CDP alcanza su fecha de fin de servicio (EoS), la versión no será soportada en Execution Engine for Apache Hadoop.

Plataformas soportadas
El servicio Execution Engine for Apache Hadoop está soportado en todas las plataformas x86 soportadas por las versiones de Cloudera Data Platform (CDP) listadas anteriormente.

Requisitos de usuario root

El servicio Execution Engine for Apache Hadoop se ejecuta como usuario root. Si instala el servicio en varios nodos periféricos para alta disponibilidad, se debe utilizar el mismo usuario root. Este usuario debe cumplir los requisitos siguientes:

  • Un usuario de Linux válido en el nodo en el que está instalado el servicio Execution Engine for Apache Hadoop.

  • Directorio de inicio creado en HDFS. El directorio debe tener asignado el propietario y el grupo como usuario root.

  • Privilegios de usuario de proxy necesarios en Hadoop. Por ejemplo, para configurar un usuario root de proxy como usuario proxy para CDP, tendrá que establecer los valores siguientes en las propiedades core-site.xml para el usuario root:

    hadoop.proxyuser.<proxy_user>.hosts
    hadoop.proxyuser.<proxy_group>.groups hadoop.proxyuser.<proxy_user>.users
    
  • Si está utilizando un servicio Livy existente que se ejecuta en el clúster Hadoop , el usuario root debe tener los privilegios de superusuario necesarios en los servicios Livy .

  • Para un clúster con la seguridad Kerberos habilitada, debe generar dos tablas de claves para instalar Execution Engine for Apache Hadoop. Los archivos de tabla de claves deben tener la propiedad del usuario root porque elimina la necesidad de que cada usuario de Watson Studio tenga una tabla de claves válida.

Utilice el ejemplo siguiente como guía para ayudarle a generar una tabla de claves después de configurar el centro de distribución de claves:

# assumptions for following example
service_user: dsxhi
host_FQDN: *.examplehost.example.com

# service_user keytab
kadmin.local -q "addprinc dsxhi"
kadmin.local -q "xst -norandkey -k dsxhi.keytab dsxhi"

# SPNEGO keytab
kadmin.local -q "addprinc -randkey HTTP/*.examplehost.example.com"
kadmin.local -q "xst -norandkey -k spnego.*.examplehost.keytab HTTP/*.examplehost.example.com"

Configuración del usuario de instalación (usuario root o usuario no root)

Para instalar el servicio Execution Engine for Apache Hadoop como usuario root, el archivo de tabla de claves debe tener la propiedad del usuario root:

  1. yum install <rpm>
  2. CHOWN <service_service> -R /opt/ibm/dsxhi/
  3. editar/generar /opt/ibm/dsxhi/conf/dsxhi_install.conf
  4. cd /opt/ibm/dsxhi/bin
  5. pitón /opt/ibm/dsxhi/bin/install.py

Para instalar Execution Engine for Apache Hadoop como usuario no root, debe otorgar permisos de usuario no root utilizando el mandato visudo:

  1. Aplicar reglas de visudo para el usuario no root
  2. su <non-root_user>
  3. sudo yum install <rpm>
  4. sudo chown <non-root_user:non-root_user> -R /opt/ibm/dsxhi/
  5. editar/generar /opt/ibm/dsxhi/conf/dsxhi_install.conf
  6. cd /opt/ibm/dsxhi/bin
  7. sudo python /opt/ibm/dsxhi/bin/install.py

Plantilla de VISUDO:

## DSXHI
<non-root_user> ALL=(root) NOPASSWD: /usr/bin/yum install <path-to-rpm/rpm>, /usr/bin/yum erase dsxhi*, /usr/bin/chown * /opt/ibm/dsxhi/, /usr/bin/python /opt/ibm/dsxhi/*

Instalación del servicio

Debe tener permisos de administrador para completar estos pasos.

Para instalar el servicio Execution Engine for Apache Hadoop en el clúster Hadoop :

  1. Localice el instalador RPM en Passport Advantage. Verá la imagen del servicio.

  2. Ejecute el instalador de RPM. El rpm está instalado en /opt/ibm/dsxhi.

  3. Si está ejecutando la instalación como usuario root, ejecute sudo chown <serviceuser\> -R /opt/ibm/dsxhi.

  4. Cree un archivo /opt/ibm/dsxhi/conf/dsxhi_install.conf utilizando el archivo /opt/ibm/dsxhi/conf/dsxhi_install.conf.template.CDH como referencia. Consulte Parámetros de plantilla para instalar el servicio en clústeres de Apache Hadoop para obtener más información sobre los parámetros que puede utilizar desde la plantilla dsxhi_install.conf.template.CDH .

  5. Opcional: Si necesita establecer propiedades adicionales para controlar la ubicación de Java, utilice un almacén de confianza compartido o pase opciones Java adicionales y cree un script /opt/ibm/dsxhi/conf/dsxhi_env.sh para exportar las variables de entorno:

    export JAVA="/usr/jdk64/jdk1.8.0_112/bin/java"
    
    export JAVA_CACERTS=/etc/pki/java/cacerts
    
    export DSXHI_JAVA_OPTS="-Djavax.net.ssl.trustStore=$JAVA_CACERTS"
    
  6. En /opt/ibm/dsxhi/bin, ejecute el script ./install.py para instalar el servicio. El script solicita entradas en las siguientes opciones (de forma alternativa, puede especificar las opciones como distintivos):

    1. Aceptar los términos de la licencia (el registro de Hadoop utiliza la misma licencia que Watson Studio). También puede aceptar la licencia a través de la propiedad dsxhi_license_acceptance en dsxhi_install.conf.
    2. Se le solicitará la contraseña del administrador del clúster o del operador de Ambari o Cloudera Manager. También se puede pasar el valor mediante el distintivo --password.
      1. Si está utilizando el rol de no administrador, como por ejemplo un operador, realice los pasos siguientes:
        1. Cree un usuario con un rol de operador en un clúster de Cloudera , si todavía no se ha creado.
        2. Establezca el valor de la propiedad cluster_admin en dsxhi_install.conf en el operador Cloudera Manager.
    3. Para el secreto maestro para el servicio de pasarela, el valor también se debe pasar a través del distintivo --dsxhi_gateway_master_password.
    4. Si se ha modificado la contraseña predeterminada para el almacén de confianza de cacerts de Java, la contraseña se puede pasar a través del distintivo --dsxhi_java_cacerts_password.
  7. La instalación ejecutará controles previos para validar los requisitos previos. Si no se especifica cluster_manager_url en el archivo dsxhi_install.conf, no se realizarán las comprobaciones previas en los valores de proxy.

    Una vez instalado el servicio, se iniciarán los componentes necesarios, como el servicio de pasarela y el servicio de integración de Hadoop y los componentes opcionales (Livy para Spark).

  8. Si se habilita WebHDFS SSL después de que se haya instalado el servicio, el administrador de Hadoop debe añadir los certificados para cada namenode y datanode al almacén de confianza del servicio de pasarela y actualizar los archivos de topología.

    1. En /opt/ibm/dsxhi/bin/util, ejecute ./add_cert.sh https://host:port <cacert_password> para cada namenode y datanode

    2. Actualice manualmente/opt/ibm/dsxhi/gateway/conf/topologies*.xml para utilizar el HTTPS URL y Puerto y utilice el siguiente ejemplo:

      <service>
        <role>WEBHDFS</role>
        <url>https://NamenodeHOST:PORT</url>
      </service>
      
  9. Opcional: añada canales conda para las operaciones de envío de imágenes de Cloud Pak for Data y la instalación dinámica de paquetes.

    Cuando un administrador de Cloud Pak for Data envía una imagen de tiempo de ejecución a Hadoop utilizando el tipo de operación de envío de Hadoop, la resolución de paquetes se lleva a cabo utilizando los archivos conda rc que se instalan con rpm de HI. Los archivos conda rc existen en las ubicaciones siguientes. Estos archivos también los utiliza el método de programa de utilidad "hi_core_utils.install_packages()".

    • /user/<dsxhi-svc-user>/environments/conda/conda_rc_x86_64.yaml
    • /user/<dsxhi-svc-user>/environments/conda/conda_rc_ppc64le.yaml

    Un administrador de Hadoop puede editar los archivos conda rc para añadir más canales, lo cual es útil cuando:

    • Las imágenes de tiempo de ejecución que se pueden enviar desde Cloud Pak for Data requieren canales adicionales para la resolución de paquetes. Es posible que el administrador de Hadoop deba llevar esto a cabo si las operaciones de envío de imágenes fallan con errores de resolución de paquetes.
    • Uno o varios paquetes que un usuario desea instalar con "hi_core_utils.install_packages()" requieren canales adicionales. Si el administrador de Hadoop desea que estos canales estén expuestos para todos los usuarios del sistema, el administrador puede añadir los canales necesarios a los archivos conda rc indicados anteriormente.
    • Al editar los archivos, el administrador de Hadoop debe asegurarse de que el archivo sigue siendo propiedad del usuario root de DSXHI y conserva 644 permisos.
    Nota: En general, la adición de canales a estos archivos rc de conda aumenta el tiempo que se tarda en resolver paquetes y puede aumentar el tiempo que tardan las operaciones relevantes en completarse.

Restauración de la instalación desde un release anterior

Utilice los procedimientos siguientes si la instalación del nuevo release del servicio falla. El procedimiento le guía en la restauración del release anterior del servicio.

  1. Ejecute el script de desinstalación en la versión más reciente:

    cd /opt/ibm/dsxhi/bin
    ./uninstall.py
    
  2. Cree una copia de seguridad del archivo install.conf :

    cp /opt/ibm/dsxhi/conf/dsxhi_install.conf /tmp/dsxhi_install.conf
    
  3. Elimine el paquete de instalación:

    yum erase -y dsxhi
    
  4. Instale el paquete HEE antiguo:

    yum install -y <old_dsxhi_rpm_file>
    
  5. Sustituya dsxhi_install.conf en el directorio conf :

    cp /tmp/dsxhi_install.conf /opt/ibm/dsxhi/conf/
    
  6. Ejecute la instalación:

    cd /opt/ibm/dsxhi/bin
    ./install.py
    
  7. Añada el clúster Watson Studio URL :

    cd /opt/ibm/dsxhi/bin
    ./manage_known_dsx -a <wsl_cluster_URL_to_add>
    
  8. Desde Watson Studio, registra el servicio desde la pestaña Hadoop Execution Engine en la sección Configurations and Settings.

Configuración de certificados personalizados

Puede utilizar los certificados existentes y no tener que modificar el almacén de confianza del sistema. Las siguientes propiedades de configuración convierten DSXHI para realizar las siguientes personalizaciones:

custom_jks
DSXHI normalmente genera un almacén de claves, lo convierte en .crt y añade .crt al almacén de confianza de Java. Sin embargo, con esta configuración, DSXHI le permite proporcionar un almacén de claves personalizado que se puede utilizar para generar el .crt necesario.
dsxhi_cacert
DSXHI ha detectado previamente el almacén de confianza adecuado para utilizarlo como parte de la instalación. Con la propiedad dsxhi_cacert, DSXHI le permite proporcionar cualquier almacén de confianza personalizado (CACERTS), donde se añaden certificados DSXHI.
add_certs_to_truststore
Esta configuración proporciona opciones para añadir el certificado de host al propio almacén de confianza o DSXHI lo añade. Si establece la configuración en False, los usuarios deben añadir el certificado de host al almacén de confianza. DSXHI no realiza ningún cambio en el almacén de confianza. Si establece la configuración en True, DSXHI conserva su comportamiento predeterminado para añadir el certificado de host al almacén de confianza de Java y en los datanodes detectados para los servicios de pasarela y web.

Más información

Tema principal: Configuración posterior a la instalación