Hadoop/Spark 集群都启动了哪些 Java 程序
HDFS
org.apache.hadoop.hdfs.server.datanode.DataNode
org.apache.hadoop.hdfs.server.namenode.NameNode
## 非 HA 模式下才有 SecondaryNameNode,配置 HA 的话是两个 NameNode
org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode
## 配置 HA 模式才有 JournalNode,用于两个 NameNode 间的数据同步
org.apache.hadoop.hdfs.qjournal.server.JournalNode
## 配置 HA 模式才有 DFSZKFailoverController,用于 NameNode 的故障恢复
org.apache.hadoop.hdfs.tools.DFSZKFailoverController
MapReduce
## 记录 MapReduce Job 的历史信息
org.apache.hadoop.mapreduce.v2.hs.JobHistoryServer
YARN
org.apache.hadoop.yarn.server.nodemanager.NodeManager
org.apache.hadoop.yarn.server.resourcemanager.ResourceManager
## 使用了 App Timeline Server,用于记录 Yarn Job 的历史信息
org.apache.hadoop.yarn.server.applicationhistoryservice.ApplicationHistoryServer
Spark
## 用于记录 Spark Job 的历史信息
## 在 Job 运行时,可以通过 YARN UI 跳到 Spark Job UI
## 在 Job 结束后,需要通过 Spark History Server UI 查看 Job 的历史信息(默认端口是 18080)
org.apache.spark.deploy.history.HistoryServer
## 这是提交 Spark 应用的 Client
org.apache.spark.deploy.SparkSubmit \
--master yarn \
--deploy-mode cluster \
--conf spark.driver.memory=1G \
--conf spark.driver.extraClassPath=postgresql-xxx.jar \
--name Test \
--py-files Test.zip \
--jars postgresql-xxx.jar,spark-streaming-kafka-xxx.jar \
--executor-memory 1G \
--num-executors 4 \
Test.py
## 这里运行的就是 Driver 程序
## 每一个 Spark 应用都有一个 ApplicationMaster 运行 Driver
org.apache.spark.deploy.yarn.ApplicationMaster \
--class org.apache.spark.deploy.PythonRunner \
--primary-py-file Test.py \
--arg param \
--properties-file /mnt/resource/hadoop/yarn/local/usercache/spark/appcache/application_1574480275665_115552/container_e12_1574480275665_115552_01_000001/__spark_conf__/__spark_conf__.properties
## 这里运行的就是 Executor 程序
## 每一个 Spark 应用有一个或多个 Executor 程序
## 可以看到 Executor 会和对应的 Driver 链接上
org.apache.spark.executor.CoarseGrainedExecutorBackend \
--driver-url spark://CoarseGrainedScheduler@192.168.3.16:42742 \
--executor-id 3 \
--hostname hadoop-1 \
--cores 1 \
--app-id application_1574480275665_115552 \
--user-class-path file:/mnt/resource/hadoop/yarn/local/usercache/spark/appcache/application_1574480275665_115552/container_e12_1574480275665_115552_01_000004/__app__.jar \
--user-class-path file:/mnt/resource/hadoop/yarn/local/usercache/spark/appcache/application_1574480275665_115552/container_e12_1574480275665_115552_01_000004/postgresql-xxx.jar \
--user-class-path file:/mnt/resource/hadoop/yarn/local/usercache/spark/appcache/application_1574480275665_115552/container_e12_1574480275665_115552_01_000004/spark-streaming-kafka-xxx.jar \
......
Ambari
org.apache.ambari.server.controller.AmbariServer
ZooKeeper
org.apache.zookeeper.server.quorum.QuorumPeerMain conf/zoo.cfg
Kafka
kafka.Kafka config/server.properties
HBase
org.apache.hadoop.hbase.master.HMaster start
org.apache.hadoop.hbase.regionserver.HRegionServer start
org.apache.phoenix.queryserver.server.Main
分类:
Spark
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界