问题
I did not face any porblems while installing cloudera but I just realized that I should have had users like oozie and hdfs created on my centos machine, I guess under /home directory?
But I do not have any such users under home directory and I am not able to login as oozie user through su oozie command. Is it an installation problem or is there some other way to do it?
Now, that I am trying to copy a jar in oozie sharelib folder, it does not allow so through root user and I do not see any other users created here. I did not opt for single user installation either.
回答1:
Hadoop is a distributed system, it is not bound to the local users on a specific server.
If you had Kerberos authentication enabled, then it's the user in your local Kerberos ticket that would matter (and you would have to cope with some dirty Kerberos administration chores, although Cloudera Manager helps a lot, especially if you use Active Directory as Kerberos back-end)
On the other hand, without Kerberos, then anyone can impersonate any Hadoop system account or user account; the rule appears to be...
- whatever is set in local env. variable
HADOOP_USER_NAME
- failing that, whatever is set in Java system prop.
HADOOP_USER_NAME
- failing that, your actual Linux (or Windows) user
Reference:
- that StackOverflow post that you would have found yourself if you had cared to Google a little bit :-/
- the Hadoop source code for authentication - search for
HADOOP_USER_NAME
string constant
来源:https://stackoverflow.com/questions/37379765/service-specific-users-not-created-in-cloudera