Browse Source

AMBARI-17849. Local and custom views are not working when swebhdfs and Namenode HA is enabled.(gauravn7)

Gaurav Nagar 9 năm trước cách đây
mục cha
commit
b88e6e2314

+ 16 - 0
contrib/views/files/src/main/resources/view.xml

@@ -79,6 +79,22 @@
         <required>false</required>
         <required>false</required>
         <cluster-config>fake</cluster-config>
         <cluster-config>fake</cluster-config>
     </parameter>
     </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn1</name>
+        <description>WebHDFS Https address for first name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode1] property</description>
+        <label>First NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn2</name>
+        <description>WebHDFS Https address for second name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode2] property</description>
+        <label>Second NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
     <parameter>
     <parameter>
         <name>webhdfs.client.failover.proxy.provider</name>
         <name>webhdfs.client.failover.proxy.provider</name>
         <description>The Java class that HDFS clients use to contact the Active NameNode
         <description>The Java class that HDFS clients use to contact the Active NameNode

+ 16 - 0
contrib/views/hive-next/src/main/resources/view.xml

@@ -111,6 +111,22 @@
         <required>false</required>
         <required>false</required>
         <cluster-config>fake</cluster-config>
         <cluster-config>fake</cluster-config>
     </parameter>
     </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn1</name>
+        <description>WebHDFS Https address for first name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode1] property</description>
+        <label>First NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn2</name>
+        <description>WebHDFS Https address for second name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode2] property</description>
+        <label>Second NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
     <parameter>
     <parameter>
         <name>webhdfs.client.failover.proxy.provider</name>
         <name>webhdfs.client.failover.proxy.provider</name>
         <description>The Java class that HDFS clients use to contact the Active NameNode
         <description>The Java class that HDFS clients use to contact the Active NameNode

+ 16 - 0
contrib/views/hive/src/main/resources/view.xml

@@ -150,6 +150,22 @@
         <required>false</required>
         <required>false</required>
         <cluster-config>fake</cluster-config>
         <cluster-config>fake</cluster-config>
     </parameter>
     </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn1</name>
+        <description>WebHDFS Https address for first name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode1] property</description>
+        <label>First NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn2</name>
+        <description>WebHDFS Https address for second name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode2] property</description>
+        <label>Second NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
     <parameter>
     <parameter>
         <name>webhdfs.client.failover.proxy.provider</name>
         <name>webhdfs.client.failover.proxy.provider</name>
         <description>The Java class that HDFS clients use to contact the Active NameNode
         <description>The Java class that HDFS clients use to contact the Active NameNode

+ 16 - 0
contrib/views/pig/src/main/resources/view.xml

@@ -82,6 +82,22 @@
         <required>false</required>
         <required>false</required>
         <cluster-config>fake</cluster-config>
         <cluster-config>fake</cluster-config>
     </parameter>
     </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn1</name>
+        <description>WebHDFS Https address for first name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode1] property</description>
+        <label>First NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
+    <parameter>
+        <name>webhdfs.ha.namenode.https-address.nn2</name>
+        <description>WebHDFS Https address for second name node.
+            Value of hdfs-site/dfs.namenode.https-address.[nameservice].[namenode2] property</description>
+        <label>Second NameNode HTTPS (WebHDFS) Address</label>
+        <required>false</required>
+        <cluster-config>fake</cluster-config>
+    </parameter>
     <parameter>
     <parameter>
         <name>webhdfs.client.failover.proxy.provider</name>
         <name>webhdfs.client.failover.proxy.provider</name>
         <description>The Java class that HDFS clients use to contact the Active NameNode
         <description>The Java class that HDFS clients use to contact the Active NameNode

+ 10 - 2
contrib/views/utils/src/main/java/org/apache/ambari/view/utils/hdfs/ConfigurationBuilder.java

@@ -55,12 +55,16 @@ public class ConfigurationBuilder {
   public static final String HA_NAMENODES_CLUSTER_PROPERTY  = "dfs.ha.namenodes.%s";
   public static final String HA_NAMENODES_CLUSTER_PROPERTY  = "dfs.ha.namenodes.%s";
   public static final String NAMENODE_RPC_NN1_INSTANCE_PROPERTY = "webhdfs.ha.namenode.rpc-address.nn1";
   public static final String NAMENODE_RPC_NN1_INSTANCE_PROPERTY = "webhdfs.ha.namenode.rpc-address.nn1";
   public static final String NAMENODE_RPC_NN2_INSTANCE_PROPERTY = "webhdfs.ha.namenode.rpc-address.nn2";
   public static final String NAMENODE_RPC_NN2_INSTANCE_PROPERTY = "webhdfs.ha.namenode.rpc-address.nn2";
-
   public static final String NAMENODE_RPC_NN_CLUSTER_PROPERTY   = "dfs.namenode.rpc-address.%s.%s";
   public static final String NAMENODE_RPC_NN_CLUSTER_PROPERTY   = "dfs.namenode.rpc-address.%s.%s";
+
   public static final String NAMENODE_HTTP_NN1_INSTANCE_PROPERTY = "webhdfs.ha.namenode.http-address.nn1";
   public static final String NAMENODE_HTTP_NN1_INSTANCE_PROPERTY = "webhdfs.ha.namenode.http-address.nn1";
   public static final String NAMENODE_HTTP_NN2_INSTANCE_PROPERTY = "webhdfs.ha.namenode.http-address.nn2";
   public static final String NAMENODE_HTTP_NN2_INSTANCE_PROPERTY = "webhdfs.ha.namenode.http-address.nn2";
-
   public static final String NAMENODE_HTTP_NN_CLUSTER_PROPERTY   = "dfs.namenode.http-address.%s.%s";
   public static final String NAMENODE_HTTP_NN_CLUSTER_PROPERTY   = "dfs.namenode.http-address.%s.%s";
+
+  public static final String NAMENODE_HTTPS_NN1_INSTANCE_PROPERTY = "webhdfs.ha.namenode.https-address.nn1";
+  public static final String NAMENODE_HTTPS_NN2_INSTANCE_PROPERTY = "webhdfs.ha.namenode.https-address.nn2";
+  public static final String NAMENODE_HTTPS_NN_CLUSTER_PROPERTY   = "dfs.namenode.https-address.%s.%s";
+
   public static final String FAILOVER_PROXY_PROVIDER_INSTANCE_PROPERTY = "webhdfs.client.failover.proxy.provider";
   public static final String FAILOVER_PROXY_PROVIDER_INSTANCE_PROPERTY = "webhdfs.client.failover.proxy.provider";
   public static final String FAILOVER_PROXY_PROVIDER_CLUSTER_PROPERTY  = "dfs.client.failover.proxy.provider.%s";
   public static final String FAILOVER_PROXY_PROVIDER_CLUSTER_PROPERTY  = "dfs.client.failover.proxy.provider.%s";
 
 
@@ -203,12 +207,16 @@ public class ConfigurationBuilder {
                         NAMENODE_RPC_NN1_INSTANCE_PROPERTY);
                         NAMENODE_RPC_NN1_INSTANCE_PROPERTY);
     copyClusterProperty(String.format(NAMENODE_HTTP_NN_CLUSTER_PROPERTY, nameservice, namenodes[0]),
     copyClusterProperty(String.format(NAMENODE_HTTP_NN_CLUSTER_PROPERTY, nameservice, namenodes[0]),
                         NAMENODE_HTTP_NN1_INSTANCE_PROPERTY);
                         NAMENODE_HTTP_NN1_INSTANCE_PROPERTY);
+    copyClusterProperty(String.format(NAMENODE_HTTPS_NN_CLUSTER_PROPERTY, nameservice, namenodes[0]),
+      NAMENODE_HTTPS_NN1_INSTANCE_PROPERTY);
 
 
     //NN2
     //NN2
     copyClusterProperty(String.format(NAMENODE_RPC_NN_CLUSTER_PROPERTY, nameservice, namenodes[1]),
     copyClusterProperty(String.format(NAMENODE_RPC_NN_CLUSTER_PROPERTY, nameservice, namenodes[1]),
                         NAMENODE_RPC_NN2_INSTANCE_PROPERTY);
                         NAMENODE_RPC_NN2_INSTANCE_PROPERTY);
     copyClusterProperty(String.format(NAMENODE_HTTP_NN_CLUSTER_PROPERTY, nameservice, namenodes[1]),
     copyClusterProperty(String.format(NAMENODE_HTTP_NN_CLUSTER_PROPERTY, nameservice, namenodes[1]),
                         NAMENODE_HTTP_NN2_INSTANCE_PROPERTY);
                         NAMENODE_HTTP_NN2_INSTANCE_PROPERTY);
+    copyClusterProperty(String.format(NAMENODE_HTTPS_NN_CLUSTER_PROPERTY, nameservice, namenodes[1]),
+      NAMENODE_HTTPS_NN2_INSTANCE_PROPERTY);
 
 
     copyClusterProperty(String.format(FAILOVER_PROXY_PROVIDER_CLUSTER_PROPERTY, nameservice),
     copyClusterProperty(String.format(FAILOVER_PROXY_PROVIDER_CLUSTER_PROPERTY, nameservice),
                         FAILOVER_PROXY_PROVIDER_INSTANCE_PROPERTY);
                         FAILOVER_PROXY_PROVIDER_INSTANCE_PROPERTY);