コード例 #1
0
        public virtual void TestGetProxyHostsAndPortsForAmFilter()
        {
            // Check no configs given
            Configuration  conf       = new Configuration(false);
            IList <string> proxyHosts = WebAppUtils.GetProxyHostsAndPortsForAmFilter(conf);

            NUnit.Framework.Assert.AreEqual(1, proxyHosts.Count);
            NUnit.Framework.Assert.AreEqual(WebAppUtils.GetResolvedRMWebAppURLWithoutScheme(conf
                                                                                            ), proxyHosts[0]);
            // Check PROXY_ADDRESS has priority
            conf = new Configuration(false);
            conf.Set(YarnConfiguration.ProxyAddress, "host1:1000");
            conf.SetBoolean(YarnConfiguration.RmHaEnabled, true);
            conf.Set(YarnConfiguration.RmHaIds, "rm1,rm2,rm3");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm1", "host2:2000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm2", "host3:3000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm3", "host4:4000");
            proxyHosts = WebAppUtils.GetProxyHostsAndPortsForAmFilter(conf);
            NUnit.Framework.Assert.AreEqual(1, proxyHosts.Count);
            NUnit.Framework.Assert.AreEqual("host1:1000", proxyHosts[0]);
            // Check getting a single RM_WEBAPP_ADDRESS
            conf = new Configuration(false);
            conf.Set(YarnConfiguration.RmWebappAddress, "host2:2000");
            proxyHosts = WebAppUtils.GetProxyHostsAndPortsForAmFilter(conf);
            NUnit.Framework.Assert.AreEqual(1, proxyHosts.Count);
            proxyHosts.Sort();
            NUnit.Framework.Assert.AreEqual("host2:2000", proxyHosts[0]);
            // Check getting multiple RM_WEBAPP_ADDRESSes (RM HA)
            conf = new Configuration(false);
            conf.SetBoolean(YarnConfiguration.RmHaEnabled, true);
            conf.Set(YarnConfiguration.RmHaIds, "rm1,rm2,rm3");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm1", "host2:2000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm2", "host3:3000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm3", "host4:4000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm4", "dummy");
            conf.Set(YarnConfiguration.RmWebappHttpsAddress + ".rm1", "host5:5000");
            conf.Set(YarnConfiguration.RmWebappHttpsAddress + ".rm2", "host6:6000");
            proxyHosts = WebAppUtils.GetProxyHostsAndPortsForAmFilter(conf);
            NUnit.Framework.Assert.AreEqual(3, proxyHosts.Count);
            proxyHosts.Sort();
            NUnit.Framework.Assert.AreEqual("host2:2000", proxyHosts[0]);
            NUnit.Framework.Assert.AreEqual("host3:3000", proxyHosts[1]);
            NUnit.Framework.Assert.AreEqual("host4:4000", proxyHosts[2]);
            // Check getting multiple RM_WEBAPP_ADDRESSes (RM HA) with HTTPS
            conf = new Configuration(false);
            conf.Set(YarnConfiguration.YarnHttpPolicyKey, HttpConfig.Policy.HttpsOnly.ToString
                         ());
            conf.SetBoolean(YarnConfiguration.RmHaEnabled, true);
            conf.Set(YarnConfiguration.RmHaIds, "rm1,rm2,rm3,dummy");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm1", "host2:2000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm2", "host3:3000");
            conf.Set(YarnConfiguration.RmWebappAddress + ".rm3", "host4:4000");
            conf.Set(YarnConfiguration.RmWebappHttpsAddress + ".rm1", "host5:5000");
            conf.Set(YarnConfiguration.RmWebappHttpsAddress + ".rm2", "host6:6000");
            proxyHosts = WebAppUtils.GetProxyHostsAndPortsForAmFilter(conf);
            NUnit.Framework.Assert.AreEqual(2, proxyHosts.Count);
            proxyHosts.Sort();
            NUnit.Framework.Assert.AreEqual("host5:5000", proxyHosts[0]);
            NUnit.Framework.Assert.AreEqual("host6:6000", proxyHosts[1]);
        }
コード例 #2
0
        public virtual void TestRMWebAppURLRemoteAndLocal()
        {
            Configuration configuration = new Configuration();
            string        rmAddress     = "host1:8088";

            configuration.Set(YarnConfiguration.RmWebappAddress, rmAddress);
            string rm1Address = "host2:8088";
            string rm2Address = "host3:8088";

            configuration.Set(YarnConfiguration.RmWebappAddress + "." + Rm1NodeId, rm1Address
                              );
            configuration.Set(YarnConfiguration.RmWebappAddress + "." + Rm2NodeId, rm2Address
                              );
            configuration.SetBoolean(YarnConfiguration.RmHaEnabled, true);
            configuration.Set(YarnConfiguration.RmHaIds, Rm1NodeId + "," + Rm2NodeId);
            string rmRemoteUrl = WebAppUtils.GetResolvedRemoteRMWebAppURLWithoutScheme(configuration
                                                                                       );

            NUnit.Framework.Assert.AreEqual("ResolvedRemoteRMWebAppUrl should resolve to the first HA RM address"
                                            , rm1Address, rmRemoteUrl);
            string rmLocalUrl = WebAppUtils.GetResolvedRMWebAppURLWithoutScheme(configuration
                                                                                );

            NUnit.Framework.Assert.AreEqual("ResolvedRMWebAppUrl should resolve to the default RM webapp address"
                                            , rmAddress, rmLocalUrl);
        }
コード例 #3
0
ファイル: AppController.cs プロジェクト: orf53975/hadoop.net
 protected internal AppController(Org.Apache.Hadoop.Mapreduce.V2.App.Webapp.App app
                                  , Configuration conf, Controller.RequestContext ctx, string title)
     : base(ctx)
 {
     this.app = app;
     Set(AppId, app.context.GetApplicationID().ToString());
     Set(RmWeb, Joiner.Join(MRWebAppUtil.GetYARNWebappScheme(), WebAppUtils.GetResolvedRMWebAppURLWithoutScheme
                                (conf, MRWebAppUtil.GetYARNHttpPolicy())));
 }