Définition des autorisations pour cloudera hadoop
J'ai installé coudera hadoop 4 sur un cluster d'environ 20 nœuds. À l'aide de cloudera manager, il s'est très lisse et tout, mais lorsque je veux créer une entrée de répertoire à l'aide de hadoop fs -mkdir input
j'obtiens l'erreur suivante: mkdir: Permission denied: user=root, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x
Ressemble à un classique de mal autorisations cas, mais je n'ai aucune idée de par où commencer pour résoudre ce problème.
J'ai trouvé cette document qui, je pense, il permettrait de résoudre mon problème si je savais quoi faire avec elle. Pour commencer, je ne sais pas si je suis à l'aide de MapReduce v1 de la v2 (je ne vois pas de fil du service dans ma cloudera manager donc je dirais v1 (?)). Deuxièmement, étant donné que l'ensemble de l'installation est automatique, je ne sais pas ce qui est installé et où.
Quelqu'un pourrait-il me diriger vers quelques étapes faciles à résoudre mon problème? Je suis vraiment à la recherche de la solution la plus simple ici, je n'ai pas de soins à tous sur la sécurité, car il n'est qu'un test. Si je pouvais donner à tous les utilisateurs de toutes les autorisations possibles que ce serait bien.
OriginalL'auteur KarelV | 2012-11-24
Vous devez vous connecter pour publier un commentaire.
J'ai résolu mon problème: Dans cloudera manager, allez dans hdfs configuration avancée et placez le code suivant dans HDFS Configuration du Service de la Soupape de Sécurité:
Merci pour me sauver beaucoup de temps!
sinon cela fonctionne "sudo -u hdfs hadoop fs -mkdir entrée"
Ce n'résoudre le problème - mais c'est de désactiver les autorisations d'un "la" solution? Un peu comme la désactivation du pare-feu, il ne fait pas de résoudre le problème?
OriginalL'auteur KarelV
Changer
dfs.permission
est toujours une solution, mais vous pouvez également tenter de changer l'utilisateur. Dans mon système, la permission d'écriture est attribué qu'à un seul 'sf' utilisateur. L'utilisateur peut être modifié par la commande suivante:OriginalL'auteur Amitesh Ranjan
hdfs1 -> Configuration -> Afficher et Modifier -> Décocher la case "Vérifier HDFS Permissions" cela a fonctionné grâce Shehaz
OriginalL'auteur Rajesh
1.Ne pas modifier dfs.les autorisations.Garder sa valeur en tant que vrai.
2.Ajouter des groupes pour un utilisateur en particulier si vous avez exigé.( facultatif)
groupadd développement
groupadd production
echo "Groupe de production et de développement sont créés."
créer un utilisateur avec des groupes existants et de les assigner hdfs répertoire à utiliser
useradd -g développement clouddev3
sudo -u hdfs hadoop fs -mkdir -p /utilisateur/clouddev3
sudo -u hdfs hadoop fs -chown -R clouddev3:développement /utilisateur/clouddev3
echo "Utilisateur clouddev3 créé et est propriétaire /utilisateur/clouddev3 répertoire dans hdfs"
Maintenant vous connecter avec clouddev3 de l'utilisateur et d'essayer,
hdfs dfs -ls /utilisateur/clouddev3
ou hdfs dfs -ls
OriginalL'auteur Jack Sparrow