对集群进行管理的几种方式
通过Ambari
通过日志系统查看
通过配置文件
通过命令行工具交互
Ambari对集群的管理
通过Ambari界面
Dashboard
Hosts:Ambari 所管理的机器列表
Service
Alert
操作级别:
Host Level Action(机器级别的操作)
Component Level Action(模块级别的操作)
Dashboard 监控
关键的运维指标(metrics)--metrics 是“度量,指标”的意思
在左侧的 Service 列表,
中间部分是 Service 的模块(Component)信息,也就是该 Service 有哪些模块及其数目。
右上角有个 Service Action 的按钮
link
NameNode UI、ResourceManage UI、HBase Master UI
http://unix191:50070/logs/ HDFS的NameNode的logs
http://unix192:8088/logs/ YARN的ResourceManage 的logs
http://unix191:16010/logs/ Hbase的logs
Alert介绍
Alert 告警级别 Status:
OK 、Warning、Critical、Unknown、None
Alert 告警类型:
WEB、Port、Metric、Aggregate 和 Script
表 1. Ambari 中的 Alert 类型对比
类型 用途 告警级别 阀值是否可配 单位
PORT 用来监测机器上的一个端口是否可用 OK, WARN, CRIT 是 秒
METRIC 用来监测 Metric 相关的配置属性 OK, WARN, CRIT 是 变量
AGGREGATE 用于收集其他某些 Alert 的状态 OK, WARN, CRIT 是 百分比
WEB 用于监测一个 WEB UI(URL)地址是否可用 OK, WARN, CRIT 否 无
SCRIPT Alert 的监测逻辑由一个自定义的 python 脚本执行 OK, CRIT 否 无
Port 类型的告警,Ambari 便会监测这个端口。然后依赖这个端口的响应时间,报告对应的 Alert 级别
每个 Alert 唯一的 id 标识
Amabri服务器需要使用数据库存放基本信息,而数据库默认为PostgreSQL
Kerberos security 一种应用对称密钥体制进行密钥管理的系统
Ambari 不支持在 GUI 上面卸载已安装的 Service。所以当一个 Service 不再需要的时候,用户没法删除掉该 Service。
幸运的是 Ambari 提供了 DELETE 的 Rest API,我们可以通过该 API 来删除 Ambari 中 Service。
不过这里需要注意,这个方法只是从 Ambari Service 中删除了 Service。这样一来,Ambari 的 GUI 界面中不再显示这个 Service。
但是 Service 本身还安装在 Agent 所在的机器。
如果用户需要彻底的清除掉这个 Service,仍需要手工的到每个机器卸载。
Ambari的配置文件
/var/lib/ambari-server/resources/stacks/HDP/2.0.6/services
单个service下通过配置service下存储的metainfo.xml来设置构成服务的component(组件)
以及部署组件的部署脚本、运行组件的角色名称、部署脚本的文件名称、部署脚本的语言种类等信息
日志文件的处理
查看
备份与更新<日志文件轮替>
日志文件的设置<信息等级>
日志文件服务器-日志文件分析程序
查看日志:
Linux操作系统日志,syslog将信息分为7个主要的等级,
INFO,NOTICE,WARNING,ERROR,CRIT,ALERT,EMERG还有两个特殊等级debug 和none
/var/log/cron
var/log/lastlog
var/log/secure
var/log/wtmp
cat /var/log/secure
Hadoop技术家族的日志:
cd /hadoop
cd /hadoop/zookeeper/version-2
ls
cat log.100000001
Spark的日志
cd /var/log/spark
ls
cat
通过配置文件进行设置
在Ambari中有对配置文件的一些参数进行设置。
目前了解配置文件所在的文件目录,以及常用的配置参数的使用即可。
通过命令行工具
命令行交互工具。
hadoop
一种是命令行方式,即Hadoop提供了一套与Linux文件命令类似的命令行工具;
另一种是JavaAPI,即利用Hadoop的Java库,采用编程的方式操作HDFS的文件
查看Linux上的文件
查询大文件的linux shell脚本
du -h --max-depth=2 /
HDFS在Linux上的文件位置 du -ha /hadoop/hdfs 统计占用磁盘空间
/hadoop/hdfs/data/
/hadoop/hdfs/namenode
HDFS查看文件
hadoop fs -help ##所有命令的详细帮助文档
查看HDFS文件下的文件
hadoop fs -ls /
hadoop fs -ls -R /
查看hdfs文件夹的大小
hadoop fs -du -s /spark-history
hadoop fs -du -s /hdp
查看目录下的文件
hadoop fs -ls /hdp
查看内容
hadoop fs -tail /tmp/entity-file-history
HBase
通过hbase shell进入Hbase数据库
Spark
spark-shell
pyspark
sparkR
spark-sql
Zookeeper
常用命令
echo conf | nc 172.19.100.191 2181
echo wchp | nc 172.19.100.191 2181
连接到Zookeeper命令行工具
zkCli.sh –server 172.19.100.191 2181
以上命令默认加入到了环境变量中去了,如果没能运行成功,则要么该命令不存在,要么没加入环境变量中。
参考:
Ambari 服务配置以及 Alert 详解 http://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari3/index.html
Ambari——大数据平台的搭建利器 http://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/index.html
Ambari-整体介绍 http://blog.csdn.net/dm520/article/details/44035241
Ambari之stack介绍 http://blog.csdn.net/dm520/article/details/44035475
ambari使用了那些技术 http://blog.csdn.net/dm520/article/details/44035997