[ https://issues.apache.org/jira/browse/AMBARI-21370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16067126#comment-16067126 ]
Jayush Luniya edited comment on AMBARI-21370 at 6/28/17 7:53 PM: ----------------------------------------------------------------- The solution is as follows with the assumption that the masters that use VIPs are on dedicated hosts. # Set public host name as the VIP host name on each individual hosts. # *Quicklinks*: When public host name is configured, quicklinks already update the links to the public host name. # *JMX Metrics*: Use hostname and public hostname as fallback for JMX queries so that the JMX metrics are reported correctly as well as Active/Standby status is reported correctly. # *HDFS Service Definition*: Use host name as well as public host name to determine the NN id of the current host so that {{http://<host-name>:50070}} as well as {{http://<vip-host-name>:50070}} both work. # *Alerts*: Pass public host name in alert definitions.json, update base alert to use both host name and public host name for picking appropriate HA config property. # *Port Alert*: While testing discovered that for ZKFC the interface used is same as that of NN, there is no config property for ZKFC to set the host name (http://grepcode.com/file/repo1.maven.org/maven2/org.apache.hadoop/hadoop-hdfs/2.7.1/org/apache/hadoop/hdfs/tools/NNHAServiceTarget.java#123). To handle such cases, we need to fix port alert to handle the case when the uri doesn't include the host name then we should try both host name and public host name as fallback because if NN is listening to VIP interface instead of actual host interface, then ZKFC will also listen on the VIP interface and not on the actual host interface. *Current Limitation:* # We can configure public host name only at the host level, so in the case where NN and HBASE_MASTER are on the same host and each use different VIPs (nn1-vip-host-name, hbase1-vip-host-name), we cannot set up the cluster to handle it. # In the long term we should allow public host name to be configurable at host component instance level instead of host level. We will then be able to configure a host with components with different VIPs. was (Author: jluniya): The solution is as follows with the assumption that the masters that use VIPs are on dedicated hosts. # Set public host name as the VIP host name on each individual hosts. # *Quicklinks*: When public host name is configured, quicklinks already update the links to the public host name. # *JMX Metrics*: Use hostname and public hostname as fallback for JMX queries so that the JMX metrics are reported correctly as well as Active/Standby status is reported correctly. # *HDFS Service Definition*: Use host name as well as public host name to determine the NN id of the current host so that http://<host-name>:50070 as well as http://<vip-host-name>:50070 both work. # *Alerts*: Pass public host name in alert definitions.json, update base alert to use both host name and public host name for picking appropriate HA config property. # *Port Alert*: While testing discovered that for ZKFC the interface used is same as that of NN, there is no config property for ZKFC to set the host name (http://grepcode.com/file/repo1.maven.org/maven2/org.apache.hadoop/hadoop-hdfs/2.7.1/org/apache/hadoop/hdfs/tools/NNHAServiceTarget.java#123). To handle such cases, we need to fix port alert to handle the case when the uri doesn't include the host name then we should try both host name and public host name as fallback because if NN is listening to VIP interface instead of actual host interface, then ZKFC will also listen on the VIP interface and not on the actual host interface. *Current Limitation:* # We can configure public host name only at the host level, so in the case where NN and HBASE_MASTER are on the same host and each use different VIPs (nn1-vip-host-name, hbase1-vip-host-name), we cannot set up the cluster to handle it. # In the long term we should allow public host name to be configurable at host component instance level instead of host level. We will then be able to configure a host with components with different VIPs. > Support VIPs instead of Host Names > ---------------------------------- > > Key: AMBARI-21370 > URL: https://issues.apache.org/jira/browse/AMBARI-21370 > Project: Ambari > Issue Type: Bug > Components: alerts, ambari-agent, ambari-server, metrics, stacks > Affects Versions: 2.5.0 > Reporter: Jayush Luniya > Assignee: Jayush Luniya > Priority: Critical > Fix For: 2.5.2 > > -- This message was sent by Atlassian JIRA (v6.4.14#64029)