问题导读
1.如何实现检测NodeManagers健康?
2.配置ssh互信的做用是什么?
3.启动、中止hdfs有哪些方式?
上篇:
hadoop【2.7.1】【多节点】集群配置【必知配置知识1】
http://www.aboutyun.com/thread-15609-1-1.html
监控NodeManagers健康
hadoop提供检测一个节点健康状态的机制,管理员能够配置NodeManager去周期性执行一个脚原本决定一个节点是否健康
管理员能够在这个脚本中作任何的状态监控从而决定此节点是否健康.若是脚本检测节点处于非健康状态,它必须打印必须打印error开头的标准输出。NodeManager 周期性检测,和检测输出,若是脚本输出包含错误(ERROR),如上所述,node的状态报告为unhealthy,该节点被资源管理器列为黑名单。该节点不会被分配任务。
尽管如此,若是资源管理器恢复健康状态,脚本继续运行,而且会自动被移除黑名单。节点脚本输出,提供给管理,在界面上节点不健康,以及在界面上显示节点健康时间。
下面参数能够被用来控制节点是否健康监视脚本在 etc/hadoop/yarn-site.xml.
html
参数
|
值
|
说明
|
yarn.nodemanager.health-checker.script.path
|
Node health script
|
节点健康状态监测脚本
|
yarn.nodemanager.health-checker.script.opts
|
Node health script options
|
脚本的选项来检查节点的健康状态
|
yarn.nodemanager.health-checker.script.interval-ms
|
Node health script interval
|
运行健康脚本的时间间隔。
|
yarn.nodemanager.health-checker.script.timeout-ms
|
Node health script timeout interval
|
健康脚本执行超时
|
若是仅本地磁盘故障,检测脚本不会给出error。NodeManager 有能力按期检测磁盘本地磁盘健康状态(特别是nodemanager-local-dirs 和nodemanager-log-dirs)。当目录损坏数达到配置的阀值(yarn.nodemanager.disk-health-checker.min-healthy-disks配置的)以后整个节点就会被标记为不正常的。同时这些信息也会上报给资源管理器(resource manager),检测脚本也会检测启动盘。
Slaves File
列出全部slave hostnames or IP 地址在etc/hadoop/slaves 文件, 一行一个。Helper 脚本 (described below) 使用etc/hadoop/slaves 文件运行命令在许多客户端. 它不须要任何基于Java的hadoop配置,为了使用此功能,ssh必须链接信任( passphraseless 或则其它方法,好比 Kerberos)的帐户运行hadoop
Hadoop 机架感知
许多hadoop具备感知功能和利用网络拓扑结构的性能和安全性。hadoop守护进程调用管理员配置模块获取集群slaves信息。更多信息查看 Rack Awareness ,开始启动hdfs以前,推荐配置集群机架感应。
日志
hadoop经过Apache Commons的日志框架使用 Apache log4j 做为日志。编辑 etc/hadoop/log4j.properties 文件定制hadoop守护进程日志配置好比log格式等
hadoop集群操做
全部的配置完成,分部署文件HADOOP_CONF_DIR目录分发到全部机器,他们在全部机器上路径是相同的。
建议hdfs和yarn使用独立的用户。hdfs执行hdfs用户,yarn使用yarn帐户。
hadoop启动
启动hadoop集群,须要启动hdfs和yarn
第一次启动hdfs,必需要格式化,格式化分布式文件系统做为HDFS:node
1
|
[hdfs]$ $HADOOP_PREFIX
/bin/hdfs
namenode -
format
<cluster_name>
|
启动hdfsweb
1
|
[hdfs]$ $HADOOP_PREFIX
/sbin/hadoop-daemon
.sh --config $HADOOP_CONF_DIR --script hdfs start namenode
|
启动datanodeshell
1
|
[hdfs]$ $HADOOP_PREFIX
/sbin/hadoop-daemons
.sh --config $HADOOP_CONF_DIR --script hdfs start datanode
|
若是 etc/hadoop/slaves 和 ssh配置了相互访问 (see Single Node Setup), 全部hdfs可使用下面命令安全
1
|
[hdfs]$ $HADOOP_PREFIX
/sbin/start-dfs
.sh
|
启动yarn用下面命令,在指定的ResourceManager做为yarnbash
1
|
[yarn]$ $HADOOP_YARN_HOME
/sbin/yarn-daemon
.sh --config $HADOOP_CONF_DIR start resourcemanager
|
运行下面命令在指定的客户端做为yarn启动NodeManager服务器
1
|
[yarn]$ $HADOOP_YARN_HOME
/sbin/yarn-daemons
.sh --config $HADOOP_CONF_DIR start nodemanager
|
启动独立WebAppProxy server. 运行 WebAppProxy server做为yarn.若是多台服务器使用负载均衡,则每台都需运行网络
1
|
[yarn]$ $HADOOP_YARN_HOME
/sbin/yarn-daemon
.sh --config $HADOOP_CONF_DIR start proxyserver
|
若是etc/hadoop/slaves和ssh配置,启动脚本以下:负载均衡
1
|
[yarn]$ $HADOOP_PREFIX
/sbin/start-yarn
.sh
|
启动MapReduce JobHistory Server
框架
1
|
[mapred]$ $HADOOP_PREFIX
/sbin/mr-jobhistory-daemon
.sh --config $HADOOP_CONF_DIR start historyserver
|
hadoop中止
中止namenode,用下面命令
1
|
[hdfs]$ $HADOOP_PREFIX
/sbin/hadoop-daemon
.sh --config $HADOOP_CONF_DIR --script hdfs stop namenode
|
中止datanode,用下面命令
1
|
[hdfs]$ $HADOOP_PREFIX
/sbin/hadoop-daemons
.sh --config $HADOOP_CONF_DIR --script hdfs stop datanode
|
若是etc/hadoop/slaves 和 ssh配置相互访问,用下面脚本中止
1
|
[hdfs]$ $HADOOP_PREFIX
/sbin/stop-dfs
.sh
|
中止ResourceManager用下面命令
1
|
[yarn]$ $HADOOP_YARN_HOME
/sbin/yarn-daemon
.sh --config $HADOOP_CONF_DIR stop resourcemanager
|
运行脚本中止NodeManager
1
|
[yarn]$ $HADOOP_YARN_HOME
/sbin/yarn-daemons
.sh --config $HADOOP_CONF_DIR stop nodemanager
|
若是etc/hadoop/slaves 和 ssh配置相互访问,则运行下面脚本
1
|
[yarn]$ $HADOOP_PREFIX
/sbin/stop-yarn
.sh
|
中止WebAppProxy server。运行WebAppProxy,若是多台服务器使用负载平衡,则每个都运行。
1
|
[yarn]$ $HADOOP_YARN_HOME
/sbin/yarn-daemon
.sh --config $HADOOP_CONF_DIR stop proxyserver
|
中止MapReduce JobHistory Server,使用下面命令
1
|
[mapred]$ $HADOOP_PREFIX
/sbin/mr-jobhistory-daemon
.sh --config $HADOOP_CONF_DIR stop historyserver
|
Web Interfaces
Daemon
|
Web Interface
|
Notes
|
NameNode
|
http://nn_host:port/
|
Default HTTP port is 50070.
|
ResourceManager
|
http://rm_host:port/
|
Default HTTP port is 8088.
|
MapReduce JobHistory Server
|
http://jhs_host:port/
|
Default HTTP port is 19888.
|
相关内容
hadoop入门手册1:hadoop【2.7.1】【多节点】集群配置【必知配置知识1】
hadoop入门手册2:hadoop【2.7.1】【多节点】集群配置【必知配置知识2】
hadoop入门手册3:Hadoop【2.7.1】初级入门之命令指南
hadoop入门手册4:Hadoop【2.7.1】初级入门之命令:文件系统shell1
hadoop入门手册5:Hadoop【2.7.1】初级入门之命令:文件系统shell2
hadoop2.X使用手册1:经过web端口查看主节点、slave1节点及集群运行状态
http://www.aboutyun.com/thread-7712-1-1.html