我在windows中使用kerberos实现了hadoop安全性。我已阅读this文档,每个节点应具有不同的主体名称。例如,namenode principal,如nn /full.qualified.domain.name@REALM.TLD,datanode principal,如dn /full.qualified.domain.name@REALM.TLD
我的问题是为什么我们不能对所有节点使用相同的主体,我已经测试过它也工作正常。那么我们为什么要为每个节点使用不同的主体。这有什么具体原因吗?如果我们使用不同的委托人,那么集群会更安全吗?或是每个服务有任何用户角色,如hdfs,yarn,mapred?
我只是想知道为什么他们这样使用。
谢谢,
答案 0 :(得分:0)
我不知道具体原因;但是,对于以下情况,个人用户的必要性是可行的;
当每个服务启动时,某些服务可能需要额外的权限才能在启用ACL时执行某些操作;
另外,对于核心,Hadoop本身具有“hdfs”,“mapred”作为个人用户;因此,为个人用户提供服务会更好;