Example #1
0
        /// <exception cref="System.Exception"/>
        protected internal virtual void StartServer()
        {
            Configuration conf = GetConfig();
            YarnRPC       rpc  = YarnRPC.Create(conf);

            this.server = (RPC.Server)rpc.GetServer(typeof(ResourceManagerAdministrationProtocol
                                                           ), this, masterServiceBindAddress, conf, null, conf.GetInt(YarnConfiguration.RmAdminClientThreadCount
                                                                                                                      , YarnConfiguration.DefaultRmAdminClientThreadCount));
            // Enable service authorization?
            if (conf.GetBoolean(CommonConfigurationKeysPublic.HadoopSecurityAuthorization, false
                                ))
            {
                RefreshServiceAcls(GetConfiguration(conf, YarnConfiguration.HadoopPolicyConfigurationFile
                                                    ), RMPolicyProvider.GetInstance());
            }
            if (rmContext.IsHAEnabled())
            {
                RPC.SetProtocolEngine(conf, typeof(HAServiceProtocolPB), typeof(ProtobufRpcEngine
                                                                                ));
                HAServiceProtocolServerSideTranslatorPB haServiceProtocolXlator = new HAServiceProtocolServerSideTranslatorPB
                                                                                      (this);
                BlockingService haPbService = HAServiceProtocolProtos.HAServiceProtocolService.NewReflectiveBlockingService
                                                  (haServiceProtocolXlator);
                server.AddProtocol(RPC.RpcKind.RpcProtocolBuffer, typeof(HAServiceProtocol), haPbService
                                   );
            }
            this.server.Start();
            conf.UpdateConnectAddr(YarnConfiguration.RmBindHost, YarnConfiguration.RmAdminAddress
                                   , YarnConfiguration.DefaultRmAdminAddress, server.GetListenerAddress());
        }
Example #2
0
        private IPEndPoint StartAndGetRPCServerAddress(IPEndPoint serverAddress)
        {
            Configuration conf = new Configuration();

            try
            {
                RPC.SetProtocolEngine(conf, typeof(HAServiceProtocolPB), typeof(ProtobufRpcEngine
                                                                                ));
                HAServiceProtocolServerSideTranslatorPB haServiceProtocolXlator = new HAServiceProtocolServerSideTranslatorPB
                                                                                      (new DummyHAService.MockHAProtocolImpl(this));
                BlockingService haPbService = HAServiceProtocolProtos.HAServiceProtocolService.NewReflectiveBlockingService
                                                  (haServiceProtocolXlator);
                Server server = new RPC.Builder(conf).SetProtocol(typeof(HAServiceProtocolPB)).SetInstance
                                    (haPbService).SetBindAddress(serverAddress.GetHostName()).SetPort(serverAddress.
                                                                                                      Port).Build();
                server.Start();
                return(NetUtils.GetConnectAddress(server));
            }
            catch (IOException)
            {
                return(null);
            }
        }