大数据部署-服务器环境配置


  • administrators

    服务器最低要求:

    硬盘 内存 硬盘 系统 权限
    4 核 8 GB 300 GB CentOS 7 / Ubuntu 18 部署时需要 su,建议使用 root
    4 核 8 GB 300 GB CentOS 7 / Ubuntu 18 部署时需要 su,建议使用 root
    4 核 8 GB 300 GB CentOS 7 / Ubuntu 18 部署时需要 su,建议使用 root
    4 核 8 GB 300 GB CentOS 7 / Ubuntu 18 部署时需要 su,建议使用 root
    4 核 8 GB 300 GB CentOS 7 / Ubuntu 18 部署时需要 su,建议使用 root

    网络要求:

    1.内网全互通
    2.公网暴露 7180 端口: Cloudera Management 登录端口。如果不需要外网访问,可以不暴露。

    我为什么需要这些配置级别的服务器?

    我将从资源占用和应用要求方面解释。

    资源占用:

    建立一套 CDH 的最终目的,必然是使其达到业务层面的 “可用” 水平,而不仅是拉起一套环境做一个毫无意义的展品,足够的配置才能保障足够的可用性。小成本低配置能不能拉起 CDH?仅部署的话,当然没问题。但如果单纯是让平台踉跄运行,都要榨干服务器最后一滴资源,这种是必然不能够称之为 “可用” 的。

    • **Yarn (MapReduce2 Included):**Apache Hadoop 资源管理系统+分布式计算系统

      • Yarn 的 NodeManager 服务默认同时也是最低建议中,规定了最大 Java 堆栈内存(JVM -Xmx)不应低于 1GB,且占用一个 CPU 核(vCore)。除此之外,默认的容器建议内存是 8 GB。此值跟跟 -Xmx 不一样,可以理解为 Xmx 限制软件运行时申请的内存,容器内存限制为最大内存限制,也就是 "可调度内存" 的大小,我通常会将此值设得尽可能大,以充分利用服务器空闲资源。
      • Yarn 中还包含 ResourceManager 服务,此服务的默认且最大内存(JVM -Xmx)建议也是 1GB
      • MapReduce 默认建议为占用一个 CPU 核(vCore),内存方面无建议配置与最低限制。
    • HDFS:(Apache Hadoop 分布式文件系统)

      • DataNode 的默认且最大建议内存(JVM -Xmx)为 1GB

      • Balancer 的默认且最大建议内存(JVM -Xmx)为 1GB

      • NameNode 的默认最大内存(JVM -Xmx)为 4GB,最低建议为 1GB,但通常来说对于小规模的集群 1GB 已经够用了,NN 的内存分配取决于数据块的大小。

        NameNode 还会配合 Secondary NameNode 工作,SNN 的主要存在意义在于存储 NN 中的 Metadata,类似于一个 Sidecar,当 NN 出现问题需要重启或重建时,SNN 中存储的 Metadata 可以助于 NN 快速恢复。通常 NN 和 SNN 建议内存设置为同样大小的值,但不要求。

    • Hive

      • Gateway 用于配置下发,此组件通常不需要太多内存,0.5GB 已经足够。
      • MetaStore 同样也不需要太多内存,默认是 50MB
      • Server2 是一个服务端接口,通常配合 Impala 使用,同样 0.25GB 也基本足够,但具体数值需要视数据量而定。
    • Impala

      • Daemon 是主要的操作进程,用于调用 Hive 实现查询等功能,通常只需要 50MB
      • Catalog Server 作为 metadata 的网关,当从 hive metastore 中抓取元数据时,会存储在这里。
      • StateStore 作为监控模组存在,会监控 Impala 组件的健康度,避免查询指令被分配给了非健康的 Daemon。
    • **Cloud Management Service:**集群管理中心

      • Alert Publisher 负责收集和反馈警告,默认内存需求是 0.25GB
      • EventServer 负责归档和展示日志信息,默认内存需求是 0.5GB
      • Host Monitor 负责监控主机的各种指标信息,默认最大内存(JVM -Xmx)需求是 1GB,非 Java 内存最大是 2GB
      • Service Monitor 负责监控服务部分的各种指标信息,默认最大内存(JVM -Xmx)需求是 1GB,非 Java 内存最大没有建议或默认值。

    应用要求:

    • Yarn
      • Yarn 要求至少包含三个 NodeManager。
    • HDFS
      • HDFS 要求至少包含三个 DataNode。
    • Hive
      • Hive 通常没有特殊要求,但建议所有节点都部署 Gateway。
    • Impala
      • Impala Daemon 要求与 DataNode 共同部署在同一节点上。
    • Cloud Management Service
      • 通常会空出一台专门的宿主机,只用来部署 CMS 服务。