1. 什么是Ambari?
Ambari是一个开源的Hadoop管理工具,提供了一个Web界面来管理和监控Hadoop集群的各个组件。Hadoop定级项目之一。
2. 主要角色有哪些?
Ambari主要包括以下角色:
- Ambari Server:Ambari的核心组件,负责管理和监控整个集群。
- Ambari Agent:在每个集群节点上运行的代理组件,负责收集节点信息并向Ambari Server报告。
- Ambari Web:提供Web界面,并与Ambari Server进行通讯。
3. 涉及到的角色有什么功能?
- Ambari Server:提供集群管理和监控服务,负责将配置信息下发到各个节点,以及处理节点上报的信息。
- Ambari Agent:收集节点信息并向Ambari Server报告,执行Ambari Server下发的命令,例如安装和配置服务组件等。
- Ambari Web:提供Web界面,让管理员可以方便地管理和监控集群,例如添加和删除服务组件、配置集群参数、查看指标等。
4. 角色之间的最佳通讯方式有哪些?
Ambari Agent与Ambari Server之间的通讯使用HTTPS协议进行加密,通讯端口默认为8440。
Ambari Server与Ambari Web之间的通讯使用HTTP或HTTPS协议,通讯端口默认为8080或8443。
5. 监控的指标有哪些?
Ambari可以监控Hadoop集群的各种指标,包括以下方面:
- CPU和内存使用率
- 磁盘空间使用率
- 网络带宽使用率
- HDFS存储使用率和复制因子
- YARN应用程序和队列的状态
- MapReduce作业的状态和进度
- ZooKeeper节点状态
- Hive和HBase服务的状态
- Kafka和Storm服务的状态
6. 有哪些进程以及说明进程的主要作用?
- Ambari Server:ambari-server进程,负责管理和监控整个集群。
- Ambari Agent:ambari-agent进程,在每个集群节点上运行的代理组件,负责收集节点信息并向Ambari Server报告。
- Hadoop服务组件:例如HDFS、YARN、MapReduce、Hive、HBase、Kafka等,每个服务组件都有自己的进程或者进程组。
- 数据库服务:Ambari Server需要使用数据库存储配置信息和历史数据,可以选择使用MySQL、PostgreSQL等数据库。
- Web服务:Ambari Web使用Jetty或者Tomcat等Web服务器提供Web界面服务。