手动修改配置建议书 本章节主要介绍翼MapReduce服务的配置修改建议说明。 操作场景 当节点组内ECS实例的规格(vCPU和内存)无法满足您的业务需求时,您可以使用配置升级功能提升ECS实例规格。升级配置后需要手动修改HDFS、YARN和Spark等服务的配置信息。本文为您介绍如何在翼MR Manager的“配置管理”页面修改配置项。 前提条件 已创建集群。 操作步骤 在翼MR Manager中,单击“运维与配置”。 1. 单击“配置管理”。 2. 选择“所选集群服务”,点击查询,即可在当前页面修改配置信息。 配置修改建议说明 1. Doris:Doris所在节点配置升级后,Doris FE建议使用节点一半内存。 2. Elasticsearch:一个ES节点,内存建议不超过64G。ES所在节点配置升级后,ES会自动根据节点情况设置内存值,一般无须用户手动修改,但需要重启集群。如果想手动设置,可以修改jvm.options文件配置Xms30g、Xmx30g参数,并重启集群。 3. HBase:HBase所在节点配置升级后,修改建议如下: hbasesite.xml:hbase.regionserver.handler.count 说明 一般跟CPU核数相同。 hbaseenv.sh:export HBASEMASTEROPTS :"Xmsg Xmxg" 说明 master不消耗很多内存,一般默认不添加或者分配2~8G左右。 hbaseenv.sh:export HBASEREGIONSERVEROPTS:"Xmsg Xmxg " 说明 regionserver需要较多内存,一般配置内存配额的一半或更多。 4. HDFS:HDFS所在节点配置升级后,可以根据hadoopenv.sh 参数配置进行,通过调整服务的内存大小调整服务的性能,如Xmx20g Xms20g Xmn4g,然后重启服务。NameNode 建议文件、目录、数据块之和1亿,配置50G。 5. Hive:Hive所在节点配置升级后,可以通过hiveenv.sh统一参数配置来进行,也可以在作业提交时使用额外参数指定来进行。通过调整服务的内存大小调整服务的性能,如Xmx20g Xms20g Xmn4g,然后重启服务。内存大小可以根据机器的总内存而定,建议初始值为总内存大小的10%,后续根据性能需求调整。 6. Kafka:Kafka所在节点配置升级后,建议配置如下: kafkaenv.sh设置jvm配置参数:调整jvm堆大小,通过调整参数:export KAFKAHEAPOPTS"Xmx20G Xms20G Xmn4g"设置堆大小。 server.properties文件建议修改的配置项: num.io.threads:修改写磁盘的线程数,建议配置为CPU核数的50%; num.replica.fetchers:修改副本拉取线程数,建议配置为CPU核数50%的1/3; num.network.threads:修改数据传输线程数,建议配置为CPU核数的50%的2/3; replica.fetch.max.bytes:副本拉取数据量的大小。内存增加,可以适当加大该值; socket.send.buffer.bytes:调整socket发送的数据量。内存增加,可以适当加大该值; socket.receive.buffer.bytes:调整socke接受的数据量。内存增加,可以适当加大该值; socket.request.max.bytes:socket请求的数据量。内存增加,可以适当加大该值。 7. Kerberos:建议保持默认值,无需修改配置。 8. Kibana:Kibana是一个基于NodeJS的单页web应用,一般情况下,对内存CPU占用很少,无须修改内存、CPU等配置。 9. Kyuubi:Kyuubi一般情况下,对内存CPU占用很少,无须修改内存、CPU等配置。 10. OpenLDAP:建议保持默认值,无需修改配置。 11. Ranger:Ranger所在节点配置升级后,修改建议如下: rangeradmin通过{installdir}/ews/rangeradminservices.sh中变量 rangeradminmaxheapsize的值修改JMX,JAVAOPTS修改Xmx、Xmn等JVM参数,一般设置18g,1K policy建议设置为1G,1W policy建议设置为8G。 rangerusersync通过/{installdir}/rangerusersyncservices.sh中变量rangerusersyncmaxheapsize 的值修改JMX,JAVAOPTS修改Xmx Xmn等JVM参数,一般设置18g,1K policy建议设置为1G,1W policy建议设置为8G。 12. Spark:Spark所在节点配置升级后,修改建议如下: spark.history.kerberos.principal和spark.history.kerberos.keytab为spark读写eventLog的租户,用户如有特殊需求自行更改。 spark.yarn.historyServer.address: 说明了history server的地址,用户如有特殊需求自行更改。 spark.dynamicAllocation.enabled 和 spark.dynamicAllocation.maxExecutors 分别控制动态和动态开启下能使用的最大资源,用户如有特殊需求自行更改。 spark.executor.cores 和 spark.executor.memory 确保spark.executor的每一个core分配到2~4g内存,标准是4g,具体视情况而定,设置core的memory设置过小executor容易oom。 13. Trino:Trino的服务包括coordinator和worker。Trino所在节点配置升级后,可以根据jvm.config参数配置进行,通过调整服务的内存大小调整服务的性能,如Xmx128g Xms128g,然后重启服务。 14. YARN:YARN所在节点配置升级后,可以根据yarnenv.sh 参数配置进行,通过调整服务的内存大小来调整服务的性能,如Xmx20g Xms20g Xmn4g,然后重启服务。NM用于集群中作业的内存和CPU,需要修改NodeManager节点的yarnsite.xml中的yarn.nodemanager.resource.memorymb的值,该值用于所有作业的最多可用内存;以及yarn.nodemanager.resource.cpuvcores的值,该值用于所有作业的最多可用虚拟CPU核数。 15. ZooKeeper:ZooKeeper所在节点配置升级后,可通过配置java.env文件,在其中添加:export ZKSERVERHEAP2048(这里设置的单位默认是MB)。