Hadoop集群摆设教程-P4

[复制链接]
发表于 2025-9-23 02:30:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
Hadoop集群摆设教程-P4

Hadoop集群摆设教程(续)

第十三章:Hadoop生态体系组件集成

13.1 Hive数据堆栈集成


  • 安装设置步骤:
    1. # 下载解压
    2. tar -xzvf apache-hive-3.1.2-bin.tar.gz
    3. export HIVE_HOME=/path/to/hive
    4. # 配置hive-site.xml
    5. <configuration>
    6.   <property>
    7.     <name>javax.jdo.option.ConnectionURL</name>
    8.     <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true</value>
    9.   </property>
    10.   <property>
    11.     <name>hive.metastore.warehouse.dir</name>
    12.     <value>/user/hive/warehouse</value>
    13.   </property>
    14. </configuration>
    复制代码
  • 启动服务:
    1. schematool -initSchema -dbType mysql
    2. hive --service metastore &
    3. hive
    复制代码
13.2 HBase集成


  • 设置要点:
    1. <!-- 在hbase-site.xml中 -->
    2. <property>
    3.   <name>hbase.rootdir</name>
    4.   <value>hdfs://master:9000/hbase</value>
    5. </property>
    6. <property>
    7.   <name>hbase.cluster.distributed</name>
    8.   <value>true</value>
    9. </property>
    复制代码
  • 验证集成:
    1. hbase shell
    2. create 'test', 'cf'
    3. list
    复制代码
第十四章:性能基准测试

14.1 测试工具利用

14.2 性能指标分析

测试范例关键指标优化方向I/O测试吞吐量(MB/s)调解dfs.block.sizeCPU测试处理时间(s)优化map/reduce slots网络测试跨节点传输速率调解机架感知设置第十五章:生产环境最佳实践

15.1 硬件设置发起


  • Master节点:

    • 64GB+内存
    • RAID1 SSD体系盘
    • 双万兆网卡绑定

  • Worker节点:

    • 128GB+内存
    • 12+核心CPU
    • 10+TB JBOD磁盘

15.2 运维规范


  • 变更管理流程:

    • 修改设置前备份原文件
    • 先在测试集群验证
    • 利用滚动重启战略

  • 监控监控指标阈值:
    1. hadoop jar <span class="katex--inline"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>H</mi><mi>A</mi><mi>D</mi><mi>O</mi><mi>O</mi><msub><mi>P</mi><mi>H</mi></msub><mi>O</mi><mi>M</mi><mi>E</mi><mi mathvariant="normal">/</mi><mi>s</mi><mi>h</mi><mi>a</mi><mi>r</mi><mi>e</mi><mi mathvariant="normal">/</mi><mi>h</mi><mi>a</mi><mi>d</mi><mi>o</mi><mi>o</mi><mi>p</mi><mi mathvariant="normal">/</mi><mi>m</mi><mi>a</mi><mi>p</mi><mi>r</mi><mi>e</mi><mi>d</mi><mi>u</mi><mi>c</mi><mi>e</mi><mi mathvariant="normal">/</mi><mi>h</mi><mi>a</mi><mi>d</mi><mi>o</mi><mi>o</mi><mi>p</mi><mo>−</mo><mi>m</mi><mi>a</mi><mi>p</mi><mi>r</mi><mi>e</mi><mi>d</mi><mi>u</mi><mi>c</mi><mi>e</mi><mo>−</mo><mi>c</mi><mi>l</mi><mi>i</mi><mi>e</mi><mi>n</mi><mi>t</mi><mo>−</mo><mi>j</mi><mi>o</mi><mi>b</mi><mi>c</mi><mi>l</mi><mi>i</mi><mi>e</mi><mi>n</mi><mi>t</mi><mo>−</mo><mo>∗</mo><mo>−</mo><mi>t</mi><mi>e</mi><mi>s</mi><mi>t</mi><mi>s</mi><mi mathvariant="normal">.</mi><mi>j</mi><mi>a</mi><mi>r</mi><mi>T</mi><mi>e</mi><mi>s</mi><mi>t</mi><mi>D</mi><mi>F</mi><mi>S</mi><mi>I</mi><mi>O</mi><mtext> </mtext><mo>−</mo><mi>w</mi><mi>r</mi><mi>i</mi><mi>t</mi><mi>e</mi><mo>−</mo><mi>n</mi><mi>r</mi><mi>F</mi><mi>i</mi><mi>l</mi><mi>e</mi><mi>s</mi><mn>10</mn><mo>−</mo><mi>f</mi><mi>i</mi><mi>l</mi><mi>e</mi><mi>S</mi><mi>i</mi><mi>z</mi><mi>e</mi><mn>1</mn><mi>G</mi><mi>B</mi><mo><</mo><mi mathvariant="normal">/</mi><mi>c</mi><mi>o</mi><mi>d</mi><mi>e</mi><mo>></mo><mo><</mo><mi mathvariant="normal">/</mi><mi>p</mi><mi>r</mi><mi>e</mi><mo>></mo><mo><</mo><mi mathvariant="normal">/</mi><mi>l</mi><mi>i</mi><mo>></mo><mo><</mo><mi>l</mi><mi>i</mi><mo>></mo><mo><</mo><mi>p</mi><mo>></mo><mo><</mo><mi>s</mi><mi>t</mi><mi>r</mi><mi>o</mi><mi>n</mi><mi>g</mi><mo>></mo><mi>T</mi><mi>e</mi><mi>r</mi><mi>a</mi><mi>S</mi><mi>o</mi><mi>r</mi><mi>t</mi><mtext>测试</mtext><mo><</mo><mi mathvariant="normal">/</mi><mi>s</mi><mi>t</mi><mi>r</mi><mi>o</mi><mi>n</mi><mi>g</mi><mo>></mo><mtext>:</mtext><mo><</mo><mi mathvariant="normal">/</mi><mi>p</mi><mo>></mo><mo><</mo><mi>p</mi><mi>r</mi><mi>e</mi><mo>></mo><mo><</mo><mi>c</mi><mi>o</mi><mi>d</mi><mi>e</mi><mi>c</mi><mi>l</mi><mi>a</mi><mi>s</mi><mi>s</mi><mo>=</mo><mi mathvariant="normal">"</mi><mi>l</mi><mi>a</mi><mi>n</mi><mi>g</mi><mi>u</mi><mi>a</mi><mi>g</mi><mi>e</mi><mo>−</mo><mi>b</mi><mi>a</mi><mi>s</mi><mi>h</mi><mi mathvariant="normal">"</mi><mo>></mo><mi>h</mi><mi>a</mi><mi>d</mi><mi>o</mi><mi>o</mi><mi>p</mi><mi>j</mi><mi>a</mi><mi>r</mi></mrow><annotation encoding="application/x-tex">HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-*-tests.jar TestDFSIO \
    2. -write -nrFiles 10 -fileSize 1GB
    3. </code></pre>
    4. </li>
    5. <li>
    6. <p><strong>TeraSort测试</strong>:</p>
    7. <pre><code class="language-bash">hadoop jar </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mord mathnormal" style="margin-right:0.08125em;">H</span><span class="mord mathnormal">A</span><span class="mord mathnormal" style="margin-right:0.02778em;">D</span><span class="mord mathnormal" style="margin-right:0.02778em;">OO</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.13889em;">P</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3283em;"><span style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight" style="margin-right:0.08125em;">H</span></span></span></span><span class="vlist-s">​</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span><span class="mord mathnormal" style="margin-right:0.05764em;">OME</span><span class="mord">/</span><span class="mord mathnormal">s</span><span class="mord mathnormal">ha</span><span class="mord mathnormal">re</span><span class="mord">/</span><span class="mord mathnormal">ha</span><span class="mord mathnormal">d</span><span class="mord mathnormal">oo</span><span class="mord mathnormal">p</span><span class="mord">/</span><span class="mord mathnormal">ma</span><span class="mord mathnormal">p</span><span class="mord mathnormal">re</span><span class="mord mathnormal">d</span><span class="mord mathnormal">u</span><span class="mord mathnormal">ce</span><span class="mord">/</span><span class="mord mathnormal">ha</span><span class="mord mathnormal">d</span><span class="mord mathnormal">oo</span><span class="mord mathnormal">p</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"><span class="mord mathnormal">ma</span><span class="mord mathnormal">p</span><span class="mord mathnormal">re</span><span class="mord mathnormal">d</span><span class="mord mathnormal">u</span><span class="mord mathnormal">ce</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.0833em;"><span class="mord mathnormal">c</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">i</span><span class="mord mathnormal">e</span><span class="mord mathnormal">n</span><span class="mord mathnormal">t</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"><span class="mord mathnormal" style="margin-right:0.05724em;">j</span><span class="mord mathnormal">o</span><span class="mord mathnormal">b</span><span class="mord mathnormal">c</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">i</span><span class="mord mathnormal">e</span><span class="mord mathnormal">n</span><span class="mord mathnormal">t</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.6667em;vertical-align:-0.0833em;"><span class="mord">∗</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.8778em;vertical-align:-0.1944em;"><span class="mord mathnormal">t</span><span class="mord mathnormal">es</span><span class="mord mathnormal">t</span><span class="mord mathnormal">s</span><span class="mord">.</span><span class="mord mathnormal">ja</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span><span class="mord mathnormal" style="margin-right:0.13889em;">T</span><span class="mord mathnormal">es</span><span class="mord mathnormal">t</span><span class="mord mathnormal" style="margin-right:0.02778em;">D</span><span class="mord mathnormal" style="margin-right:0.05764em;">FS</span><span class="mord mathnormal" style="margin-right:0.07847em;">I</span><span class="mord mathnormal" style="margin-right:0.02778em;">O</span><span class="mspace"> </span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.7429em;vertical-align:-0.0833em;"><span class="mord mathnormal" style="margin-right:0.02691em;">w</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span><span class="mord mathnormal">i</span><span class="mord mathnormal">t</span><span class="mord mathnormal">e</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.0833em;"><span class="mord mathnormal">n</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span><span class="mord mathnormal" style="margin-right:0.13889em;">F</span><span class="mord mathnormal">i</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">es</span><span class="mord">10</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"><span class="mord mathnormal" style="margin-right:0.10764em;">f</span><span class="mord mathnormal">i</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">e</span><span class="mord mathnormal" style="margin-right:0.05764em;">S</span><span class="mord mathnormal">i</span><span class="mord mathnormal">ze</span><span class="mord">1</span><span class="mord mathnormal" style="margin-right:0.05017em;">GB</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel"><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mord">/</span><span class="mord mathnormal">co</span><span class="mord mathnormal">d</span><span class="mord mathnormal">e</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mord">/</span><span class="mord mathnormal">p</span><span class="mord mathnormal">re</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mord">/</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">i</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.7335em;vertical-align:-0.0391em;"><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">i</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.7335em;vertical-align:-0.1944em;"><span class="mord mathnormal">p</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.8095em;vertical-align:-0.1944em;"><span class="mord mathnormal">s</span><span class="mord mathnormal">t</span><span class="mord mathnormal">ro</span><span class="mord mathnormal">n</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">></span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.7224em;vertical-align:-0.0391em;"><span class="mord mathnormal" style="margin-right:0.13889em;">T</span><span class="mord mathnormal" style="margin-right:0.02778em;">er</span><span class="mord mathnormal">a</span><span class="mord mathnormal" style="margin-right:0.05764em;">S</span><span class="mord mathnormal" style="margin-right:0.02778em;">or</span><span class="mord mathnormal">t</span><span class="mord cjk_fallback">测试</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel"><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mord">/</span><span class="mord mathnormal">s</span><span class="mord mathnormal">t</span><span class="mord mathnormal">ro</span><span class="mord mathnormal">n</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">></span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.7224em;vertical-align:-0.0391em;"><span class="mord cjk_fallback">:</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel"><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mord">/</span><span class="mord mathnormal">p</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.7335em;vertical-align:-0.1944em;"><span class="mord mathnormal">p</span><span class="mord mathnormal">re</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">><</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.6944em;"><span class="mord mathnormal">co</span><span class="mord mathnormal">d</span><span class="mord mathnormal">ec</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">a</span><span class="mord mathnormal">ss</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">=</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"><span class="mord">"</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">an</span><span class="mord mathnormal">gu</span><span class="mord mathnormal">a</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mord mathnormal">e</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.7335em;vertical-align:-0.0391em;"><span class="mord mathnormal">ba</span><span class="mord mathnormal">s</span><span class="mord mathnormal">h</span><span class="mord">"</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">></span><span class="mspace" style="margin-right:0.2778em;"></span><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"><span class="mord mathnormal">ha</span><span class="mord mathnormal">d</span><span class="mord mathnormal">oo</span><span class="mord mathnormal">p</span><span class="mord mathnormal">ja</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span></span></span></span></span>HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar teragen 10000000 /tera/input
    8. hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar terasort /tera/input /tera/output
    9. </span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>
    复制代码
第十六章:故障处理手册

16.1 常见题目办理


  • DataNode不注册:
    1. # NameNode堆内存使用 >80% 告警
    2. # DataNode磁盘使用 >85% 告警
    3. # 任务失败率 >5% 告警
    复制代码
  • 作业卡住:
    1. # 检查日志日志中的异常
    2. grep -i "exception" $HADOOP_HOME/logs/hadoop-*-datanode-*.log
    3. # 常见解决步骤
    4. hdfs dfsadmin -refreshNodes
    5. systemctl restart hadoop-datanode
    复制代码
16.2 告急规复流程


  • NameNode故障:
    1. # 检查资源瓶颈
    2. yarn application -list
    3. yarn application -kill <ApplicationId>
    4. # 调整资源配置
    复制代码
  • 数据修复:
    1. # 切换到Standby NameNode
    2. hdfs haadmin -failover nn1 nn2
    3. # 从最新checkpoint恢复
    4. hdfs namenode -importCheckpoint
    复制代码

回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表