錯誤提示:
ERROR dns.PrivilegedRegistryDNSStarter (PrivilegedRegistryDNSStarter.java:init(61)) - Error initializing Registry DNS
java.net.BindException: Problem binding to [xxx:53] java.net.BindException: Address already in use; For more details see: http://wiki.apache.org/hadoop/BindException
或
resource_management.core.exceptions.ExecutionFailed: Execution of 'ambari-sudo.sh -H -E /usr/hdp/xxx/hadoop-yarn/bin/yarn --config /usr/hdp/xxx/hadoop/conf --daemon start registrydns' returned 1. ERROR: Cannot set priority of registrydns process xxx
原因:YARN Registry DNS的默認端口53本其它進程占用了。
方案一:
1.查詢占用53端口的進程/服務
lsof -i:53
查詢到PID和User,這里的User一般是systemd-resolved
2.停止占用53端口的進程/服務
systemctl stop systemd-resolved
3.在Ambari界面啟動YARN Registry DNS,成功。
方案二:
直接在Ambari界面,YARN -> configs -> advanced -> RegistryDNS Bind Port,修改端口后保存。