namenode启动流程

启动命令
hadoop-daemon.sh start namenode

hdfs.sh

 namenode)
      HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
      HADOOP_CLASSNAME='org.apache.hadoop.hdfs.server.namenode.NameNode'
      hadoop_add_param HADOOP_OPTS hdfs.audit.logger "-Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER}"

调用org.apache.hadoop.hdfs.server.namenode.NameNode的main方法

  try {
      StringUtils.startupShutdownMessage(NameNode.class, argv, LOG);
      NameNode namenode = createNameNode(argv, null);
      if (namenode != null) {
        namenode.join();
      }
    } catch (Throwable e) {
      LOG.error("Failed to start namenode.", e);
      terminate(1, e);
    }

主要就是createNameNode方法
setStartupOption(conf, startOpt);
new NameNode(conf)
里面主要是initialize(getConf());
里面三个主要方法
startHttpServer(conf);
loadNamesystem(conf)
createRpcServer(conf)


版权声明:本文为jshazhang原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。