Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda> MapReduce Service> Pasos iniciales> Uso de clústeres con autenticación Kerberos habilitada
Actualización más reciente 2023-11-20 GMT+08:00

Uso de clústeres con autenticación Kerberos habilitada

Utilice clústeres de seguridad y ejecute los programas MapReduce, Spark y Hive.

En MRS 3.x, Presto no admite la autenticación Kerberos.

Puede comenzar leyendo los siguientes temas:

  1. Creación de un clúster de seguridad e inicio de sesión en Manager
  2. Creación de un rol y un usuario
  3. Ejecución de un programa de MapReduce
  4. Ejecución de un programa Spark
  5. Ejecución de un programa Hive

Creación de un clúster de seguridad e inicio de sesión en Manager

  1. Cree un clúster de seguridad. Para obtener más información, consulte Compra de un clúster personalizado. Habilite Kerberos Authentication y configure Password y confirme la contraseña. Esta contraseña se utiliza para iniciar sesión en Manager. Manténgalo seguro.

    Figura 1 Configuración de los parámetros del clúster de seguridad

  2. Inicie sesión en la consola de MRS.
  3. En el panel de navegación de la izquierda, elija Active Clusters y haga clic en el nombre del clúster de destino de la derecha para acceder a la página de detalles del clúster.
  4. Haga clic en Access Manager a la derecha de MRS Manager para iniciar sesión en Manager.

    • Si ha enlazado una EIP al crear el clúster, realice las siguientes operaciones:
      1. Agregue una regla de grupo de seguridad. De forma predeterminada, la dirección IP pública utilizada para acceder al puerto 9022 se completa en la regla. Si desea ver, modificar o eliminar una regla de grupo de seguridad, haga clic en Manage Security Group Rule.
        • Es normal que la dirección IP pública generada automáticamente sea diferente de su dirección IP local y no se requiere ninguna acción.
        • Si el puerto 9022 es un puerto Knox, debe habilitar el permiso para acceder al puerto 9022 de Knox para acceder al Manager.
      2. Seleccione I confirm that xx.xx.xx.xx is a trusted public IP address and MRS Manager can be accessed using this IP address.
        Figura 2 Acceder a Manager
    • Si no ha enlazado una EIP al crear el clúster, realice las siguientes operaciones:
      1. Seleccione un EIP en la lista desplegable o haga clic en Manage EIP para comprar una.
      2. Agregue una regla de grupo de seguridad. De forma predeterminada, la dirección IP pública utilizada para acceder al puerto 9022 se completa en la regla. Si desea ver, modificar o eliminar una regla de grupo de seguridad, haga clic en Manage Security Group Rule.
      3. Seleccione I confirm that xx.xx.xx.xx is a trusted public IP address and MRS Manager can be accessed using this IP address.
      Figura 3 Acceder a Manager

  5. Haga clic en OK. Se muestra la página de inicio de sesión de Manager. Para asignar a otros usuarios el permiso de acceso al Manager, agregue las direcciones IP como de confianza haciendo referencia a Acceder a Manager.
  6. Ingrese el nombre de usuario predeterminado admin y la contraseña que configuró al crear el clúster, y haga clic en Log In.

Creación de un rol y un usuario

Para clústeres con autenticación Kerberos habilitada, realice los siguientes pasos para crear un usuario y asignar permisos al usuario para ejecutar programas.

  1. En Manager, elija System > Permission > Role.

    Figura 4 Rol

  2. Haga clic en Create Role. Para obtener más información, consulte Creación de un rol.

    Figura 5 Creación de un rol

    Especifique la siguiente información:

    • Introduzca un nombre de rol, por ejemplo, mrrole.
    • En Configure Resource Permission, seleccione el clúster que se va a operar, elija Yarn > Scheduler Queue > root y seleccione Submit y Admin en la columna Permission. Después de finalizar la configuración, no haga clic en OK sino en el nombre del clúster de destino que se muestra en la siguiente figura y, a continuación, configure otros permisos.
      Figura 6 Configuración de permisos de recursos para Yarn
    • Elija HBase > HBase Scope. Busque la fila que contiene global y seleccione create, read, write y execute en la columna Permission. Después de finalizar la configuración, no haga clic en OK sino en el nombre del clúster de destino que se muestra en la siguiente figura y, a continuación, configure otros permisos.
      Figura 7 Configuración de permisos de recursos para HBase
    • Elija HDFS > File System > hdfs://hacluster/ y seleccione Read, Write y Execute en la columna Permission. Después de finalizar la configuración, no haga clic en OK sino en el nombre del clúster de destino que se muestra en la siguiente figura y, a continuación, configure otros permisos.
      Figura 8 Configuración de permisos de recursos para HDFS
    • Elija Hive > Hive Read Write Privileges, seleccione Select, Delete, Insert, y Create en la columna Permission, y haga cic en OK.
      Figura 9 Configuración de permisos de recursos para Hive

  3. Elija System. En el panel de navegación de la izquierda, elija Permission > User Group > Create User Group para crear un grupo de usuarios para el proyecto de ejemplo, por ejemplo, mrgroup. Para obtener más información, consulte Creación de un grupo de usuario.

    Figura 10 Crear un grupo de usuarios

  4. Elija System. En el panel de navegación de la izquierda, elija Permission > User > Create para crear un usuario para el proyecto de ejemplo. Para obtener más información, consulte Creación de un usuario.

    • Introduzca un nombre de usuario, por ejemplo, test. Si desea ejecutar un programa Hive, escriba hiveuser en el archivo Username.
    • Ajusta User Type a Human-Machine.
    • Ingrese una contraseña. Esta contraseña se usará cuando ejecute el programa.
    • En User Group, agregue mrgroup y supergroup.
    • Establezca Primary Group en supergroup y vincule el rol mrrole para obtener el permiso.

      Haga clic en OK.

    Figura 11 Creación de un usuario

  5. Elija System. En el panel de navegación de la izquierda, elija Permission > User, busque la fila donde se encuentra el usuario test y seleccione Download Authentication Credential en la lista desplegable More. Guarde el paquete descargado y descomprima para obtener los archivos keytab y krb5.conf.

    Figura 12 Descargar la credencial de autenticación

Ejecución de un programa de MapReduce

Esta sección describe cómo ejecutar un programa de MapReduce en modo de clúster de seguridad.

Prerrequisitos

Ha compilado el programa y preparado archivos de datos, por ejemplo, mapreduce-examples-1.0.jar, input_data1.txt, y input_data2.txt. Para obtener más información sobre el desarrollo del programa MapReduce y la preparación de datos, consulte Introducción de MapReduce.

Procedimiento

  1. Utilice un software de inicio de sesión remoto (por ejemplo, MobaXterm) para iniciar sesión en el nodo master del clúster de seguridad mediante SSH (usando la EIP).
  2. Después de iniciar sesión correctamente, ejecute los siguientes comandos para crear la carpeta test en el directorio /opt/Bigdata/client y crear la carpeta conf en el directorio test:

    cd /opt/Bigdata/client
    mkdir test
    cd test
    mkdir conf

  3. Utilice una herramienta de carga (por ejemplo, WinSCP) para copiar mapreduce-examples-1.0.jar, input_data1.txt, y input_data2.txt al directorio test, y copie los archivos keytab y krb5.conf obtenidos en 5 en Creating Roles and Users al directorio conf.
  4. Ejecute los siguientes comandos para configurar variables de entorno y autenticar el usuario creado, por ejemplo test:

    cd /opt/Bigdata/client
    source bigdata_env
    export YARN_USER_CLASSPATH=/opt/Bigdata/client/test/conf/
    kinit test

    Ingrese la contraseña como se le solicite. Si no se muestra ningún mensaje de error (necesita cambiar la contraseña como se le solicite en el primer inicio de sesión) , la autenticación Kerberos se ha completado.

  5. Ejecute los siguientes comandos para importar datos a HDFS:

    cd test
    hdfs dfs -mkdir /tmp/input
    hdfs dfs -put input_data* /tmp/input

  6. Ejecute los siguientes comandos para ejecutar el programa:

    yarn jar mapreduce-examples-1.0.jar com.huawei.bigdata.mapreduce.examples.FemaleInfoCollector /tmp/input /tmp/mapreduce_output

    En los comandos anteriores:

    /tmp/input indica la ruta de entrada en el HDFS.

    /tmp/mapreduce_output indica la ruta de salida en el HDFS. Este directorio no debe existir. De lo contrario, se informará de un error.

  7. Una vez que el programa se ejecute correctamente, ejecute el comando hdfs dfs -ls /tmp/mapreduce_output. Se muestra el siguiente resultado del comando.

    Figura 13 Resultado de ejecución del programa

Ejecución de un programa Spark

En esta sección se describe cómo ejecutar un programa Spark en modo de clúster de seguridad.

Prerrequisitos

Ha compilado el programa y preparado archivos de datos, por ejemplo, FemaleInfoCollection.jar, input_data1.txt, y input_data2.txt. Para obtener detalles sobre el desarrollo del programa de Spark y la preparación de datos, consulte Descripción de desarrollo de aplicación de Spark.

Procedimiento

  1. Utilice un software de inicio de sesión remoto (por ejemplo, MobaXterm) para iniciar sesión en el nodo master del clúster de seguridad mediante SSH (usando la EIP).
  2. Después de iniciar sesión correctamente, ejecute los siguientes comandos para crear la carpeta test en el directorio /opt/Bigdata/client y crear la carpeta conf en el directorio test:

    cd /opt/Bigdata/client
    mkdir test
    cd test
    mkdir conf

  3. Utilice una herramienta de carga (por ejemplo, WinSCP) para copiar FemaleInfoCollection.jar, input_data1.txt, y input_data2.txt al directorio test, y copie los archivos keytab y krb5.conf obtenidos en 5 en la sección Creating Roles and Users al directorio conf.
  4. Ejecute los siguientes comandos para configurar variables de entorno y autenticar el usuario creado, por ejemplo test:

    cd /opt/Bigdata/client
    source bigdata_env
    export YARN_USER_CLASSPATH=/opt/Bigdata/client/test/conf/
    kinit test

    Ingrese la contraseña como se le solicite. Si no se muestra ningún mensaje de error, se completa la autenticación Kerberos.

  5. Ejecute los siguientes comandos para importar datos a HDFS:

    cd test
    hdfs dfs -mkdir /tmp/input
    hdfs dfs -put input_data* /tmp/input

  6. Ejecute los siguientes comandos para ejecutar el programa:

    cd /opt/Bigdata/client/Spark/spark
    bin/spark-submit --class com.huawei.bigdata.spark.examples.FemaleInfoCollection --master yarn-client /opt/Bigdata/client/test/FemaleInfoCollection-1.0.jar /tmp/input

  7. Una vez que el programa se ejecuta correctamente, se muestra la siguiente información.

    Figura 14 Resultado de ejecución del programa

Ejecución de un programa Hive

En esta sección se describe cómo ejecutar un programa Hive en modo de clúster de seguridad.

Prerrequisitos

Ha compilado el programa y preparado archivos de datos, por ejemplo, hive-examples-1.0.jar, input_data1.txt, y input_data2.txt. Para obtener detalles sobre el desarrollo del programa Hive y la preparación de datos, consulte Descripción de desarrollo de aplicación de Hive.

Procedimiento

  1. Utilice un software de inicio de sesión remoto (por ejemplo, MobaXterm) para iniciar sesión en el nodo master del clúster de seguridad mediante SSH (usando la EIP).
  2. Después de iniciar sesión correctamente, ejecute los siguientes comandos para crear la carpeta test en el directorio /opt/Bigdata/client y crear la carpeta conf en el directorio test:

    cd /opt/Bigdata/client
    mkdir test
    cd test
    mkdir conf

  3. Utilice una herramienta de carga (por ejemplo, WinSCP) para copiar FemaleInfoCollection.jar, input_data1.txt, y input_data2.txt al directorio test, y copie los archivos keytab y krb5.conf obtenidos en 5 en la sección Creating Roles and Users al directorio conf.
  4. Ejecute los siguientes comandos para configurar variables de entorno y autenticar el usuario creado, por ejemplo test:

    cd /opt/Bigdata/client
    source bigdata_env
    export YARN_USER_CLASSPATH=/opt/Bigdata/client/test/conf/
    kinit test

    Ingrese la contraseña como se le solicite. Si no se muestra ningún mensaje de error, se completa la autenticación Kerberos.

  5. Ejecute el siguiente comando para ejecutar el programa:

    chmod +x /opt/hive_examples -R   cd /opt/hive_examples   java -cp .:hive-examples-1.0.jar:/opt/hive_examples/conf:/opt/Bigdata/client/Hive/Beeline/lib/*:/opt/Bigdata/client/HDFS/hadoop/lib/* com.huawei.bigdata.hive.example.ExampleMain

  6. Una vez que el programa se ejecuta correctamente, se muestra la siguiente información.

    Figura 15 Resultado de ejecución del programa