hadoop cluster-computing hdfs user-permissions

hadoop - HDFS Home Directory



cluster-computing user-permissions (2)

Configuré un clúster hadoop multiusuario de un nodo. En mi clúster, hay un usuario administrador que es responsable de ejecutar el clúster (superusuario). A todos los demás usuarios se les asigna un directorio hdfs como / home / xyz donde xyz es un nombre de usuario.

En Unix, podemos cambiar el directorio de inicio predeterminado para un usuario en / etc / passwd. Y de forma predeterminada, el directorio de inicio de un usuario es el directorio de inicio.

¿Cómo lo hago en hadoop para el sistema de archivos hdfs? Quiero, por ejemplo, si el usuario escribe: $ hadoop dfs -ls en el indicador de Unix. Deberá enumerar los contenidos del directorio de inicio asignado por mí.

Además, los directorios hdfs son creados por el superusuario que ejecuta el clúster (superusuario de hadoop y no raíz de Unix) y luego transfiere la propiedad a un usuario en particular.


No estoy seguro de que esto sea algo que se pueda configurar: la fuente de DistributedFileSystem (línea 150) tiene una llamada para getHomeDirectory que parece estar codificada:

@Override public Path getHomeDirectory() { return makeQualified(new Path("/user/" + dfs.ugi.getShortUserName())); }

Tienes dos opciones posibles si quieres poder cambiar esto:

  • Envía un ticket a hadoop solicitando una nueva característica - Ver este enlace
  • Modifique la fuente usted mismo y vuelva a compilar + redistribuya el jar hadoop-core en su cluster (simple en su pseudo cluster de nodo único)

tapan, Cada usuario tiene un directorio "home" en HDFS ubicado en / user / username. Por ejemplo, si escribe hadoop fs -ls, le llevará el directorio de usuario HDFS actual. Lo revisé solo con dos usuarios.

Al llegar a Unix como configuración de archivo (/ etc / passwd), no lo sabía. Pero, es realmente interesante. Como dijo Chris, podemos agregar nuevas características como, introducir user-admin-site.xml como archivo de configuración y agregar grupos, usuarios, sus permisos en directorios, directorio personal, etc. Realmente intertestándonos, tenemos o intentar esto ...