Beispiel #1
0
        public static Org.Apache.Hadoop.Hdfs.Nfs.Nfs3.Nfs3Metrics Create(Configuration conf
                                                                         , string gatewayName)
        {
            string        sessionId = conf.Get(DFSConfigKeys.DfsMetricsSessionIdKey);
            MetricsSystem ms        = DefaultMetricsSystem.Instance();
            JvmMetrics    jm        = JvmMetrics.Create(gatewayName, sessionId, ms);

            // Percentile measurement is [50th,75th,90th,95th,99th] currently
            int[] intervals = conf.GetInts(NfsConfigKeys.NfsMetricsPercentilesIntervalsKey);
            return(ms.Register(new Org.Apache.Hadoop.Hdfs.Nfs.Nfs3.Nfs3Metrics(gatewayName, sessionId
                                                                               , intervals, jm)));
        }
Beispiel #2
0
        public static Org.Apache.Hadoop.Hdfs.Server.Namenode.Metrics.NameNodeMetrics Create
            (Configuration conf, HdfsServerConstants.NamenodeRole r)
        {
            string        sessionId   = conf.Get(DFSConfigKeys.DfsMetricsSessionIdKey);
            string        processName = r.ToString();
            MetricsSystem ms          = DefaultMetricsSystem.Instance();
            JvmMetrics    jm          = JvmMetrics.Create(processName, sessionId, ms);

            // Percentile measurement is off by default, by watching no intervals
            int[] intervals = conf.GetInts(DFSConfigKeys.DfsMetricsPercentilesIntervalsKey);
            return(ms.Register(new Org.Apache.Hadoop.Hdfs.Server.Namenode.Metrics.NameNodeMetrics
                                   (processName, sessionId, intervals, jm)));
        }
Beispiel #3
0
        public static Org.Apache.Hadoop.Hdfs.Server.Datanode.Metrics.DataNodeMetrics Create
            (Configuration conf, string dnName)
        {
            string        sessionId = conf.Get(DFSConfigKeys.DfsMetricsSessionIdKey);
            MetricsSystem ms        = DefaultMetricsSystem.Instance();
            JvmMetrics    jm        = JvmMetrics.Create("DataNode", sessionId, ms);
            string        name      = "DataNodeActivity-" + (dnName.IsEmpty() ? "UndefinedDataNodeName" +
                                                             DFSUtil.GetRandom().Next() : dnName.Replace(':', '-'));

            // Percentile measurement is off by default, by watching no intervals
            int[] intervals = conf.GetInts(DFSConfigKeys.DfsMetricsPercentilesIntervalsKey);
            return(ms.Register(name, null, new Org.Apache.Hadoop.Hdfs.Server.Datanode.Metrics.DataNodeMetrics
                                   (name, sessionId, intervals, jm)));
        }
Beispiel #4
0
        /// <summary>Start listening for edits via RPC.</summary>
        /// <exception cref="System.IO.IOException"/>
        public virtual void Start()
        {
            Preconditions.CheckState(!IsStarted(), "JN already running");
            ValidateAndCreateJournalDir(localDir);
            DefaultMetricsSystem.Initialize("JournalNode");
            JvmMetrics.Create("JournalNode", conf.Get(DFSConfigKeys.DfsMetricsSessionIdKey),
                              DefaultMetricsSystem.Instance());
            IPEndPoint socAddr = JournalNodeRpcServer.GetAddress(conf);

            SecurityUtil.Login(conf, DFSConfigKeys.DfsJournalnodeKeytabFileKey, DFSConfigKeys
                               .DfsJournalnodeKerberosPrincipalKey, socAddr.GetHostName());
            RegisterJNMXBean();
            httpServer = new JournalNodeHttpServer(conf, this);
            httpServer.Start();
            httpServerURI = httpServer.GetServerURI().ToString();
            rpcServer     = new JournalNodeRpcServer(conf, this);
            rpcServer.Start();
        }
Beispiel #5
0
 internal static NodeManagerMetrics Create(MetricsSystem ms)
 {
     JvmMetrics.Create("NodeManager", null, ms);
     return(ms.Register(new NodeManagerMetrics()));
 }
Beispiel #6
0
        /// <summary>Initialize SecondaryNameNode.</summary>
        /// <exception cref="System.IO.IOException"/>
        private void Initialize(Configuration conf, SecondaryNameNode.CommandLineOpts commandLineOpts
                                )
        {
            IPEndPoint infoSocAddr     = GetHttpAddress(conf);
            string     infoBindAddress = infoSocAddr.GetHostName();

            UserGroupInformation.SetConfiguration(conf);
            if (UserGroupInformation.IsSecurityEnabled())
            {
                SecurityUtil.Login(conf, DFSConfigKeys.DfsSecondaryNamenodeKeytabFileKey, DFSConfigKeys
                                   .DfsSecondaryNamenodeKerberosPrincipalKey, infoBindAddress);
            }
            // initiate Java VM metrics
            DefaultMetricsSystem.Initialize("SecondaryNameNode");
            JvmMetrics.Create("SecondaryNameNode", conf.Get(DFSConfigKeys.DfsMetricsSessionIdKey
                                                            ), DefaultMetricsSystem.Instance());
            // Create connection to the namenode.
            shouldRun     = true;
            nameNodeAddr  = NameNode.GetServiceAddress(conf, true);
            this.conf     = conf;
            this.namenode = NameNodeProxies.CreateNonHAProxy <NamenodeProtocol>(conf, nameNodeAddr
                                                                                , UserGroupInformation.GetCurrentUser(), true).GetProxy();
            // initialize checkpoint directories
            fsName              = GetInfoServer();
            checkpointDirs      = FSImage.GetCheckpointDirs(conf, "/tmp/hadoop/dfs/namesecondary");
            checkpointEditsDirs = FSImage.GetCheckpointEditsDirs(conf, "/tmp/hadoop/dfs/namesecondary"
                                                                 );
            checkpointImage = new SecondaryNameNode.CheckpointStorage(conf, checkpointDirs, checkpointEditsDirs
                                                                      );
            checkpointImage.RecoverCreate(commandLineOpts.ShouldFormat());
            checkpointImage.DeleteTempEdits();
            namesystem = new FSNamesystem(conf, checkpointImage, true);
            // Disable quota checks
            namesystem.dir.DisableQuotaChecks();
            // Initialize other scheduling parameters from the configuration
            checkpointConf = new CheckpointConf(conf);
            IPEndPoint httpAddr        = infoSocAddr;
            string     httpsAddrString = conf.GetTrimmed(DFSConfigKeys.DfsNamenodeSecondaryHttpsAddressKey
                                                         , DFSConfigKeys.DfsNamenodeSecondaryHttpsAddressDefault);
            IPEndPoint httpsAddr = NetUtils.CreateSocketAddr(httpsAddrString);

            HttpServer2.Builder builder = DFSUtil.HttpServerTemplateForNNAndJN(conf, httpAddr
                                                                               , httpsAddr, "secondary", DFSConfigKeys.DfsSecondaryNamenodeKerberosInternalSpnegoPrincipalKey
                                                                               , DFSConfigKeys.DfsSecondaryNamenodeKeytabFileKey);
            nameNodeStatusBeanName = MBeans.Register("SecondaryNameNode", "SecondaryNameNodeInfo"
                                                     , this);
            infoServer = builder.Build();
            infoServer.SetAttribute("secondary.name.node", this);
            infoServer.SetAttribute("name.system.image", checkpointImage);
            infoServer.SetAttribute(JspHelper.CurrentConf, conf);
            infoServer.AddInternalServlet("imagetransfer", ImageServlet.PathSpec, typeof(ImageServlet
                                                                                         ), true);
            infoServer.Start();
            Log.Info("Web server init done");
            HttpConfig.Policy policy = DFSUtil.GetHttpPolicy(conf);
            int connIdx = 0;

            if (policy.IsHttpEnabled())
            {
                IPEndPoint httpAddress = infoServer.GetConnectorAddress(connIdx++);
                conf.Set(DFSConfigKeys.DfsNamenodeSecondaryHttpAddressKey, NetUtils.GetHostPortString
                             (httpAddress));
            }
            if (policy.IsHttpsEnabled())
            {
                IPEndPoint httpsAddress = infoServer.GetConnectorAddress(connIdx);
                conf.Set(DFSConfigKeys.DfsNamenodeSecondaryHttpsAddressKey, NetUtils.GetHostPortString
                             (httpsAddress));
            }
            legacyOivImageDir = conf.Get(DFSConfigKeys.DfsNamenodeLegacyOivImageDirKey);
            Log.Info("Checkpoint Period   :" + checkpointConf.GetPeriod() + " secs " + "(" +
                     checkpointConf.GetPeriod() / 60 + " min)");
            Log.Info("Log Size Trigger    :" + checkpointConf.GetTxnCount() + " txns");
        }