Я ценю вашу помощь заранее.Hadoop: Pseudo Распределенный режим для нескольких пользователей
У меня есть настройка Hadoop в Pseudo Distributed mode с использованием учетных данных пользователя root. Я хочу предоставить доступ нескольким пользователям (скажем hadoop1, hadoop2 и т. Д.), Чтобы иметь возможность отправлять и запускать задания MapReduce в этом кластере. Как мы это сделаем?
Что я сделал до сих пор?
> - Setup Hadoop to run in Pseudo-distributed mode
> - Used "root" user credentials to set this up.
> - Added users hadoop1 and hadoop2 to a group called "hadoop".
> - Added root also to be part of the group "hadoop".
> - Created a folder called hdfstmp and set this as the path for hadoop.tmp.dir.
> - Started the cluster using bin/start-all.sh
> - Ran MapReduce jobs using hadoop1 and hadoop2 users.
я получил ошибку ниже:
Exception in thread "main" java.io.IOException: Permission denied
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:1006)
at java.io.File.createTempFile(File.java:1989)
at org.apache.hadoop.util.RunJar.main(RunJar.java:119)
- Чтобы преодолеть эту ошибку, я дал группа "Hadoop" разрешения RWX в папку hdfstmp. Разрешения для этой папки выглядят как drwxrwxr-x.
- Представлена MapReduce заданий с использованием пользователей hadoop1 и hadoop2. Работа прошла нормально, без ошибок.
Однако, если я делаю stop-all.sh, а затем создаю start -all.sh, DataNode (и иногда даже NameNode) не запускается. Когда я проверяю журналы, я вижу ошибку, как показано ниже:
2013-09-21 16: 43: 54,518 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: недопустимый каталог в dfs.data.dir : Неправильное разрешение для/data/hdfstmp/dfs/data, ожидается: rwxr-xr-x, тогда как фактическое: rwxrwxr-x
Теперь, без изменения группового права владения файлом hdfstmp, мои задания MR, представленные разными пользователи не запускаются. Но когда NameNode перезапускается, я получаю проблему, как указано выше.
Как решить эту проблему? Какова лучшая практика для того же?
Кроме того, есть ли способ контролировать работу, предоставляемую разными пользователями? Я предполагаю, что веб-интерфейс должен позволять мне это делать. Пожалуйста подтвердите.
Я ценю любую помощь, которую вы можете предоставить мне по этой проблеме. Благодарю.
С уважением
При изменении прав доступа к папке tmp - вы вносили изменения в папку на HDFS или на локальный диск? –
Chris - Я внес изменения в разрешения на локальном диске. – user3031097