{"id":16056,"date":"2025-04-18T22:36:49","date_gmt":"2025-04-18T14:36:49","guid":{"rendered":"https:\/\/www.wsisp.com\/helps\/16056.html"},"modified":"2025-04-18T22:36:49","modified_gmt":"2025-04-18T14:36:49","slug":"%e9%93%b6%e6%b2%b3%e9%ba%92%e9%ba%9f%e6%9c%8d%e5%8a%a1%e5%99%a8%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9f%e9%83%a8%e7%bd%b2hadoop%e9%9b%86%e7%be%a4","status":"publish","type":"post","link":"https:\/\/www.wsisp.com\/helps\/16056.html","title":{"rendered":"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4"},"content":{"rendered":"<h4>\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4<\/h4>\n<h4>\u4e00\u3001 Hadoop\u96c6\u7fa4\u73af\u5883\u89c4\u5219<\/h4>\n<h5>1.Hadoop\u4ecb\u7ecd<\/h5>\n<p>Hadoop\u662f\u4e00\u4e2a\u7531Apache\u57fa\u91d1\u4f1a\u6240\u5f00\u53d1\u7684\u5206\u5e03\u5f0f\u7cfb\u7edf\u57fa\u7840\u67b6\u6784\u3002\u7528\u6237\u53ef\u4ee5\u5728\u4e0d\u4e86\u89e3\u5206\u5e03\u5f0f\u5e95\u5c42\u7ec6\u8282\u7684\u60c5\u51b5\u4e0b&#xff0c;\u5f00\u53d1\u5206\u5e03\u5f0f\u7a0b\u5e8f\u3002 \u5145\u5206\u5229\u7528\u96c6\u7fa4\u7684\u5a01\u529b\u8fdb\u884c\u9ad8\u901f\u8fd0\u7b97\u548c\u5b58\u50a8\u3002<\/p>\n<h5>2.Hadoop\u96c6\u7fa4\u7b80\u4ecb<\/h5>\n<p>HADOOP\u96c6\u7fa4\u5177\u4f53\u6765\u8bf4\u5305\u542b\u4e24\u4e2a\u96c6\u7fa4&#xff1a;HDFS\u96c6\u7fa4\u548cYARN\u96c6\u7fa4&#xff0c;\u4e24\u8005\u903b\u8f91\u4e0a\u5206\u79bb&#xff0c;\u4f46\u7269\u7406\u4e0a\u5e38\u5728\u4e00\u8d77\u3002 HDFS\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u7684\u5b58\u50a8&#xff0c;\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709&#xff1a;NameNode\u3001DataNode\u3001SecondaryNameNode YARN\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u8fd0\u7b97\u65f6\u7684\u8d44\u6e90\u8c03\u5ea6&#xff0c;\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709&#xff1a;ResourceManager\u3001NodeManager \u90a3mapreduce\u662f\u4ec0\u4e48\u5462&#xff1f;\u5b83\u5176\u5b9e\u662f\u4e00\u4e2a\u5206\u5e03\u5f0f\u8fd0\u7b97\u7f16\u7a0b\u6846\u67b6&#xff0c;\u662f\u5e94\u7528\u7a0b\u5e8f\u5f00\u53d1\u5305&#xff0c;\u7531\u7528\u6237\u6309\u7167\u7f16\u7a0b\u89c4\u8303\u8fdb\u884c\u7a0b\u5e8f\u5f00\u53d1&#xff0c;\u540e\u6253\u5305\u8fd0\u884c\u5728 HDFS\u96c6\u7fa4\u4e0a&#xff0c;\u5e76\u4e14\u53d7\u5230YARN\u96c6\u7fa4\u7684\u8d44\u6e90\u8c03\u5ea6\u7ba1\u7406\u3002<\/p>\n<h5>3.Hadoop\u6838\u5fc3\u7ec4\u4ef6\u6709&#xff1a;<\/h5>\n<p>\uf0b7HDFS&#xff08;\u5206\u5e03\u5f0f\u6587\u4ef6\u7cfb\u7edf&#xff09;&#xff1a;\u89e3\u51b3\u6d77\u91cf\u6570\u636e\u5b58\u50a8 \uf0b7YARN&#xff08;\u4f5c\u4e1a\u8c03\u5ea6\u548c\u96c6\u7fa4\u8d44\u6e90\u7ba1\u7406\u7684\u6846\u67b6&#xff09;&#xff1a;\u89e3\u51b3\u8d44\u6e90\u4efb\u52a1\u8c03\u5ea6 \uf0b7MAPREDUCE&#xff08;\u5206\u5e03\u5f0f\u8fd0\u7b97\u7f16\u7a0b\u6846\u67b6&#xff09;&#xff1a;\u89e3\u51b3\u6d77\u91cf\u6570\u636e\u8ba1\u7b97<\/p>\n<h5>4.\u8282\u70b9\u89c4\u5212\u8bf4\u660e&#xff1a;<\/h5>\n<p>zookeeper\u96c6\u7fa4\u9700\u8981\u81f3\u5c113\u4e2a\u8282\u70b9&#xff0c;\u5e76\u4e14\u8282\u70b9\u6570\u4e3a\u5947\u6570\u4e2a&#xff0c;\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u610f\u72ec\u7acb\u8282\u70b9\u4e0a&#xff0c;NameNode\u53caResourceManager\u4f9d\u8d56zookeeper<br \/>\n\u8fdb\u884c\u4e3b\u5907\u9009\u4e3e\u548c\u5207\u6362<\/p>\n<p>NameNode\u81f3\u5c11\u9700\u89812\u4e2a\u8282\u70b9&#xff0c;\u4e00\u4e3b\u591a\u5907&#xff0c;\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u610f\u72ec\u7acb\u8282\u70b9\u4e0a&#xff0c;\u7528\u4e8e\u7ba1\u7406HDFS\u7684\u540d\u79f0\u7a7a\u95f4\u548c\u6570\u636e\u5757\u6620\u5c04&#xff0c;<br \/>\n\u4f9d\u8d56zookeeper\u548czkfc\u5b9e\u73b0\u9ad8\u53ef\u7528\u548c\u81ea\u52a8\u6545\u969c\u8f6c\u79fb&#xff0c;\u5e76\u4e14\u4f9d\u8d56journalnode\u5b9e\u73b0\u72b6\u6001\u540c\u6b65<\/p>\n<p>ZKFailoverController\u5373zkfc&#xff0c;\u5728\u6240\u6709NameNode\u8282\u70b9\u4e0a\u542f\u52a8&#xff0c;\u7528\u4e8e\u76d1\u89c6\u548c\u7ba1\u7406NameNode\u72b6\u6001&#xff0c;\u53c2\u4e0e\u6545\u969c\u8f6c\u79fb<\/p>\n<p>DataNode\u81f3\u5c11\u9700\u89813\u4e2a\u8282\u70b9&#xff0c;\u56e0\u4e3ahdfs\u9ed8\u8ba4\u526f\u672c\u6570\u4e3a3&#xff0c;\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u610f\u72ec\u7acb\u8282\u70b9\u4e0a&#xff0c;\u7528\u4e8e\u5b9e\u9645\u6570\u636e\u5b58\u50a8<\/p>\n<p>ResourceManager&#xff1a;\u81f3\u5c11\u9700\u89812\u4e2a\u8282\u70b9&#xff0c;\u4e00\u4e3b\u591a\u5907&#xff0c;\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u610f\u72ec\u7acb\u8282\u70b9\u4e0a&#xff0c;\u4f9d\u8d56zookeeper\u5b9e\u73b0\u9ad8\u53ef\u7528\u548c\u81ea\u52a8\u6545\u969c\u8f6c\u79fb&#xff0c;<br \/>\n\u7528\u4e8e\u8d44\u6e90\u5206\u914d\u548c\u8c03\u5ea6<\/p>\n<p>NodeManager\u90e8\u7f72\u5728\u6240\u6709DataNode\u8282\u70b9\u4e0a&#xff0c;\u7528\u4e8e\u8282\u70b9\u8d44\u6e90\u7ba1\u7406\u548c\u76d1\u63a7<\/p>\n<p>journalnode\u81f3\u5c11\u9700\u89813\u4e2a\u8282\u70b9&#xff0c;\u5e76\u4e14\u8282\u70b9\u6570\u4e3a\u5947\u6570\u4e2a&#xff0c;\u53ef\u4ee5\u90e8\u7f72\u5728\u4efb\u610f\u72ec\u7acb\u8282\u70b9\u4e0a&#xff0c;\u7528\u4e8e\u4e3b\u5907NameNode\u72b6\u6001\u4fe1\u606f\u540c\u6b65<\/p>\n<h5>5.\u670d\u52a1\u5668\u89d2\u8272<\/h5>\n<p>| \u4e3b\u673a\u540d            | IP\u5730\u5740        | \u7ec4\u4ef6           |          |          |            |                 |                     |             |<br \/>\n|&#8212;&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;|&#8212;&#8212;&#8212;&#8212;-|<br \/>\n| idc-bigdata-01 | 10.62.1.181 | zookeeper| NodeNode | DataNode | NodeManage | ResourceManager | ZKFailoverControlle | Journalnode |<br \/>\n| idc-bigdata-02 | 10.62.1.182 | zookeeper| NodeNode | DataNode | NodeManage | ResourceManager | ZKFailoverControlle | Journalnode |<br \/>\n| idc-bigdata-03 | 10.62.1.183 | zookeeper| NodeNode | DataNode | NodeManage | ResourceManager | ZKFailoverControlle | Journalnode |<br \/>\n| idc-bigdata-04 | 10.62.1.184 | zookeeper| NodeNode | DataNode | NodeManage | ResourceManager | ZKFailoverControlle | Journalnode |<br \/>\n| idc-bigdata-05 | 10.62.1.185 | zookeeper| NodeNode | DataNode | NodeManage | ResourceManager | ZKFailoverControlle | Journalnode |<\/p>\n<h4>\u4e8c\u3001\u7cfb\u7edf\u521d\u59cb\u5316<\/h4>\n<p>\u6240\u6709\u73af\u5883\u4f7f\u7528hadoop\u7528\u6237\u6765\u5b89\u88c5<\/p>\n<h5>2. \u73af\u5883\u521d\u59cb\u5316<\/h5>\n<h5>2.1 \u67e5\u770b\u5185\u6838<\/h5>\n<p># uname -r<br \/>\n4.19.90-24.4.v2101.ky10.x86_64<br \/>\n\u9ed8\u8ba4\u5185\u6838\u4e3a4.19<\/p>\n<h5>2.2 \u521b\u5efa\u7528\u6237\u540d<\/h5>\n<p>\u521b\u5efa \u7528\u6237<br \/>\nuseradd hadoop<br \/>\necho WLwl&#064;2023|passwd &#8211;stdin hadoop <\/p>\n<p>visudo  # \u53ef\u9009<br \/>\n\u6dfb\u52a0<br \/>\nhadoop ALL&#061;(ALL)       NOPASSWD: ALL      <\/p>\n<p>\u5207\u6362\u65b9\u6cd5  su &#8211;  hadoop<\/p>\n<h5>2.3\u914d\u7f6e\u4e3b\u673a\u540d<\/h5>\n<p>hostnamectl set-hostname idc-bigdata-01 &amp;&amp; hostname idc-bigdata-01 &amp;&amp; hostname -f<br \/>\nhostnamectl set-hostname idc-bigdata-02 &amp;&amp; hostname idc-bigdata-02 &amp;&amp; hostname -f<br \/>\nhostnamectl set-hostname idc-bigdata-03 &amp;&amp; hostname idc-bigdata-03 &amp;&amp; hostname -f<br \/>\nhostnamectl set-hostname idc-bigdata-04 &amp;&amp; hostname idc-bigdata-04 &amp;&amp; hostname -f<br \/>\nhostnamectl set-hostname idc-bigdata-05 &amp;&amp; hostname idc-bigdata-05 &amp;&amp; hostname -f<\/p>\n<h5>2.4 \u914d\u7f6e\u4e3b\u673a\u540d\u663e\u793a<\/h5>\n<p>\u4e3a\u6bcf\u4e2a\u673a\u5668\u5355\u72ec\u914d\u7f6e\u4e3b\u673a\u540d&#xff0c;\u5386\u53f2\u8bb0\u5f55\u663e\u793a<\/p>\n<p>cat &gt; \/etc\/profile.d\/sys.sh&lt;&lt;EOF<br \/>\nPS1&#061;&#039;\\\\[\\\\e[32;1m\\\\][\\\\u&#064;\\\\H \\\\W]\\\\\\\\$ \\\\[\\\\e[0m\\\\]&#039;<br \/>\n#alias vi&#061;&#039;vim&#039;<br \/>\nalias grep&#061;&#039;grep &#8211;color&#061;auto&#039;<br \/>\nalias ll&#061;&#039;ls -l &#8211;color&#061;auto &#8211;time-style&#061;long-iso&#039;<br \/>\nHISTSIZE&#061;3000<br \/>\nHISTTIMEFORMAT&#061;&#034;%Y-%m-%d %H:%M:%S &#8211;&gt; &#034;<br \/>\nEOF<br \/>\nsource \/etc\/profile.d\/sys.sh<\/p>\n<h5>2.5 \u914d\u7f6e\u4e3b\u673a\u540d\u89e3\u6790<\/h5>\n<p># \u96c6\u7fa4\u6240\u6709\u4e3b\u673a<\/p>\n<p>cat &gt;\/etc\/hosts &lt;&lt;EOF<br \/>\n127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4<br \/>\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6<br \/>\n10.62.1.181 idc-bigdata-01<br \/>\n10.62.1.182 idc-bigdata-02<br \/>\n10.62.1.183 idc-bigdata-03<br \/>\n10.62.1.184 idc-bigdata-03<br \/>\n10.62.1.185 idc-bigdata-03<br \/>\nEOF<\/p>\n<p>for host in idc-bigdata-{01..05};do ping -c2 $host;done   #\u9a8c\u8bc1<\/p>\n<h5>2.6 \u5173\u95ed\u9632\u706b\u5899\u548cselinux<\/h5>\n<p># \u96c6\u7fa4\u6240\u6709\u4e3b\u673a<br \/>\nsystemctl disable &#8211;now firewalld &amp;&amp; systemctl stop firewalld<br \/>\nsed -i &#039;s\/^SELINUX&#061;enforcing$\/SELINUX&#061;disabled\/&#039; \/etc\/selinux\/config &amp;&amp; setenforce 0<\/p>\n<h5>2.7 \u914d\u7f6e\u65f6\u95f4\u540c\u6b65<\/h5>\n<p>\u6dfb\u52a0\u5b9a\u65f6\u4efb\u52a1<\/p>\n<p>\u5982\u679c\u6ca1\u6709\u65f6\u95f4\u670d\u52a1\u5668\u9700\u8981\u81ea\u5df1\u5b89\u88c5&#xff0c;\u5e76\u6307\u5411\u65f6\u95f4\u670d\u52a1\u5668&#xff0c;\u96c6\u7fa4\u65f6\u95f4\u4e0d\u540c\u6b65\u4f1a\u5bfc\u81f4\u96c6\u7fa4\u8282\u70b9\u5b95\u673a<\/p>\n<p>yum install -y ntp  \u6240\u6709\u8282\u70b9<\/p>\n<p>ntp\u670d\u52a1\u5668<\/p>\n<p>cat &gt; \/etc\/ntp.conf &lt;&lt; EOF<\/p>\n<p># \u65e5\u5fd7\u914d\u7f6e<br \/>\nlogfile \/var\/log\/ntpd.log<\/p>\n<p># \u914d\u7f6e\u65f6\u95f4\u670d\u52a1\u5668&#xff08;\u963f\u91cc\u4e91&#xff09;<br \/>\ndriftfile \/var\/lib\/ntp\/drift<br \/>\nrestrict default nomodify notrap nopeer noquery<br \/>\nrestrict 127.0.0.1<br \/>\nrestrict -6 ::1<\/p>\n<p>server ntp1.aliyun.com<br \/>\nserver ntp2.aliyun.com<\/p>\n<p>#\u5916\u90e8\u65f6\u95f4\u670d\u52a1\u5668\u4e0d\u53ef\u7528\u65f6&#xff0c;\u4ee5\u672c\u5730\u65f6\u95f4\u4f5c\u4e3a\u65f6\u95f4\u670d\u52a1<br \/>\nserver 127.127.1.0<br \/>\nfudge 127.127.1.0 stratum 10<\/p>\n<p>includefile \/etc\/ntp\/crypto\/pw<br \/>\nkeys \/etc\/ntp\/keys<br \/>\nEOF<\/p>\n<p>\u5ba2\u6237\u7aef<\/p>\n<p>cat &gt; \/etc\/ntp.conf &lt;&lt; EOF<br \/>\ndriftfile \/var\/lib\/ntp\/drift<br \/>\nrestrict default nomodify notrap nopeer noquery<br \/>\nrestrict 127.0.0.1<br \/>\nrestrict -6 ::1<\/p>\n<p>server 10.61.1.189<\/p>\n<p>includefile \/etc\/ntp\/crypto\/pw<br \/>\nkeys \/etc\/ntp\/keys<br \/>\nEOF<\/p>\n<p>systemctl restart ntpd &amp;&amp; systemctl enable ntpd<\/p>\n<p>\u53ef\u9009  \u9ed8\u8ba4\u65f6\u533aAsia\/Shanghai<br \/>\ntimedatectl<br \/>\ntimedatectl set-timezone &#034;Asia\/Shanghai&#034;<br \/>\ntimedatectl set-ntp true<\/p>\n<p>ntpq -p<\/p>\n<p>\u5ba2\u6237\u7aef\u914d\u7f6e<\/p>\n<p>echo &#034;*\/30 * * * * \/usr\/sbin\/ntpdate -u 10.62.1.191 &gt;\/dev\/null 2&gt;&amp;1&#034; &gt; \/var\/spool\/cron\/root<br \/>\ncrontab -l<\/p>\n<h5>2.8 \u5173\u95edswap<\/h5>\n<p>\u6bcf\u53f0\u673a\u5668\u8bbe\u7f6e\u4ea4\u6362\u7a7a\u95f4<br \/>\n\u5efa\u8bae\u5c06\u4ea4\u6362\u7a7a\u95f4\u8bbe\u7f6e\u4e3a0&#xff0c;\u8fc7\u591a\u7684\u4ea4\u6362\u7a7a\u95f4\u4f1a\u5f15\u8d77GC\u8017\u65f6\u7684\u6fc0\u589e<br \/>\necho &#034;vm.swappiness &#061; 0&#034; &gt;&gt; \/etc\/sysctl.conf &amp;&amp; sysctl -p<br \/>\nsed -i &#039;\/swap\/s\/^\\\\(.*\\\\)$\/#\\\\1\/g&#039; \/etc\/fstab<\/p>\n<h5>2.9 \u5173\u95ed\u5927\u9875\u9762\u538b\u7f29<\/h5>\n<p>echo never &gt; \/sys\/kernel\/mm\/transparent_hugepage\/enabled<br \/>\necho never &gt; \/sys\/kernel\/mm\/transparent_hugepage\/defrag<br \/>\necho &#039;echo never &gt; \/sys\/kernel\/mm\/transparent_hugepage\/defrag&#039; &gt;&gt; \/etc\/rc.d\/rc.local<br \/>\necho &#039;echo never &gt; \/sys\/kernel\/mm\/transparent_hugepage\/enabled&#039; &gt;&gt; \/etc\/rc.d\/rc.local<br \/>\nchmod &#043;x \/etc\/rc.d\/rc.local<\/p>\n<h5>2.10 \u5173\u95edsshd DNS\u914d\u7f6e<\/h5>\n<p>\u53ef\u9009<br \/>\nsed -i &#039;s\/#UseDNS yes\/UseDNS no\/g&#039;   \/etc\/ssh\/sshd_config<br \/>\nsystemctl restart sshd<\/p>\n<p>\u8bbe\u7f6e StrictHostKeyChecking \u4e3ano<\/p>\n<p>sed -i  &#039;s\/^#   StrictHostKeyChecking ask\/StrictHostKeyChecking no\/g&#039; \/etc\/ssh\/ssh_config<br \/>\ngrep -w StrictHostKeyChecking \/etc\/ssh\/ssh_config<\/p>\n<h5>2.11 \u4f18\u5316\u53e5\u67c4 \u6253\u5f00\u6587\u4ef6\u6570<\/h5>\n<p>sed -i &#039;\/^*\/d&#039; \/etc\/security\/limits.conf<br \/>\ncat &gt;&gt;\/etc\/security\/limits.conf &lt;&lt;EOF<br \/>\n* soft nproc 1024000<br \/>\n* hard nproc 1024000<br \/>\n* soft nofile 1024000<br \/>\n* hard nofile 1024000<br \/>\nEOF<\/p>\n<p>ulimit -n 1024000 &amp;&amp; ulimit -u 1024000<\/p>\n<p>ulimit -n 65536 &amp;&amp; ulimit -u 128605<br \/>\nulimit -a -H  \u67e5\u770b<\/p>\n<p>\u8bf4\u660e&#xff1a;* \u4ee3\u8868\u9488\u5bf9\u6240\u6709\u7528\u6237<br \/>\nnoproc \u662f\u4ee3\u8868\u6700\u5927\u8fdb\u7a0b\u6570<br \/>\nnofile \u662f\u4ee3\u8868\u6700\u5927\u6587\u4ef6\u6253\u5f00\u6570<br \/>\n\u9700\u8981\u91cd\u8fde\u63a5\u624d\u751f\u6548<\/p>\n<h5>2.12 \u4f18\u5316\u5185\u6838\u53c2\u6570<\/h5>\n<p>cat &gt;\/etc\/sysctl.d\/kernel.conf &lt;&lt;EOF<\/p>\n<p># TCP Socket \u8bfb\u5199 Buffer \u8bbe\u7f6e:<br \/>\nnet.core.wmem_default &#061; 8388608<br \/>\nnet.core.wmem_max &#061; 16777216<br \/>\nnet.core.rmem_default &#061; 8388608<br \/>\nnet.core.rmem_max &#061; 16777216<br \/>\nnet.core.optmem_max &#061; 16777216<br \/>\nnet.core.somaxconn &#061; 65535<br \/>\nnet.core.netdev_max_backlog &#061; 262144<br \/>\nnet.ipv4.tcp_rmem&#061;4096 87380 16777216<br \/>\nnet.ipv4.tcp_wmem&#061;4096 65536 16777216<\/p>\n<p># \u542f\u7528IP\u8def\u7531\u8f6c\u53d1\u529f\u80fd<br \/>\nnet.ipv4.ip_forward &#061; 1<\/p>\n<p># \u5982\u679c\u5728\u8be5\u53c2\u6570\u6307\u5b9a\u7684\u79d2\u6570\u5185&#xff0c;TCP\u8fde\u63a5\u4e00\u76f4\u5904\u4e8e\u7a7a\u95f2&#xff0c;\u5219\u5185\u6838\u5f00\u59cb\u5411\u5ba2\u6237\u7aef\u53d1\u8d77\u5bf9\u5b83\u7684\u63a2\u6d4b&#xff0c;\u770b\u4ed6\u662f\u5426\u8fd8\u5b58\u6d3b\u7740<br \/>\nnet.ipv4.tcp_keepalive_time &#061; 600<\/p>\n<p># \u4ee5\u8be5\u53c2\u6570\u6307\u5b9a\u7684\u79d2\u6570\u4e3a\u65f6\u95f4\u95f4\u9694&#xff0c;\u5411\u5ba2\u6237\u7aef\u53d1\u8d77\u5bf9\u5b83\u7684\u63a2\u6d4b<br \/>\nnet.ipv4.tcp_keepalive_intvl &#061; 30<\/p>\n<p># \u5185\u6838\u53d1\u8d77\u5bf9\u5ba2\u6237\u7aef\u63a2\u6d4b\u7684\u6b21\u6570&#xff0c;\u5982\u679c\u90fd\u6ca1\u6709\u5f97\u5230\u76f8\u5e94&#xff0c;\u90a3\u4e48\u5c31\u65ad\u5b9a\u5ba2\u6237\u7aef\u4e0d\u53ef\u8fbe\u6216\u8005\u5df2\u5173\u95ed&#xff0c;\u5185\u6838\u5c31\u5173\u95ed\u8be5TCP\u8fde\u63a5&#xff0c;\u91ca\u653e\u76f8\u5173\u8d44\u6e90<br \/>\nnet.ipv4.tcp_keepalive_probes &#061; 10<\/p>\n<p># \u589e\u52a0\u7f51\u7edc\u7aef\u53e3\u8303\u56f4<br \/>\nnet.ipv4.ip_local_port_range &#061; 1024 65000<\/p>\n<p># \u589e\u52a0\u7f51\u7edcarp\u5730\u5740\u8868<br \/>\nnet.ipv4.neigh.default.gc_thresh1 &#061; 1024<br \/>\nnet.ipv4.neigh.default.gc_thresh2 &#061; 4096<br \/>\nnet.ipv4.neigh.default.gc_thresh3 &#061; 8192<\/p>\n<p># \u7981\u6b62TIME-WAIT\u72b6\u6001sockets\u7684\u5feb\u901f\u56de\u6536,\u542f\u7528\u4f1a\u5728NAT\u7f51\u7edc\u4e0b&#xff0c;\u4f1a\u5bfc\u81f4\u5927\u91cf\u7684TCP\u8fde\u63a5\u5efa\u7acb\u9519\u8bef\u3002<br \/>\nnet.ipv4.tcp_tw_recycle &#061; 0<\/p>\n<p># \u8868\u793a\u5f00\u542f\u91cd\u7528\u3002\u5141\u8bb8\u5c06TIME-WAIT sockets\u91cd\u65b0\u7528\u4e8e\u65b0\u7684TCP\u8fde\u63a5&#xff0c;\u9ed8\u8ba4\u4e3a0&#xff0c;\u8868\u793a\u5173\u95ed<br \/>\nnet.ipv4.tcp_tw_reuse &#061; 1<\/p>\n<p># nfs\u4f18\u5316<br \/>\nnet.ipv6.conf.all.disable_ipv6 &#061; 1<br \/>\nnet.ipv6.conf.default.disable_ipv6 &#061; 1<\/p>\n<p># \u5173\u95edipv6\u534f\u8bae<br \/>\nnet.ipv6.conf.all.disable_ipv6 &#061; 1<\/p>\n<p># \u7981\u6b62\u4f7f\u7528swap\u7a7a\u95f4 \u53ea\u6709\u5f53\u7cfb\u7edf\u4e3a0\u65f6\u624d\u5141\u8bb8\u4f7f\u7528<br \/>\nvm.swappiness&#061;0<\/p>\n<p># \u4e0d\u68c0\u67e5\u7269\u7406\u5185\u5b58\u662f\u5426\u53ef\u7528<br \/>\n#vm.overcommit_memory &#061; 1<\/p>\n<p># \u5f00\u542f\u7f51\u6865\u6a21\u5f0f docker<br \/>\nnet.bridge.bridge-nf-call-ip6tables &#061; 1<br \/>\nnet.bridge.bridge-nf-call-iptables &#061; 1<\/p>\n<p># linux \u6253\u5f00\u6587\u4ef6\u6570 too many open files \u89e3\u51b3\u65b9\u6cd5<br \/>\n# \u6ce8\u518c\u76d1\u542c\u76ee\u5f55\u7684\u6570\u91cf\u9650\u5236<br \/>\nfs.inotify.max_user_watches &#061; 1280000<br \/>\n# \u8c03\u5927\u6700\u5927\u6587\u4ef6\u53e5\u67c4\u6570<br \/>\nfs.file-max &#061; 52706963<br \/>\nfs.nr_open &#061; 52700000<\/p>\n<p># \u8bbe\u7f6e\u5185\u6838\u7f51\u7edcnetfilter\u6700\u5927\u8fde\u63a5\u6570 \u5185\u68384.0\u4ee5\u4e0a\u624d\u6709\u6b64\u6b64\u53c2\u6570<br \/>\n# \u6ce8\u610f\u5982\u679c\u9700\u8981\u542f\u7528\u6b64\u53c2\u6570&#xff0c;\u9700\u8981\u5f00\u542f\u7cfb\u7edf\u9632\u706b\u5899<br \/>\nnet.netfilter.nf_conntrack_max &#061; 2310720<br \/>\nvm.max_map_count &#061; 655360<\/p>\n<p>EOF<\/p>\n<p>sysctl -p \/etc\/sysctl.d\/kernel.conf <\/p>\n<p>\u6ce8&#xff1a;\u4f7f\u7528\u524d\u53bb\u9664\/etc\/sysctl.conf\u4e2d\u91cd\u590d\u914d\u7f6e<\/p>\n<h5>2.13 \u914d\u7f6essh\u514d\u5bc6<\/h5>\n<p>\u6240\u6709NameNode\u8282\u70b9\u9700\u8981\u5bf9DataNode\u8282\u70b9\u514d\u5bc6&#xff0c;\u7528\u4e8eNameNode\u7ba1\u7406DataNode\u8fdb\u7a0b&#xff0c; \u6240\u6709NameNode\u8282\u70b9\u4e4b\u95f4\u4e5f\u9700\u8981\u76f8\u4e92\u514d\u5bc6&#xff0c;\u7528\u4e8e\u6545\u969c\u5207\u6362\u3002<\/p>\n<p>3\u4e2a\u8282\u70b9\u751f\u6210\u516c\u94a5\u548c\u79c1\u94a5&#xff0c;3\u4e2a\u8282\u70b9\u4e0a\u5206\u522b\u6267\u884c<br \/>\n\u5207\u6362\u7528\u6237&#xff0c;\u751f\u6210\u5bc6\u94a5\u5bf9<\/p>\n<p>su &#8211; hadoop<br \/>\nssh-keygen -t rsa -m PEM<\/p>\n<p>\u4e00\u76f4\u6309\u56de\u8f66&#xff0c;\u90fd\u8bbe\u7f6e\u4e3a\u9ed8\u8ba4\u503c&#xff0c;\u7136\u540e\u518d\u5f53\u524d\u7528\u6237\u7684Home\u76ee\u5f55\u4e0b\u7684.ssh\u76ee\u5f55\u4e2d\u4f1a\u751f\u6210\u516c\u94a5\u6587\u4ef6&#xff08;id_rsa.pub&#xff09;\u548c\u79c1\u94a5\u6587\u4ef6&#xff08;id_rsa&#xff09;<\/p>\n<p>\u6ce8\u610f&#xff1a;<br \/>\nssh-keygen -t rsa \u76f4\u63a5\u751f\u4ea7\u51fa\u6765\u7684\u683c\u5f0f\u662fOPENSSH&#xff0c;\u540e\u9762HDFS\u65e0\u6cd5\u5b9e\u73b0\u9ad8\u53ef\u7528\u81ea\u52a8\u5207\u6362\u3002&#xff0c;\u6240\u4ee5&#xff0c;\u9700\u8981\u52a0\u4e0a -m PEM<br \/>\n\u9519\u8bef\u8bb0\u5f55&#xff0c;\u8be6\u89c1 Hadoop \u4e4b \u9ad8\u53ef\u7528\u4e0d\u81ea\u52a8\u5207\u6362(ssh\u5bc6\u94a5\u65e0\u6548 Caused by: com.jcraft.jsch.JSchException: invalid privatekey )<\/p>\n<p>\u5206\u53d1\u811a\u672c  \u6bcf\u53f0\u4e3b\u673a\u4e0a\u90fd\u6267\u884c<br \/>\nfor i in idc-bigdata-{01..05};do  ssh-copy-id $i -o StrictHostKeyChecking&#061;no  ;done<\/p>\n<p>\u53e6\u5916\u4e24\u53f0\u673a\u5668\u6267\u884c\u540c\u6837\u64cd\u4f5c&#xff0c;\u751f\u6210\u516c\u94a5\u548c\u79c1\u94a5\u540e&#xff0c;\u5206\u53d1\u7ed9\u662f\u4e09\u53f0\u673a\u5668<\/p>\n<p>\u9a8c\u8bc1<br \/>\nfor host in idc-bigdata-{01..05}<br \/>\ndo<br \/>\necho &#061;&#061;&#061;&#061;&#061;&#061;print hostname&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nssh $host hostname<br \/>\necho &#061;&#061;&#061;&#061;&#061;&#061;print ip addr &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nssh $host ip a|awk -F &#034;[ \/]&#043;&#034; &#039;\/inet\/ &amp;&amp; \/brd\/{print $3}&#039;<br \/>\necho<br \/>\ndone<\/p>\n<h5>2.14 \u914d\u7f6essh\u514d\u5bc6\u5176\u5b83\u65b9\u6cd5<\/h5>\n<p>su &#8211; hadoop<br \/>\nssh-keygen -t rsa -m PEM    \u751f\u6210RSA \u7c7b\u578b<\/p>\n<p>5\u4e2a\u8282\u70b9\u5bf9idc-bigdata-01\u8282\u70b9\u514d\u5bc6&#xff0c;5\u4e2a\u8282\u70b9\u4e0a\u5206\u522b\u6267\u884c<\/p>\n<p>ssh-copy-id idc-bigdata-01<\/p>\n<p>idc-bigdata-01\u8282\u70b9\u6267\u884c&#xff0c;\u5206\u53d1authorized_keys\u6587\u4ef6\u5230\u5176\u4ed6\u8282\u70b9<\/p>\n<p>scp \/root\/.ssh\/authorized_keys idc-bigdata-02:\/root\/.ssh\/authorized_keys<br \/>\nscp \/root\/.ssh\/authorized_keys idc-bigdata-02:\/root\/.ssh\/authorized_keys<\/p>\n<p>idc-bigdata-01\u8282\u70b9\u6267\u884c&#xff0c;\u6240\u6709\u8282\u70b9\u516c\u94a5\u5199\u5165known_hosts<br \/>\nssh-keyscan -t ecdsa idc-bigdata-01 idc-bigdata-02 idc-bigdata-03 &gt; \/root\/.ssh\/known_hosts<\/p>\n<p>idc-bigdata-01\u8282\u70b9\u6267\u884c&#xff0c;\u5206\u53d1known_hosts\u6587\u4ef6\u5230\u5176\u4ed6\u8282\u70b9<\/p>\n<p>scp \/root\/.ssh\/known_hosts idc-bigdata-02:\/root\/.ssh\/<br \/>\nscp \/root\/.ssh\/known_hosts idc-bigdata-03:\/root\/.ssh\/<\/p>\n<p>\u9a8c\u8bc1\u514d\u5bc6\u6210\u529f&#xff0c;\u4efb\u610fnamenode\u8282\u70b9ssh\u5230\u5176\u4ed6\u8282\u70b9\u80fd\u591f\u514d\u5bc6\u767b\u5f55<br \/>\nssh idc-bigdata-01<br \/>\nssh idc-bigdata-02<br \/>\nssh idc-bigdata-03<\/p>\n<h5>2.15 \u5b89\u88c5java\u73af\u5883<\/h5>\n<p>\u6240\u6709\u8282\u70b9\u5b89\u88c5java&#xff0c;\u56e0\u4e3azookeeper\u53cahadoop\u4f9d\u8d56java\u73af\u5883\u3002<\/p>\n<p>\u5982\u679c\u4f7f\u7528open-jdk \u8fd9\u91cc\u53ef\u4ee5\u4e0d\u9700\u8981\u5b89\u88c5<\/p>\n<p>\u624b\u52a8\u5b89\u88c5\u6b65\u9aa4<\/p>\n<p>\u5378\u8f7dopen-jdk<\/p>\n<p>\u5982\u679c\u5df2\u5b89\u88c5open-jdk &#xff0c;\u9700\u8981\u5378\u8f7dopen-jdk<\/p>\n<p>rpm -qa|grep java<br \/>\n[root&#064;idc-bigdata-03 ~]# rpm -qa|grep java<br \/>\njavapackages-tools-5.3.0-2.ky10.noarch<br \/>\njavapackages-filesystem-5.3.0-2.ky10.noarch<br \/>\njava-11-openjdk-headless-11.0.9.11-4.ky10.x86_64<br \/>\njava-1.8.0-openjdk-headless-1.8.0.272.b10-7.ky10.x86_64<br \/>\njava-1.8.0-openjdk-1.8.0.272.b10-7.ky10.x86_64<br \/>\ntzdata-java-2020a-8.p01.ky10.noarch<br \/>\njava-11-openjdk-11.0.9.11-4.ky10.x86_64<\/p>\n<p>yum remove java-openjdk -y<br \/>\n[root&#064;idc-bigdata-01 conf]# rpm -e &#8211;nodeps java-1.8.0-openjdk-headless-1.8.0.342.b07-0.p01.ky10.x86_64 java-11-openjdk-headless-11.0.9.11-4.ky10.x86_64 tzdata-java-2020a-8.p01.ky10.noarch<\/p>\n<p>[root&#064;idc-bigdata-01 conf]# rpm -qa|grep java<br \/>\njavapackages-tools-5.3.0-2.ky10.noarch<br \/>\njavapackages-filesystem-5.3.0-2.ky10.noarch<\/p>\n<p>\u6216<br \/>\nrpm -qa|grep java|xargs -i rpm -e &#8211;nodeps {}<\/p>\n<p>\u5b89\u88c5jdk<\/p>\n<p>\u4e0b\u8f7djdk \u5ffd\u7565<br \/>\n\u4e0a\u4f20jdk-8u181-linux-x64.tar.gz \u5230\/opt<br \/>\nmkdir -p \/usr\/java<br \/>\ntar xf \/opt\/jdk-8u181-linux-x64.tar.gz -C \/usr\/java<\/p>\n<p>cat &gt; \/etc\/profile.d\/jdk8.sh &lt;&lt; EOF<br \/>\nexport JAVA_HOME&#061;\/usr\/java\/jdk1.8.0_181<br \/>\nexport PATH&#061;\\\\$PATH:\\\\$JAVA_HOME\/bin:\/usr\/local\/bin<br \/>\nexport CLASSPATH&#061;\\\\$JAVA_HOME\/lib<br \/>\nEOF<br \/>\nsource \/etc\/profile.d\/jdk8.sh<br \/>\njava -version<\/p>\n<p>\u5176\u5b83\u4e3b\u673a\u5b89\u88c5 <\/p>\n<p>for host in idc-bigdata-{02..03}<br \/>\ndo<br \/>\n       ssh $host mkdir -p \/usr\/java<br \/>\nscp -r  \/usr\/java\/jdk1.8.0_181 $host:\/usr\/java<br \/>\ndone<\/p>\n<p>cat &gt; \/etc\/profile.d\/jdk8.sh &lt;&lt; EOF<br \/>\nexport JAVA_HOME&#061;\/usr\/java\/jdk1.8.0_181<br \/>\nexport PATH&#061;\\\\$PATH:\\\\$JAVA_HOME\/bin:\/usr\/local\/bin<br \/>\nexport CLASSPATH&#061;\\\\$JAVA_HOME\/lib<br \/>\nEOF<br \/>\nsource \/etc\/profile.d\/jdk8.sh<br \/>\njava -version<\/p>\n<p>\u62a5\u9519<\/p>\n<p>ln -sf \/usr\/lib64\/libLLVM-7.0.0.so \/usr\/lib64\/libLLVM-7.so<\/p>\n<h5>2.16 \u57fa\u672c\u5de5\u5177\u5b89\u88c5<\/h5>\n<p>yum istall -y psmisc vim net-tools wget iotop iftop <\/p>\n<p>NameNode\u4e3b\u5907\u5207\u6362\u4f9d\u8d56fuser&#xff0c;\u6240\u6709nameNode\u8282\u70b9\u5b89\u88c5psmisc<\/p>\n<h5>\u4e09\u3001 zookeeper \u96c6\u7fa4\u5b89\u88c5<\/h5>\n<p>\u751f\u4ea7\u73af\u5883\u9700\u89813\u52305\u4e2a\u8282\u70b9\u505a\u96c6\u7fa4<\/p>\n<p>Zookeeper \u7248\u672c3.8<\/p>\n<p>\u4ee5\u4e0b\u64cd\u4f5c\u57283\u4e2a\u8282\u70b9\u4e0a\u6267\u884c\u3002<\/p>\n<p>\u6240\u6709\u8282\u70b9\u5b89\u88c5zookeeper<\/p>\n<h5>3.1 \u89e3\u538b\u5b89\u88c5<\/h5>\n<p>\u6240\u6709\u8282\u70b9<\/p>\n<p>tar xf apache-zookeeper-3.8.0-bin.tar.gz  -C \/usr\/local<br \/>\nln -sf  \/usr\/local\/apache-zookeeper-3.8.0-bin \/usr\/local\/zookeeper<br \/>\nls -lh  \/usr\/local\/<\/p>\n<p>scp -r \/usr\/local\/apache-zookeeper-3.8.0-bin idc-bigdata-02:\/usr\/local<br \/>\nscp -r \/usr\/local\/apache-zookeeper-3.8.0-bin idc-bigdata-03:\/usr\/local<\/p>\n<p>\u8f6f\u8fde\u63a5<br \/>\nln -sf  \/usr\/local\/apache-zookeeper-3.8.0-bin \/usr\/local\/zookeeper<\/p>\n<p>for host in idc-bigdata-{02..03}<br \/>\ndo<br \/>\nscp -r  apache-zookeeper-3.8.0-bin.tar.gz $host:\/usr\/local<br \/>\ndone<\/p>\n<h5>3.2 \u914d\u7f6eZK\u73af\u5883\u53d8\u91cf<\/h5>\n<p>\u6240\u6709\u8282\u70b9\u6267\u884c<\/p>\n<p>cat &gt; \/etc\/profile.d\/zookeeper.sh &lt;&lt;EOF<br \/>\nexport ZOOKEEPER_HOME&#061;\/usr\/local\/zookeeper<br \/>\nexport PATH&#061;\\\\$ZOOKEEPER_HOME\/bin:\\\\$PATH<br \/>\nEOF<br \/>\nsource \/etc\/profile<\/p>\n<h5>3.3 \u4fee\u6539zookeeper\u914d\u7f6e\u6587\u4ef6<\/h5>\n<p>\u6240\u6709\u8282\u70b9\u6267\u884c<\/p>\n<p>cat &gt;\/usr\/local\/zookeeper\/conf\/zoo.cfg&lt;&lt;EOF<br \/>\ntickTime&#061;2000<br \/>\ninitLimit&#061;10<br \/>\nsyncLimit&#061;5<\/p>\n<p>#cluster<br \/>\nserver.1&#061;10.62.1.181:2188:3888<br \/>\nserver.2&#061;10.62.1.182:2188:3888<br \/>\nserver.3&#061;10.62.1.183:2188:3888<br \/>\n#data dir<br \/>\ndataDir&#061;\/data\/zookeeper\/data<br \/>\ndataLogDir&#061;\/data\/zookeeper\/logs<br \/>\nclientPort&#061;2181<br \/>\nmaxClientCnxns&#061;60<br \/>\n# https:\/\/prometheus.io Metrics Exporter<br \/>\nmetricsProvider.className&#061;org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider<br \/>\nmetricsProvider.httpHost&#061;0.0.0.0<br \/>\nmetricsProvider.httpPort&#061;7000<br \/>\nmetricsProvider.exportJvmInfo&#061;true<br \/>\nEOF<\/p>\n<p>3888\u662f\u96c6\u7fa4\u9009\u4e3e\u7b49\u4fe1\u606f\u901a\u544a\u7684\u7aef\u53e3\u3002<br \/>\n2188\u662f\u8fdb\u884c\u6570\u636e\u540c\u6b65\u7684\u7aef\u53e3<br \/>\n2181\u662f\u5ba2\u6237\u7aef\u8fde\u63a5\u670d\u52a1\u7aef\u7684\u7aef\u53e3<\/p>\n<h5>3.4 \u914d\u7f6ezookeeper myid<\/h5>\n<p>\u521b\u5efamyid\u6587\u4ef6&#xff0c;id\u5728\u6574\u4f53\u4e2d\u5fc5\u987b\u662f\u552f\u4e00\u7684&#xff0c;\u5e76\u4e14\u5e94\u8be5\u5177\u67091\u5230255\u4e4b\u95f4\u7684\u503c&#xff0c; \u4e3b\u914d\u7f6e\u6587\u4ef6\u4e2d\u7684server id \u8981\u548c\u5176\u5f53\u524d\u4e3b\u8282\u70b9\u4e2d\u7684myid\u4fdd\u6301\u4e00\u81f4&#xff0c;\u5206\u522b\u57283\u4e2a\u8282\u70b9\u4e0a\u6267\u884c<\/p>\n<p>\u521b\u5efadata\u548clog\u76ee\u5f55&#xff1a; mkdir -p \/data\/zookeeper\/{data,logs}<\/p>\n<p>#idc-bigdata-01<br \/>\nmkdir -p  \/data\/zookeeper\/data<br \/>\necho &#034;1&#034; &gt; \/data\/zookeeper\/data\/myid  <\/p>\n<p>#idc-bigdata-02<br \/>\nmkdir -p  \/data\/zookeeper\/data<br \/>\necho &#034;2&#034; &gt; \/data\/zookeeper\/data\/myid <\/p>\n<p>#idc-bigdata-03<br \/>\nmkdir -p  \/data\/zookeeper\/data<br \/>\necho &#034;3&#034; &gt; \/data\/zookeeper\/data\/myid   <\/p>\n<p>#idc-bigdata-04<br \/>\nmkdir -p  \/data\/zookeeper\/data<br \/>\necho &#034;4&#034; &gt; \/data\/zookeeper\/data\/myid <\/p>\n<p>#idc-bigdata-05<br \/>\nmkdir -p  \/data\/zookeeper\/data<br \/>\necho &#034;5&#034; &gt; \/data\/zookeeper\/data\/myid   <\/p>\n<h5>3.5 \u914d\u7f6esystemd \u670d\u52a1<\/h5>\n<p>\u521b\u5efazookeeper\u7528\u6237 \u53ef\u9009 \u8fd9\u91cc\u4f7f\u7528root\u542f\u52a8\u670d\u52a1 useradd -r -s \/bin\/false zookeeper chown -R zookeeper:zookeeper \/usr\/local\/zookeeper<\/p>\n<p>\u4f7f\u7528systemd\u7ba1\u7406zookeeper\u670d\u52a1<\/p>\n<p>cat &gt; \/usr\/lib\/systemd\/system\/zookeeper.service &lt;&lt; EOF<br \/>\n[Unit]<br \/>\nDescription&#061;Zookeeper Service<\/p>\n<p>[Service]<br \/>\nType&#061;simple<br \/>\nEnvironment&#061;&#034;JAVA_HOME&#061;\/usr\/java\/jdk1.8.0_181&#034;<br \/>\nWorkingDirectory&#061;\/usr\/local\/zookeeper\/<br \/>\nPIDFile&#061;\/usr\/local\/zookeeper\/data\/zookeeper_server.pid<br \/>\nSyslogIdentifier&#061;zookeeper<br \/>\nUser&#061;root<br \/>\nGroup&#061;root<br \/>\nExecStart&#061;\/usr\/local\/zookeeper\/bin\/zkServer.sh start<br \/>\nExecStop&#061;\/usr\/local\/zookeeper\/bin\/zkServer.sh stop<br \/>\nRestart&#061;always<br \/>\nTimeoutSec&#061;20<br \/>\nSuccessExitStatus&#061;130 143<br \/>\nRestart&#061;on-failure<\/p>\n<p>[Install]<br \/>\nWantedBy&#061;multi-user.target<br \/>\nEOF<\/p>\n<h5>3.6 \u542f\u52a8ZK\u670d\u52a1<\/h5>\n<p>\u542f\u52a8zookeeper\u670d\u52a1&#xff0c;\u5e76\u8bbe\u4e3a\u5f00\u673a\u542f\u52a8<\/p>\n<p>systemctl daemon-reload  &amp;&amp; systemctl enable zookeeper  &amp;&amp; systemctl restart zookeeper &amp;&amp; systemctl status zookeeper<\/p>\n<p>#systemctl enable &#8211;now zookeeper<\/p>\n<h5>3.7 \u9a8c\u8bc1\u72b6\u6001<\/h5>\n<p>\u67e5\u770bzookeeper\u4e3b\u5907\u72b6\u6001<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ xshell  zkServer.sh status<br \/>\n&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;xshell zkServer.sh status &#064;idc-bigdata-01&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>Authorized users only. All activities may be monitored and reported.<br \/>\nZooKeeper JMX enabled by default<br \/>\nUsing config: \/usr\/local\/zookeeper\/bin\/..\/conf\/zoo.cfg<br \/>\nClient port found: 2181. Client address: localhost. Client SSL: false.<br \/>\nMode: follower<br \/>\n&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;xshell zkServer.sh status &#064;idc-bigdata-02&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>Authorized users only. All activities may be monitored and reported.<br \/>\nZooKeeper JMX enabled by default<br \/>\nUsing config: \/usr\/local\/zookeeper\/bin\/..\/conf\/zoo.cfg<br \/>\nClient port found: 2181. Client address: localhost. Client SSL: false.<br \/>\nMode: leader<br \/>\n&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;xshell zkServer.sh status &#064;idc-bigdata-03&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>Authorized users only. All activities may be monitored and reported.<br \/>\nZooKeeper JMX enabled by default<br \/>\nUsing config: \/usr\/local\/zookeeper\/bin\/..\/conf\/zoo.cfg<br \/>\nClient port found: 2181. Client address: localhost. Client SSL: false.<br \/>\nMode: follower<\/p>\n<h4>\u56db\u3001Hadoop\u96c6\u7fa4\u90e8\u7f72<\/h4>\n<p>Hadoop\u5b89\u88c5\u914d\u7f6e \u5b98\u7f51\u4e0b\u8f7d\u5730\u5740&#xff1a;https:\/\/hadoop.apache.org\/releases.html<\/p>\n<h5>4.1 \u4e0b\u8f7dhadoop<\/h5>\n<p>\u5c06\u4e0b\u8f7d\u597d\u7684hadoop-3.3.5.tar.gz\u5305\u89e3\u538b\u5230 \/usr\/module\u4e0b<\/p>\n<p>mkdir -p \/opt\/software<br \/>\nchown -R hadoop:hadoop \/opt\/software<br \/>\nwget https:\/\/mirrors.aliyun.com\/apache\/hadoop\/common\/hadoop-3.3.5\/hadoop-3.3.5.tar.gz -P \/opt\/software<\/p>\n<h5>4.2 \u89e3\u538bhadoop<\/h5>\n<p>mkdir -p \/usr\/module<br \/>\ntar xf  \/opt\/software\/hadoop-3.3.5.tar.gz -C \/usr\/module<br \/>\nln -sf \/opt\/module\/hadoop-3.3.5 \/opt\/module\/hadoop<br \/>\nchown -R hadoop:hadoop \/opt\/module\/hadoop*<\/p>\n<h5>4.3 hadoop \u73af\u5883\u53d8\u91cf\u914d\u7f6e<\/h5>\n<p>\u6dfb\u52a0\u4ee5\u4e0b\u53c2\u6570<\/p>\n<p>vim \/etc\/profile.d\/myenv.sh<\/p>\n<p># HADOOP_HOME<br \/>\nexport HADOOP_HOME&#061;\/opt\/module\/hadoop-3.3.5<br \/>\nexport HADOOP_CONF_DIR&#061;\/opt\/module\/hadoop-3.3.5\/etc\/hadoop<br \/>\nexport PATH&#061;$PATH:$HADOOP_HOME\/bin<br \/>\nexport PATH&#061;$PATH:$HADOOP_HOME\/sbin<br \/>\n# ZOO_HOME<br \/>\n#export ZOO_HOME&#061;\/opt\/module\/apache-zookeeper-3.8.0-bin<br \/>\n#export PATH&#061;$PATH:$ZOO_HOME\/bin<br \/>\n# HIVE_HOME<br \/>\nexport HIVE_HOME&#061;\/opt\/module\/apache-hive-3.1.2-bin<br \/>\nexport PATH&#061;$PATH:$HIVE_HOME\/bin<br \/>\n# SPARK_HOME<br \/>\n#export SPARK_HOME&#061;\/opt\/module\/spark-3.1.3-bin-hadoop3.2<br \/>\nexport SPARK_HOME&#061;\/opt\/module\/spark-3.3.2-bin-hadoop3<br \/>\nexport PATH&#061;$PATH:$SPARK_HOME\/bin:$SPARK_HOME\/sbin<br \/>\n# KAFKA_HOME<br \/>\n#export KAFKA_HOME&#061;\/opt\/module\/kafka_2.12-3.2.0<br \/>\n#export PATH&#061;$PATH:$KAFKA_HOME\/bin<br \/>\n# HBASE_HOME<br \/>\n#export HBASE_HOME&#061;\/opt\/module\/hbase-2.4.13<br \/>\nexport HBASE_HOME&#061;\/opt\/module\/hbase-2.5.3<br \/>\n#export HBASE_HOME&#061;\/opt\/module\/hbase-2.5.3-hadoop3<br \/>\nexport PATH&#061;$PATH:$HBASE_HOME\/bin<br \/>\n# PHOENIX_HOME<br \/>\nexport PHOENIX_HOME&#061;\/opt\/module\/phoenix-hbase-2.4-5.1.2-bin<br \/>\nexport PHOENIX_CLASSPATH&#061;$PHOENIX_HOME<br \/>\nexport PATH&#061;$PATH:$PHOENIX_HOME\/bin<\/p>\n<p># JAVA_HOME<br \/>\n#export JAVA_HOME&#061;\/opt\/module\/jdk1.8.0_181<br \/>\n#export PATH&#061;$PATH:$JAVA_HOME\/bin<\/p>\n<p># M2_HOME<br \/>\n#export M2_HOME&#061;\/opt\/module\/maven-3.8.6<br \/>\n#export PATH&#061;$PATH:$M2_HOME\/bin<\/p>\n<p># EFAK HOME<br \/>\n#export KE_HOME&#061;\/opt\/module\/efak-web-3.0.1<br \/>\n#export PATH&#061;$PATH:$KE_HOME\/bin<\/p>\n<p># FLINK_HOME<br \/>\n#export FLINK_HOME&#061;\/opt\/module\/flink-1.13.6<br \/>\nexport FLINK_HOME&#061;\/opt\/module\/flink-1.13.1<br \/>\nexport PATH&#061;$PATH:$FLINK_HOME\/bin<\/p>\n<p>#KYUUBI_HOME<br \/>\nexport KYUUBI_HOME&#061;\/opt\/module\/apache-kyuubi-1.7.1-bin<br \/>\nexport PATH&#061;$PATH:$KYUUBI_HOME\/bin<\/p>\n<p># HADOOP_CLASSPATH<br \/>\nexport HADOOP_CLASSPATH&#061;$(hadoop classpath)<\/p>\n<p>\u52a0\u8f7d\u53d8\u91cf<\/p>\n<p>source \/etc\/profile.d\/myenv.sh<\/p>\n<p>\u67e5\u770b hadoop \u7248\u672c<br \/>\n[root&#064;idc-bigdata-01 ~]# hdfs version<\/p>\n<p>\u73af\u5883\u53d8\u91cf\u6839\u636e\u9700\u8981\u4fee\u6539<\/p>\n<h5>4.4 hadoop\u5b89\u88c5\u76ee\u5f55\u4ecb\u7ecd<\/h5>\n<p>bin&#xff1a;Hadoop\u6700\u57fa\u672c\u7684\u7ba1\u7406\u811a\u672c\u548c\u4f7f\u7528\u811a\u672c\u7684\u76ee\u5f55&#xff0c;\u8fd9\u4e9b\u811a\u672c\u662fsbin\u76ee\u5f55\u4e0b\u7ba1\u7406\u811a\u672c\u7684\u57fa\u7840\u5b9e\u73b0&#xff0c;\u7528\u6237\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u8fd9\u4e9b\u811a\u672c\u7ba1\u7406\u548c\u4f7f\u7528Hadoop\u3002<br \/>\netc&#xff1a;Hadoop\u914d\u7f6e\u6587\u4ef6\u6240\u5728\u7684\u76ee\u5f55&#xff0c;\u5305\u62eccore-site.xml\u3001hdfs-site.xml\u3001mapred-site.xml\u7b49\u4eceHadoop1.0\u7ee7\u627f\u800c\u6765\u7684\u914d\u7f6e\u6587\u4ef6\u548cyarn-site.xml\u7b49Hadoop2.0\u65b0\u589e\u7684\u914d\u7f6e\u6587\u4ef6\u3002<br \/>\ninclude&#xff1a;\u5bf9\u5916\u63d0\u4f9b\u7684\u7f16\u7a0b\u5e93\u5934\u6587\u4ef6&#xff08;\u5177\u4f53\u52a8\u6001\u5e93\u548c\u9759\u6001\u5e93\u5728lib\u76ee\u5f55\u4e2d&#xff09;&#xff0c;\u8fd9\u4e9b\u5934\u6587\u4ef6\u5747\u662f\u7528C&#043;&#043;\u5b9a\u4e49\u7684&#xff0c;\u901a\u5e38\u7528\u4e8eC&#043;&#043;\u7a0b\u5e8f\u8bbf\u95eeHDFS\u6216\u8005\u7f16\u5199MapReduce\u7a0b\u5e8f\u3002<br \/>\nlib&#xff1a;\u8be5\u76ee\u5f55\u5305\u542b\u4e86Hadoop\u5bf9\u5916\u63d0\u4f9b\u7684\u7f16\u7a0b\u52a8\u6001\u5e93\u548c\u9759\u6001\u5e93&#xff0c;\u4e0einclude\u76ee\u5f55\u4e2d\u7684\u5934\u6587\u4ef6\u7ed3\u5408\u4f7f\u7528\u3002<br \/>\nlibexec&#xff1a;\u5404\u4e2a\u670d\u52a1\u5bf9\u7528\u7684shell\u914d\u7f6e\u6587\u4ef6\u6240\u5728\u7684\u76ee\u5f55&#xff0c;\u53ef\u7528\u4e8e\u914d\u7f6e\u65e5\u5fd7\u8f93\u51fa\u3001\u542f\u52a8\u53c2\u6570&#xff08;\u6bd4\u5982JVM\u53c2\u6570&#xff09;\u7b49\u57fa\u672c\u4fe1\u606f\u3002<br \/>\nsbin&#xff1a;Hadoop\u7ba1\u7406\u811a\u672c\u6240\u5728\u7684\u76ee\u5f55&#xff0c;\u4e3b\u8981\u5305\u542bHDFS\u548cYARN\u4e2d\u5404\u7c7b\u670d\u52a1\u7684\u542f\u52a8\/\u5173\u95ed\u811a\u672c\u3002<br \/>\nshare&#xff1a;Hadoop\u5404\u4e2a\u6a21\u5757\u7f16\u8bd1\u540e\u7684jar\u5305\u6240\u5728\u7684\u76ee\u5f55&#xff0c;\u5b98\u65b9\u81ea\u5e26\u793a\u4f8b\u3002<\/p>\n<h5>4.5 \u914d\u7f6ehadoop<\/h5>\n<p>Hadoop\u914d\u7f6e\u6587\u4ef6\u4fee\u6539&#xff08;\u6ce8\u610f&#xff1a;\u4ee5\u4e0b\u6240\u6709\u64cd\u4f5c\u90fd\u5728idc-bigdata-01\u4e3b\u673a\u8fdb\u884c&#xff09; Hadoop\u5b89\u88c5\u4e3b\u8981\u5c31\u662f\u914d\u7f6e\u6587\u4ef6\u7684\u4fee\u6539&#xff0c;\u4e00\u822c\u5728\u4e3b\u8282\u70b9\u8fdb\u884c\u4fee\u6539&#xff0c;\u5b8c\u6bd5\u540escp\u4e0b\u53d1\u7ed9\u5176\u4ed6\u5404\u4e2a\u4ece\u8282\u70b9\u673a\u5668 Hadoop\u5b89\u88c5\u76ee\u5f55\u4e0b\u7684etc\/hadoop\u76ee\u5f55\u4e2d&#xff0c;\u9700\u4fee\u6539core-site.xml\u3001hdfs-site.xml\u3001mapred-site.xml\u3001yarn-site.xml\u3001workers\u6587\u4ef6&#xff0c;\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u4fee\u6539\u914d\u7f6e\u4fe1\u606f\u3002<\/p>\n<h5>4.5.1 \u4fee\u6539hadoop-env.sh<\/h5>\n<p>\u8be5\u6587\u4ef6\u4e2d\u8bbe\u7f6e\u7684\u662fHadoop\u8fd0\u884c\u65f6\u9700\u8981\u7684\u73af\u5883\u53d8\u91cf\u3002JAVA_HOME\u662f\u5fc5\u987b\u8bbe\u7f6e\u7684&#xff0c;\u5373\u4f7f\u6211\u4eec\u5f53\u524d\u7684\u7cfb\u7edf\u4e2d\u8bbe\u7f6e\u4e86JAVA_HOME &#xff0c;\u5b83\u4e5f\u662f\u4e0d\u8ba4\u8bc6\u7684&#xff0c;\u56e0\u4e3aHadoop\u5373\u4f7f\u662f\u5728\u672c\u673a\u4e0a\u6267\u884c&#xff0c;\u5b83\u4e5f\u662f\u628a\u5f53\u524d\u7684\u6267\u884c\u73af\u5883\u5f53\u6210\u8fdc\u7a0b\u670d\u52a1\u5668\u3002<\/p>\n<p>vi $HADOOP_HOME\/etc\/hadoop\/hadoop-env.sh<\/p>\n<p>export JAVA_HOME&#061;\/usr\/java\/jdk1.8.0_181<br \/>\nexport HDFS_NAMENODE_USER&#061;hadoop<br \/>\nexport HDFS_DATANODE_USER&#061;hadoop<br \/>\nexport HADOOP_SHELL_EXECNAME&#061;hadoop<br \/>\nexport HDFS_SECONDARYNAMENODE_USER&#061;hadoop<br \/>\nexport YARN_RESOURCEMANAGER_USER&#061;hadoop<br \/>\nexport YARN_NODEMANAGER_USER&#061;hadoop<br \/>\nexport HDFS_JOURNALNODE_USER&#061;hadoop<br \/>\nexport HDFS_ZKFC_USER&#061;hadoop<\/p>\n<h5>4.5.2 \u4fee\u6539yarn-env.sh<\/h5>\n<p>\u8fd9\u4e00\u6b65\u53ef\u9009 vi $HADOOP_HOME\/etc\/hadoop\/yarn-env.sh<\/p>\n<p>export YARN_REGISTRYDNS_SECURE_USER&#061;hadoop<br \/>\nexport YARN_RESOURCEMANAGER_USER&#061;hadoop<br \/>\nexport YARN_NODEMANAGER_USER&#061;hadoop<\/p>\n<h5>4.5.3\u4fee\u6539core-site.xml<\/h5>\n<p>vi $HADOOP_HOME\/etc\/hadoop\/core-site.xml<\/p>\n<p>&lt;?xml version&#061;&#034;1.0&#034; encoding&#061;&#034;UTF-8&#034;?&gt;<br \/>\n&lt;?xml-stylesheet type&#061;&#034;text\/xsl&#034; href&#061;&#034;configuration.xsl&#034;?&gt;<\/p>\n<p>&lt;!&#8211; Put site-specific property overrides in this file. &#8211;&gt;<\/p>\n<p>&lt;configuration&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9aNameNode\u7684\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9anamenode\u7684hdfs\u534f\u8bae\u7684\u6587\u4ef6\u7cfb\u7edf\u901a\u4fe1\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;fs.defaultFS&lt;\/name&gt;<br \/>\n      &lt;value&gt;hdfs:\/\/idc-bigdata-cluster&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6e hadoop.tmp.dir \u8def\u5f84\u5230\u6301\u4e45\u5316\u76ee\u5f55 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5982\u679c\u4e0d\u6307\u5b9adfs.namenode.name.dir dfs.datanode.data.dir \u9ed8\u8ba4\u6570\u636e\u4f1a\u5b58hadoop.tmp.dir\u6240\u6307\u8def\u5f84\u4e0b\u7684dfs\u8def\u5f84\u4e2d &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;hadoop.tmp.dir&lt;\/name&gt;<br \/>\n      &lt;value&gt;\/datas\/dfs\/tmp&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6eHDFS\u7f51\u9875\u767b\u5f55\u4f7f\u7528\u7684\u9759\u6001\u7528\u6237\u4e3ahadoop &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;hadoop.http.staticuser.user&lt;\/name&gt;<br \/>\n      &lt;value&gt;hadoop&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6e\u8be5hadoop(superUser)\u5141\u8bb8\u901a\u8fc7\u4ee3\u7406\u8bbf\u95ee\u7684\u4e3b\u673a\u8282\u70b9 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;hadoop.proxyuser.hadoop.hosts&lt;\/name&gt;<br \/>\n      &lt;value&gt;*&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6e\u8be5hadoop(superUser)\u5141\u8bb8\u901a\u8fc7\u4ee3\u7406\u7528\u6237\u6240\u5c5e\u7ec4 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;hadoop.proxyuser.hadoop.groups&lt;\/name&gt;<br \/>\n      &lt;value&gt;*&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6e\u8be5hadoop(superUser)\u5141\u8bb8\u901a\u8fc7\u4ee3\u7406\u7684\u7528\u6237&#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;hadoop.proxyuser.hadoop.users&lt;\/name&gt;<br \/>\n      &lt;value&gt;*&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211;  \u7f13\u51b2\u533a\u5927\u5c0f&#xff0c;\u5b9e\u9645\u5de5\u4f5c\u4e2d\u6839\u636e\u670d\u52a1\u5668\u6027\u80fd\u52a8\u6001\u8c03\u6574 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;io.file.buffer.size&lt;\/name&gt;<br \/>\n      &lt;value&gt;131072&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211;  \u5f00\u542fhdfs\u7684\u5783\u573e\u6876\u673a\u5236&#xff0c;\u5220\u9664\u6389\u7684\u6570\u636e\u53ef\u4ee5\u4ece\u5783\u573e\u6876\u4e2d\u56de\u6536&#xff0c;\u5355\u4f4d\u5206\u949f &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;fs.trash.interval&lt;\/name&gt;<br \/>\n      &lt;value&gt;4320&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;fs.trash.checkpoint.interval&lt;\/name&gt;<br \/>\n      &lt;value&gt;0&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u6307\u5b9azkfc\u8981\u8fde\u63a5\u7684zkServer\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;ha.zookeeper.quorum&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-01:2181,idc-bigdata-02:2181,idc-bigdata-03:2181&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>&lt;\/configuration&gt;<\/p>\n<p>\u914d\u7f6e\u8bf4\u660e&#xff1a;<\/p>\n<p>fs.defaultFS \u6307\u5b9aHDFS\u4e2dNameNode\u7684\u5730\u5740<br \/>\nhadoop.tmp.dir \u6307\u5b9ahadoop\u8fd0\u884c\u65f6\u4ea7\u751f\u6587\u4ef6\u7684\u5b58\u50a8\u76ee\u5f55&#xff0c;\u662f\u5176\u4ed6\u4e34\u65f6\u76ee\u5f55\u7684\u7236\u76ee\u5f55 \u5982\u679c\u4e0d\u6307\u5b9adfs.namenode.name.dir dfs.datanode.data.dir \u9ed8\u8ba4\u6570\u636e\u4f1a\u5b58hadoop.tmp.dir\u6240\u6307\u8def\u5f84\u4e0b\u7684dfs\u8def\u5f84\u4e2d<br \/>\nha.zookeeper.quorum ZooKeeper\u5730\u5740\u5217\u8868&#xff0c;ZKFailoverController\u5c06\u5728\u81ea\u52a8\u6545\u969c\u8f6c\u79fb\u4e2d\u4f7f\u7528\u8fd9\u4e9b\u5730\u5740\u3002<br \/>\nio.file.buffer.size \u5728\u5e8f\u5217\u6587\u4ef6\u4e2d\u4f7f\u7528\u7684\u7f13\u51b2\u533a\u5927\u5c0f&#xff0c;\u6d41\u6587\u4ef6\u7684\u7f13\u51b2\u533a\u4e3a4K<br \/>\nfs.defaultFS&#xff1a;\u6307\u5b9anamenode\u7684hdfs\u534f\u8bae\u7684\u6587\u4ef6\u7cfb\u7edf\u901a\u4fe1\u5730\u5740&#xff0c;\u53ef\u4ee5\u6307\u5b9a\u4e00\u4e2a\u4e3b\u673a&#043;\u7aef\u53e3<br \/>\nhadoop.tmp.dir&#xff1a;hadoop\u96c6\u7fa4\u5728\u5de5\u4f5c\u65f6\u5b58\u50a8\u7684\u4e00\u4e9b\u4e34\u65f6\u6587\u4ef6\u5b58\u653e\u7684\u76ee\u5f55<\/p>\n<h5>4.5.4 \u4fee\u6539hdfs-site.xml<\/h5>\n<p>vi $HADOOP_HOME\/etc\/hadoop\/hdfs-site.xml<\/p>\n<p>&lt;?xml version&#061;&#034;1.0&#034; encoding&#061;&#034;UTF-8&#034;?&gt;<br \/>\n&lt;?xml-stylesheet type&#061;&#034;text\/xsl&#034; href&#061;&#034;configuration.xsl&#034;?&gt;<\/p>\n<p>&lt;!&#8211; Put site-specific property overrides in this file. &#8211;&gt;<\/p>\n<p>&lt;configuration&gt;<\/p>\n<p>    &lt;!&#8211; \u5b8c\u5168\u5206\u5e03\u5f0f\u96c6\u7fa4\u540d\u79f0 &#8211;&gt;<br \/>\n    &lt;!&#8211;\u6307\u5b9ahdfs\u7684nameservice\u4e3aidc-bigdata-cluster&#xff0c;\u9700\u8981\u548ccore-site.xml\u4e2d\u7684\u4fdd\u6301\u4e00\u81f4 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.nameservices&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-cluster&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u96c6\u7fa4\u4e2dNameNode\u8282\u70b9\u90fd\u6709\u54ea\u4e9b &#8211;&gt;<br \/>\n    &lt;!&#8211; namenode HA\u8282\u70b9\u522b\u540d &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.ha.namenodes.idc-bigdata-cluster&lt;\/name&gt;<br \/>\n      &lt;value&gt;nn1,nn2,nn3&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; NameNode\u7684RPC\u901a\u4fe1\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5404\u4e2anamenode\u7684 rpc\u901a\u8baf\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.rpc-address.idc-bigdata-cluster.nn1&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-01:8020&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.rpc-address.idc-bigdata-cluster.nn2&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-02:8020&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.rpc-address.idc-bigdata-cluster.nn3&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-03:8020&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; NameNode\u7684http\u901a\u4fe1\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5404\u4e2anamenode\u7684http\u72b6\u6001\u9875\u9762\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.http-address.idc-bigdata-cluster.nn1&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-01:9870&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.http-address.idc-bigdata-cluster.nn2&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-02:9870&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.http-address.idc-bigdata-cluster.nn3&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-03:9870&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; hdfs\u7684\u526f\u672c\u6570\u8bbe\u7f6e&#xff0c;\u9ed8\u8ba4\u4e3a3 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.replication&lt;\/name&gt;<br \/>\n      &lt;value&gt;3&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5927\u578b\u6587\u4ef6\u7cfb\u7edfHDFS\u5757\u5927\u5c0f\u4e3a256MB&#xff0c;\u9ed8\u8ba4\u662f128MB &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.blocksize&lt;\/name&gt;<br \/>\n      &lt;value&gt;134217728&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; NameNode\u6570\u636e\u5b58\u50a8\u76ee\u5f55 &#8211;&gt;<br \/>\n    &lt;!&#8211; namenode\u6570\u636e\u7684\u5b58\u653e\u4f4d\u7f6e&#xff0c;\u5143\u6570\u636e\u5b58\u653e\u4f4d\u7f6e &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.namenode.name.dir&lt;\/name&gt;<br \/>\n      &lt;value&gt;file:\/\/\/datas\/dfs\/nn&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; DataNode\u6570\u636e\u5b58\u50a8\u76ee\u5f55 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u591a\u76ee\u5f55 file:\/\/\/data\/dfs\/dn1\/dn,file:\/\/\/data\/dfs\/dn2\/dn &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.datanode.data.dir&lt;\/name&gt;<br \/>\n      &lt;value&gt;\/datas\/dfs\/dn1,\/datas\/dfs\/dn2&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; JournalNode\u6570\u636e\u5b58\u50a8\u76ee\u5f55 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.journalnode.edits.dir&lt;\/name&gt;<br \/>\n      &lt;value&gt;\/datas\/dfs\/jn&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; HA\u96c6\u7fa4\u4e2d\u591a\u4e2aNameNode\u4e4b\u95f4\u7684\u5171\u4eab\u5b58\u50a8\u4e0a\u7684\u76ee\u5f55 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9aNameNode\u5143\u6570\u636e\u5728JournalNode\u4e0a\u7684\u5b58\u653e\u4f4d\u7f6e &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;dfs.namenode.shared.edits.dir&lt;\/name&gt;<br \/>\n        &lt;value&gt;qjournal:\/\/idc-bigdata-01:8485;idc-bigdata-02:8485;idc-bigdata-03:8485\/idc-bigdata-cluster&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6e\u5931\u8d25\u81ea\u52a8\u5207\u6362\u5b9e\u73b0\u65b9\u5f0f &#8211;&gt;<br \/>\n    &lt;!&#8211; \u8bbf\u95ee\u4ee3\u7406\u7c7b&#xff1a;client\u7528\u4e8e\u786e\u5b9a\u54ea\u4e2aNameNode\u4e3aActive &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.client.failover.proxy.provider.idc-bigdata-cluster&lt;\/name&gt;<br \/>\n      &lt;value&gt;org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u542f\u7528nn\u6545\u969c\u81ea\u52a8\u8f6c\u79fb &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5f00\u542fNameNode\u5931\u8d25\u81ea\u52a8\u5207\u6362 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.ha.automatic-failover.enabled&lt;\/name&gt;<br \/>\n      &lt;value&gt;true&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u914d\u7f6e\u9694\u79bb\u673a\u5236&#xff0c;\u5373\u540c\u4e00\u65f6\u523b\u53ea\u80fd\u6709\u4e00\u53f0\u670d\u52a1\u5668\u5bf9\u5916\u54cd\u5e94 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.ha.fencing.methods&lt;\/name&gt;<br \/>\n      &lt;value&gt;sshfence<br \/>\n             shell(\/bin\/true)<br \/>\n      &lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u4f7f\u7528\u9694\u79bb\u673a\u5236\u65f6\u9700\u8981ssh\u79d8\u94a5\u767b\u5f55&#8211;&gt;<br \/>\n    &lt;!&#8211; \u4f7f\u7528sshfence\u9694\u79bb\u673a\u5236\u65f6\u9700\u8981ssh\u514d\u767b\u9646 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.ha.fencing.ssh.private-key-files&lt;\/name&gt;<br \/>\n      &lt;value&gt;\/home\/hadoop\/.ssh\/id_rsa&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.ha.fencing.ssh.connect-timeout&lt;\/name&gt;<br \/>\n      &lt;value&gt;30000&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211;\u94fe\u63a5\u8fd4\u56dehostname\u7ed9\u5ba2\u6237\u7aef\u8fdb\u884c\u8fde\u63a5&#8211;&gt;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.client.use.datanode.hostname&lt;\/name&gt;<br \/>\n      &lt;value&gt;true&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; \u5173\u95ed\u6743\u9650\u63a7\u5236 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;dfs.permissions&lt;\/name&gt;<br \/>\n      &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u6307\u5b9aDataNode\u7684\u8282\u70b9\u914d\u7f6e\u6587\u4ef6,\u9ed8\u8ba4\u4e3a\u6240\u6709 &#8211;&gt;<br \/>\n    &lt;!&#8211;   &lt;property&gt;<br \/>\n      &lt;name&gt; dfs.hosts &lt;\/name&gt;<br \/>\n      &lt;value&gt;\/opt\/module\/hadoop\/etc\/hadoop\/slaves&lt;\/value&gt;<br \/>\n    &lt;\/property&gt; &#8211;&gt;<br \/>\n&lt;\/configuration&gt;<\/p>\n<p>\u914d\u7f6e\u8bf4\u660e:<\/p>\n<p>dfs.nameservices \u914d\u7f6e\u547d\u540d\u7a7a\u95f4&#xff0c;\u6240\u6709namenode\u8282\u70b9\u914d\u7f6e\u5728\u547d\u540d\u7a7a\u95f4mycluster\u4e0b<br \/>\ndfs.replication \u6307\u5b9adataNode\u5b58\u50a8block\u7684\u526f\u672c\u6570\u91cf&#xff0c;\u9ed8\u8ba4\u503c\u662f3\u4e2a<br \/>\ndfs.blocksize \u5927\u578b\u6587\u4ef6\u7cfb\u7edfHDFS\u5757\u5927\u5c0f\u4e3a256MB&#xff0c;\u9ed8\u8ba4\u662f128MB<br \/>\ndfs.namenode.rpc-address \u5404\u4e2anamenode\u7684 rpc\u901a\u8baf\u5730\u5740<br \/>\ndfs.namenode.http-address \u5404\u4e2anamenode\u7684http\u72b6\u6001\u9875\u9762\u5730\u5740<br \/>\ndfs.namenode.name.dir \u5b58\u653enamenode\u540d\u79f0\u8868&#xff08;fsimage&#xff09;\u7684\u76ee\u5f55<br \/>\ndfs.datanode.data.dir \u5b58\u653edatanode\u5757\u7684\u76ee\u5f55<br \/>\ndfs.namenode.shared.edits.dir HA\u96c6\u7fa4\u4e2d\u591a\u4e2aNameNode\u4e4b\u95f4\u7684\u5171\u4eab\u5b58\u50a8\u4e0a\u7684\u76ee\u5f55\u3002\u6b64\u76ee\u5f55\u5c06\u7531\u6d3b\u52a8\u670d\u52a1\u5668\u5199\u5165&#xff0c;\u7531\u5907\u7528\u670d\u52a1\u5668\u8bfb\u53d6&#xff0c;\u4ee5\u4fdd\u6301\u540d\u79f0\u7a7a\u95f4\u7684\u540c\u6b65\u3002<br \/>\ndfs.journalnode.edits.dir \u5b58\u50a8journal edit files\u7684\u76ee\u5f55<br \/>\ndfs.ha.automatic-failover.enabled \u662f\u5426\u542f\u7528\u6545\u969c\u81ea\u52a8\u5904\u7406<br \/>\ndfs.ha.fencing.methods \u5904\u4e8e\u6545\u969c\u72b6\u6001\u7684\u65f6\u5019hadoop\u8981\u9632\u6b62\u8111\u88c2\u95ee\u9898&#xff0c;\u6240\u4ee5\u5728standby\u673a\u5668\u5207\u6362\u5230active\u540e&#xff0c;hadoop\u8fd8\u4f1a\u8bd5\u56fe\u901a\u8fc7\u5185\u90e8\u7f51\u7edc\u7684ssh\u8fde\u8fc7\u53bb&#xff0c;\u5e76\u628anamenode\u7684\u76f8\u5173\u8fdb\u7a0b\u7ed9kill\u6389&#xff0c;\u4e00\u822c\u662fsshfence \u5c31\u662fssh\u65b9\u5f0f<br \/>\ndfs.ha.fencing.ssh.private-key-files \u914d\u7f6e\u4e86 ssh\u7528\u7684 key \u7684\u4f4d\u7f6e\u3002<\/p>\n<p>dfs.secondary.http.address&#xff1a;secondarynamenode\u8fd0\u884c\u8282\u70b9\u7684\u4fe1\u606f&#xff0c;\u5e94\u8be5\u548cnamenode\u5b58\u653e\u5728\u4e0d\u540c\u8282\u70b9<br \/>\ndfs.repliction&#xff1a;hdfs\u7684\u526f\u672c\u6570\u8bbe\u7f6e&#xff0c;\u9ed8\u8ba4\u4e3a3<br \/>\ndfs.namenode.name.dir&#xff1a;namenode\u6570\u636e\u7684\u5b58\u653e\u4f4d\u7f6e&#xff0c;\u5143\u6570\u636e\u5b58\u653e\u4f4d\u7f6e<br \/>\ndfs.datanode.data.dir&#xff1a;datanode\u6570\u636e\u7684\u5b58\u653e\u4f4d\u7f6e&#xff0c;block\u5757\u5b58\u653e\u7684\u4f4d\u7f6e<\/p>\n<h5>4.5.5\u4fee\u6539mapred-site.xml<\/h5>\n<p>vi $HADOOP_HOME\/etc\/hadoop\/mapred-site.xml<\/p>\n<p>&lt;?xml version&#061;&#034;1.0&#034;?&gt;<br \/>\n&lt;?xml-stylesheet type&#061;&#034;text\/xsl&#034; href&#061;&#034;configuration.xsl&#034;?&gt;<\/p>\n<p>&lt;!&#8211; Put site-specific property overrides in this file. &#8211;&gt;<\/p>\n<p>&lt;configuration&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9a\u5206\u5e03\u5f0f\u8ba1\u7b97\u4f7f\u7528\u7684\u6846\u67b6\u662fyarn &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;mapreduce.framework.name&lt;\/name&gt;<br \/>\n      &lt;value&gt;yarn&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5f00\u542fMapReduce\u5c0f\u4efb\u52a1\u6a21\u5f0f &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;mapreduce.job.ubertask.enable&lt;\/name&gt;<br \/>\n      &lt;value&gt;true&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u6307\u5b9a\u5386\u53f2\u670d\u52a1\u5668\u7684\u5730\u5740\u548c\u7aef\u53e3 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;mapreduce.jobhistory.address&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-03:10020&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5386\u53f2\u670d\u52a1\u5668web\u7aef\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u67e5\u770b\u5386\u53f2\u670d\u52a1\u5668\u5df2\u7ecf\u8fd0\u884c\u5b8c\u7684Mapreduce\u4f5c\u4e1a\u8bb0\u5f55\u7684web\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;mapreduce.jobhistory.webapp.address&lt;\/name&gt;<br \/>\n      &lt;value&gt;idc-bigdata-03:19888&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;property&gt;<br \/>\n      &lt;name&gt;mapreduce.map.memory.mb&lt;\/name&gt;<br \/>\n      &lt;value&gt;1536&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;mapreduce.map.java.opts&lt;\/name&gt;<br \/>\n      &lt;value&gt;-Xmx1024M&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n\u3000\u3000  &lt;name&gt;mapreduce.reduce.memory.mb&lt;\/name&gt;<br \/>\n\u3000\u3000  &lt;value&gt;3072&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n\u3000\u3000  &lt;name&gt;mapreduce.reduce.java.opts&lt;\/name&gt;<br \/>\n\u3000\u3000  &lt;value&gt;-Xmx2560M&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/p>\n<h5>\u914d\u7f6e\u8bf4\u660e<\/h5>\n<p>mapreduce.framework.name \u8bbe\u7f6eMapReduce\u8fd0\u884c\u5e73\u53f0\u4e3ayarn<br \/>\nmapreduce.jobhistory.address \u5386\u53f2\u670d\u52a1\u5668\u7684\u5730\u5740<br \/>\nmapreduce.jobhistory.webapp.address \u5386\u53f2\u670d\u52a1\u5668\u9875\u9762\u7684\u5730\u5740<br \/>\nmapreduce.framework.name&#xff1a;\u6307\u5b9amapreduce\u6846\u67b6\u4e3ayarn\u65b9\u5f0f<br \/>\nmapreduce.jobhistory.address&#xff1a;\u6307\u5b9a\u5386\u53f2\u670d\u52a1\u5668\u7684\u5730\u5740\u548c\u7aef\u53e3<br \/>\nmapreduce.jobhistory.webapp.address&#xff1a;\u67e5\u770b\u5386\u53f2\u670d\u52a1\u5668\u5df2\u7ecf\u8fd0\u884c\u5b8c\u7684Mapreduce\u4f5c\u4e1a\u8bb0\u5f55\u7684web\u5730\u5740&#xff0c;\u9700\u8981\u542f\u52a8\u8be5\u670d\u52a1\u624d\u884c<br \/>\n\u9ed8\u8ba4 MapReduce Job \u662f\u5b58\u5728\u5185\u5b58\u4e2d\u7684&#xff0c;\u91cd\u542f\u4e4b\u540e\u5c31\u4f1a\u4e22\u5931&#xff0c;\u6240\u4ee5\u9700\u8981\u914d\u7f6e\u5386\u53f2\u670d\u52a1\u5668&#xff0c;\u5c06\u4fe1\u606f\u5b58\u50a8\u5728 HDFS \u4e2d<\/p>\n<h5>4.5.6 \u4fee\u6539yarn-site.xml<\/h5>\n<p>vi $HADOOP_HOME\/etc\/hadoop\/yarn-site.xml<\/p>\n<p>&lt;?xml version&#061;&#034;1.0&#034;?&gt;<br \/>\n&lt;!&#8211;<br \/>\n  Licensed under the Apache License, Version 2.0 (the &#034;License&#034;);<br \/>\n  you may not use this file except in compliance with the License.<br \/>\n  You may obtain a copy of the License at<\/p>\n<p>    http:\/\/www.apache.org\/licenses\/LICENSE-2.0<\/p>\n<p>  Unless required by applicable law or agreed to in writing, software<br \/>\n  distributed under the License is distributed on an &#034;AS IS&#034; BASIS,<br \/>\n  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<br \/>\n  See the License for the specific language governing permissions and<br \/>\n  limitations under the License. See accompanying LICENSE file.<br \/>\n&#8211;&gt;<br \/>\n&lt;configuration&gt;<\/p>\n<p>    &lt;!&#8211; Site specific YARN configuration properties &#8211;&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9aMR\u8d70shuffle \u9ed8\u8ba4\u503cmapreduce_shuff &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.aux-services&lt;\/name&gt;<br \/>\n        &lt;value&gt;mapreduce_shuffle&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; rm\u5931\u8054\u540e\u91cd\u65b0\u94fe\u63a5\u7684\u65f6\u95f4 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.connect.retry-interval.ms&lt;\/name&gt;<br \/>\n        &lt;value&gt;2000&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; \u542f\u7528\u96c6\u7fa4 &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; &#8211;&gt;<br \/>\n    &lt;!&#8211; \u542f\u7528resourcemanager HA &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.ha.enabled&lt;\/name&gt;<br \/>\n        &lt;value&gt;true&lt;\/value&gt;<br \/>\n        &lt;description&gt;\u542f\u52a8Yran HA\u6a21\u5f0f&lt;\/description&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u58f0\u660e\u4e24\u53f0resourcemanager\u7684\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.cluster-id&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-yarn-cluster&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211;\u6307\u5b9aresourcemanager\u7684\u903b\u8f91\u5217\u8868&#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.ha.rm-ids&lt;\/name&gt;<br \/>\n        &lt;value&gt;rm1,rm2&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u542f\u7528\u81ea\u52a8\u6062\u590d &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.recovery.enabled&lt;\/name&gt;<br \/>\n        &lt;value&gt;true&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5f00\u542fRM\u81ea\u52a8\u6545\u969c\u8f6c\u79fb &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n      &lt;name&gt;yarn.resourcemanager.ha.automatic-failover.enabled&lt;\/name&gt;<br \/>\n      &lt;value&gt;true&lt;\/value&gt;<br \/>\n      &lt;description&gt;\u5f00\u542f ResourceManager \u6545\u969c\u81ea\u52a8\u5207\u6362&lt;\/description&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;property&gt;<br \/>\n      &lt;name&gt;yarn.resourcemanager.ha.automatic-failover.embedded&lt;\/name&gt;<br \/>\n      &lt;value&gt;true&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; rm1\u7684\u914d\u7f6e &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; &#8211;&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9arm1\u7684\u4e3b\u673a\u540d &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.hostname.rm1&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-01&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9arm1\u7684web\u7aef\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.webapp.address.rm1&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-01:8088&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9arm1\u7684\u5185\u90e8\u901a\u4fe1\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.address.rm1&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-01:8032&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9aAM\u5411rm1\u7533\u8bf7\u8d44\u6e90\u7684\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.scheduler.address.rm1&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-01:8030&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9a\u4f9bNM\u8fde\u63a5\u7684\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.resource-tracker.address.rm1&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-01:8031&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; rm2\u7684\u914d\u7f6e &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; &#8211;&gt;<br \/>\n    &lt;!&#8211; \u6307\u5b9arm2\u7684\u4e3b\u673a\u540d &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.hostname.rm2&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-02&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.webapp.address.rm2&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-02:8088&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.address.rm2&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-02:8032&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.scheduler.address.rm2&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-02:8030&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.resource-tracker.address.rm2&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-02:8031&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u6307\u5b9azookeeper\u96c6\u7fa4\u7684\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.zk-address&lt;\/name&gt;<br \/>\n        &lt;value&gt;idc-bigdata-01:2181,idc-bigdata-02:2181,idc-bigdata-03:2181&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u6307\u5b9aresourcemanager\u7684\u72b6\u6001\u4fe1\u606f\u5b58\u50a8\u5728zookeeper\u96c6\u7fa4 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.store.class&lt;\/name&gt;<br \/>\n        &lt;value&gt;org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u73af\u5883\u53d8\u91cf\u7684\u7ee7\u627f &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.env-whitelist&lt;\/name&gt;<br \/>\n        &lt;value&gt;JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; ResourceManager\u5904\u7406\u8c03\u5ea6\u5668\u8bf7\u6c42\u7684\u7ebf\u7a0b\u6570\u91cf,\u9ed8\u8ba450&#xff1b;\u5982\u679c\u63d0\u4ea4\u7684\u4efb\u52a1\u6570\u5927\u4e8e50&#xff0c;\u53ef\u4ee5\u589e\u52a0\u8be5\u503c&#xff0c;\u4f46\u662f\u4e0d\u80fd\u8d85\u8fc73\u53f0 * 4\u7ebf\u7a0b &#061; 12\u7ebf\u7a0b&#xff08;\u53bb\u9664\u5176\u4ed6\u5e94\u7528\u7a0b\u5e8f\u5b9e\u9645\u4e0d\u80fd\u8d85\u8fc78&#xff09; &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;description&gt;Number of threads to handle scheduler interface.&lt;\/description&gt;<br \/>\n        &lt;name&gt;yarn.resourcemanager.scheduler.client.thread-count&lt;\/name&gt;<br \/>\n        &lt;value&gt;8&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211;\u662f\u5426\u5c06\u865a\u62df\u6838\u6570\u5f53\u4f5cCPU\u6838\u6570&#xff0c;\u9ed8\u8ba4\u662ffalse&#xff0c;\u91c7\u7528\u7269\u7406CPU\u6838\u6570&#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.resource.count-logical-processors-as-cores&lt;\/name&gt;<br \/>\n        &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u662f\u5426\u8ba9yarn\u81ea\u52a8\u68c0\u6d4b\u786c\u4ef6\u8fdb\u884c\u914d\u7f6e&#xff0c;\u9ed8\u8ba4\u662ffalse&#xff0c;\u5982\u679c\u8be5\u8282\u70b9\u6709\u5f88\u591a\u5176\u4ed6\u5e94\u7528\u7a0b\u5e8f&#xff0c;\u5efa\u8bae\u624b\u52a8\u914d\u7f6e\u3002\u5982\u679c\u8be5\u8282\u70b9\u6ca1\u6709\u5176\u4ed6\u5e94\u7528\u7a0b\u5e8f&#xff0c;\u53ef\u4ee5\u91c7\u7528\u81ea\u52a8 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.resource.detect-hardware-capabilities&lt;\/name&gt;<br \/>\n        &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211;Core\u8f6c\u6210Vcore\u7684\u4e2a\u6570&#xff08;\u865a\u62df\u6838\u6570\u548c\u7269\u7406\u6838\u6570\u4e58\u6570&#xff0c;\u9ed8\u8ba4\u662f1.0&#xff09;hadoop\u4e2d\u7684vcore\u4e0d\u662f\u771f\u6b63\u7684core&#xff0c;\u901a\u5e38vcore\u7684\u4e2a\u6570\u8bbe\u7f6e\u4e3a\u903b\u8f91cpu\u4e2a\u6570\u76841~5\u500d\u3002&#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.resource.pcores-vcores-multiplier&lt;\/name&gt;<br \/>\n        &lt;value&gt;1.0&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; yarn\u5bb9\u5668\u5141\u8bb8\u5206\u914d\u7684\u6700\u5927\u6700\u5c0f\u5185\u5b58 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5bb9\u5668\u6700\u5c0f\u5185\u5b58&#xff0c;\u9ed8\u8ba41G &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.scheduler.minimum-allocation-mb&lt;\/name&gt;<br \/>\n        &lt;value&gt;1024&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; yarn\u5bb9\u5668\u5141\u8bb8\u5206\u914d\u7684\u6700\u5927\u5185\u5b58&#xff0c;\u6839\u636e\u9700\u8981\u8c03\u6574 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5bb9\u5668\u6700\u5927\u5185\u5b58&#xff0c;\u9ed8\u8ba48G&#xff0c;\u4fee\u6539\u4e3a10G &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.scheduler.maximum-allocation-mb&lt;\/name&gt;<br \/>\n        &lt;value&gt;10240&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; yarn\u5bb9\u5668\u5141\u8bb8\u7ba1\u7406\u7684\u7269\u7406\u5185\u5b58\u5927\u5c0f &#8211;&gt;<br \/>\n    &lt;!&#8211; NodeManager\u4f7f\u7528\u5185\u5b58\u6570&#xff0c;\u9ed8\u8ba48G&#xff0c;\u4fee\u6539\u4e3a55G\u5185\u5b58 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5355\u8282\u70b9\u53ef\u5206\u914d\u7684\u7269\u7406\u5185\u5b58\u603b\u91cf&#xff0c;\u9ed8\u8ba48G \u8fd9\u91cc\u662f64GB\u914d\u7f6e&#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.resource.memory-mb&lt;\/name&gt;<br \/>\n        &lt;value&gt;56320&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5bb9\u5668\u6700\u5c0fCPU\u6838\u6570&#xff0c;\u9ed8\u8ba41\u4e2a &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.scheduler.minimum-allocation-vcores&lt;\/name&gt;<br \/>\n        &lt;value&gt;1&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; nodemanager\u7684CPU\u6838\u6570&#xff0c;\u4e0d\u6309\u7167\u786c\u4ef6\u73af\u5883\u81ea\u52a8\u8bbe\u5b9a\u65f6\u9ed8\u8ba4\u662f8\u4e2a&#xff0c;\u4fee\u6539\u4e3a4\u4e2a &#8211;&gt;<br \/>\n    &lt;!&#8211; \u5355\u8282\u70b9\u53ef\u5206\u914d\u7684\u865a\u62dfCPU\u4e2a\u6570&#xff0c;\u9ed8\u8ba48\u4e2a&#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.resource.cpu-vcores&lt;\/name&gt;<br \/>\n        &lt;value&gt;4&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5bb9\u5668\u6700\u5927CPU\u6838\u6570&#xff0c;\u9ed8\u8ba44\u4e2a  &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.scheduler.maximum-allocation-vcores&lt;\/name&gt;<br \/>\n        &lt;value&gt;4&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5173\u95edyarn\u5bf9\u7269\u7406\u5185\u5b58\u548c\u865a\u62df\u5185\u5b58\u7684\u9650\u5236\u68c0\u67e5 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u865a\u62df\u5185\u5b58\u68c0\u67e5(\u9650\u5236)&#xff0c;\u9ed8\u8ba4\u6253\u5f00&#xff0c;\u4fee\u6539\u4e3a\u5173\u95ed &#8211;&gt;<br \/>\n    &lt;!&#8211;\u662f\u5426\u542f\u52a8\u4e00\u4e2a\u7ebf\u7a0b\u68c0\u67e5\u6bcf\u4e2a\u4efb\u52a1\u6b63\u4f7f\u7528\u7684\u7269\u7406\u5185\u5b58\u91cf&#xff0c;\u5982\u679c\u4efb\u52a1\u8d85\u51fa\u5206\u914d\u503c&#xff0c;\u5219\u76f4\u63a5\u5c06\u5176\u6740\u6389&#xff0c;\u9ed8\u8ba4\u662ftrue &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.pmem-check-enabled&lt;\/name&gt;<br \/>\n        &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211;\u5173\u95edHadoop\u865a\u62df\u5185\u5b58\u68c0\u67e5 &#8211;&gt;<br \/>\n    &lt;!&#8211;\u662f\u5426\u542f\u52a8\u4e00\u4e2a\u7ebf\u7a0b\u68c0\u67e5\u6bcf\u4e2a\u4efb\u52a1\u6b63\u4f7f\u7528\u7684\u865a\u62df\u5185\u5b58\u91cf&#xff0c;\u5982\u679c\u4efb\u52a1\u8d85\u51fa\u5206\u914d\u503c&#xff0c;\u5219\u76f4\u63a5\u5c06\u5176\u6740\u6389&#xff0c;\u9ed8\u8ba4\u662ftrue &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.vmem-check-enabled&lt;\/name&gt;<br \/>\n        &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<br \/>\n    &lt;!&#8211; \u865a\u62df\u5185\u5b58\u548c\u7269\u7406\u5185\u5b58\u8bbe\u7f6e\u6bd4\u4f8b,\u9ed8\u8ba42.1 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.nodemanager.vmem-pmem-ratio&lt;\/name&gt;<br \/>\n        &lt;value&gt;2.1&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u5f00\u542f\u65e5\u5fd7\u805a\u96c6\u529f\u80fd &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.log-aggregation-enable&lt;\/name&gt;<br \/>\n        &lt;value&gt;true&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u8bbe\u7f6e\u65e5\u5fd7\u805a\u96c6\u670d\u52a1\u5668\u5730\u5740 &#8211;&gt;<br \/>\n    &lt;!&#8211;\u5141\u8bb8\u7b2c\u4e09\u65b9\u7a0b\u5e8f&#xff0c;\u4f8b\u5982spark\u5c06Job\u7684\u65e5\u5fd7&#xff0c;\u63d0\u4ea4\u7ed9Hadoop\u7684\u5386\u53f2\u670d\u52a1 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.log.server.url&lt;\/name&gt;<br \/>\n        &lt;value&gt;http:\/\/idc-bigdata-03:19888\/jobhistory\/logs&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;!&#8211; \u8bbe\u7f6e\u65e5\u5fd7\u4fdd\u7559\u65f6\u95f4\u4e3a7\u5929 &#8211;&gt;<br \/>\n    &lt;!&#8211; \u914d\u7f6e\u65e5\u5fd7\u8fc7\u671f\u65f6\u95f4,\u5355\u4f4d\u79d2 &#8211;&gt;<br \/>\n    &lt;property&gt;<br \/>\n        &lt;name&gt;yarn.log-aggregation.retain-seconds&lt;\/name&gt;<br \/>\n        &lt;value&gt;604800&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>    &lt;property&gt;<br \/>\n      &lt;name&gt;yarn.acl.enable&lt;\/name&gt;<br \/>\n      &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;\/property&gt;<\/p>\n<p>&lt;\/configuration&gt;<\/p>\n<h5>4.5.7 yarn \u961f\u5217\u914d\u7f6e<\/h5>\n<p>\u521b\u5efa\u4e24\u4e2a\u961f\u5217\u5206\u522b\u4e3aonline\u548coffline&#xff0c;\u5c06\u8fd9\u4e24\u4e2a\u961f\u5217\u7684\u8d44\u6e90\u5206\u522b\u5206\u914d\u4e3a40%\u300140%&#xff0c;\u4e14\u5141\u8bb8\u5728\u8d44\u6e90\u4e0d\u8db3\u65f6\u501f\u7528\u5176\u4ed6\u961f\u5217\u7684\u8d44\u6e90&#xff0c; online\u961f\u5217\u91cc\u9762\u8fd0\u884c\u5b9e\u65f6\u4efb\u52a1 offline\u961f\u5217\u91cc\u9762\u8fd0\u884c\u79bb\u7ebf\u4efb\u52a1<\/p>\n<p>vi $HADOOP_HOME\/etc\/hadoop\/capacity-scheduler.xml<\/p>\n<p>&lt;configuration&gt;<\/p>\n<p>   &lt;!&#8211; \u8bbe\u7f6e\u7cfb\u7edf\u4e2d\u53ef\u4ee5\u540c\u65f6\u8fd0\u884c\u548c\u7b49\u5f85\u7684\u5e94\u7528\u6570\u91cf\u3002\u9ed8\u8ba4\u662f10000 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.maximum-applications&lt;\/name&gt;<br \/>\n    &lt;value&gt;10000&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u8868\u793a\u96c6\u7fa4\u4e0a\u67d0\u961f\u5217\u53ef\u4f7f\u7528\u7684\u8d44\u6e90\u6bd4\u4f8b \u76ee\u7684\u662f\u4e3a\u4e86\u9650\u5236\u8fc7\u591a\u7684am\u6570&#xff0c;\u5373app\u6570 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.maximum-am-resource-percent&lt;\/name&gt;<br \/>\n    &lt;value&gt;0.2&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u914d\u7f6e\u6307\u5b9a\u8c03\u5ea6\u5668\u4f7f\u7528\u7684\u8d44\u6e90\u8ba1\u7b97\u5668 &#8211;&gt;<br \/>\n  &lt;!&#8211; DefaultResourseCalculator \u9ed8\u8ba4\u503c,\u53ea\u4f7f\u7528\u5185\u5b58\u8fdb\u884c\u6bd4\u8f83 &#8211;&gt;<br \/>\n  &lt;!&#8211; DominantResourceCalculator \u591a\u7ef4\u5ea6\u8d44\u6e90\u8ba1\u7b97,\u5185\u5b58\u3001cpu &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.resource-calculator&lt;\/name&gt;<br \/>\n    &lt;value&gt;org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u6307\u5b9a\u591a\u4e2a\u961f\u5217&#xff0c;\u589e\u52a0hive,spark,flink\u961f\u5217 &#8211;&gt;<br \/>\n  &lt;!&#8211; root\u961f\u5217\u4e2d\u6709\u54ea\u4e9b\u5b50\u961f\u5217&#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.queues&lt;\/name&gt;<br \/>\n    &lt;value&gt;default,online,offline&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; ******************************default\u961f\u5217**************************************** &#8211;&gt;<\/p>\n<p>  &lt;!&#8211; \u8bbe\u7f6edefault\u961f\u5217\u5360\u603b\u5185\u5b58\u768410%&#xff0c;\u9ed8\u8ba4100% \u603b\u548c\u4e3a100% &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.capacity&lt;\/name&gt;<br \/>\n    &lt;value&gt;20&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u8bbe\u7f6e\u961f\u5217\u5f39\u6027\u8c03\u5ea6\u8d44\u6e90\u6700\u5927\u5bb9\u91cf &#8211;&gt;<br \/>\n  &lt;!&#8211; deault\u961f\u5217\u7684\u6700\u5927\u5bb9\u91cf;\u81ea\u5df1\u961f\u5217\u8d44\u6e90\u4e0d\u591f&#xff0c;\u53ef\u4ee5\u4f7f\u7528\u5176\u4ed6\u961f\u5217\u8d44\u6e90\u4e0a\u9650\u767e\u5206\u6bd480% &#8211;&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.maximum-capacity&lt;\/name&gt;<br \/>\n    &lt;value&gt;80&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u7528\u6237\u6700\u591a\u80fd\u591f\u83b7\u53d6\u8be5\u961f\u5217\u8d44\u6e90\u5bb9\u91cf\u7684\u6bd4\u4f8b&#xff0c;\u53d6\u503c0-1 &#8211;&gt;<br \/>\n  &lt;!&#8211; \u5141\u8bb8\u5355\u4e2a\u7528\u6237\u6700\u591a\u53ef\u83b7\u53d6\u7684\u961f\u5217\u8d44\u6e90\u7684\u500d\u6570&#xff0c;\u9ed8\u8ba4\u503c1&#xff0c;\u786e\u4fdd\u5355\u4e2a\u7528\u6237\u65e0\u8bba\u96c6\u7fa4\u6709\u591a\u7a7a\u95f2&#xff0c;\u6c38\u8fdc\u4e0d\u4f1a\u5360\u7528\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u8d44\u6e90\u5f53\u503c\u5927\u4e8e1\u65f6&#xff0c;\u7528\u6237\u53ef\u4f7f\u7528\u7684\u8d44\u6e90\u5c06\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u8d44\u6e90<br \/>\n&#xff0c;\u4f46\u5e94\u8be5\u4e0d\u80fd\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u6700\u5927\u8d44\u6e90&#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.user-limit-factor&lt;\/name&gt;<br \/>\n    &lt;value&gt;1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u542f\u52a8hive\u961f\u5217 \u961f\u5217\u72b6\u6001&#xff1a;RUNNING  \u505c\u7528\u72b6\u6001&#xff1a;STOPPED &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.state&lt;\/name&gt;<br \/>\n    &lt;value&gt;RUNNING&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u5411\u961f\u5217\u63d0\u4ea4\u4f5c\u4e1a &#8211;&gt;<br \/>\n  &lt;!&#8211; \u8bbf\u95ee\u63a7\u5236&#xff0c;\u63a7\u5236\u8c01\u53ef\u4ee5\u5c06\u4efb\u52a1\u63d0\u4ea4\u5230\u8be5\u961f\u5217,*\u8868\u793a\u4efb\u4f55\u4eba &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.acl_submit_applications&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u64cd\u4f5c\u961f\u5217&#xff0c;\u7ba1\u7406\u5458\u6743\u9650&#xff08;\u67e5\u770b\/\u6740\u6b7b&#xff09;&#8211;&gt;<br \/>\n  &lt;!&#8211; \u8bbf\u95ee\u63a7\u5236&#xff0c;\u63a7\u5236\u8c01\u53ef\u4ee5\u7ba1\u7406(\u5305\u62ec\u63d0\u4ea4\u548c\u53d6\u6d88)\u8be5\u961f\u5217\u7684\u4efb\u52a1&#xff0c;*\u8868\u793a\u4efb\u4f55\u4eba &#8211;&gt;<br \/>\n  &lt;!&#8211; \u4e3aroot\u961f\u5217\u6307\u5b9a\u4e00\u4e2a\u7ba1\u7406\u5458&#xff0c;\u8be5\u7ba1\u7406\u5458\u53ef\u63a7\u5236\u8be5\u961f\u5217\u7684\u6240\u6709\u5e94\u7528\u7a0b\u5e8f&#xff0c;\u6bd4\u5982\u6740\u6b7b\u4efb\u610f\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u7b49 &#8211;&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.acl_administer_queue&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u914d\u7f6e\u63d0\u4ea4\u4efb\u52a1\u4f18\u5148\u7ea7 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.acl_application_max_priority&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u6307\u5b9a\u4efb\u52a1\u8fd0\u884c\u7684\u6700\u5927\u65f6\u95f4 &#8211;&gt;<br \/>\n  &lt;!&#8211; \u4efb\u52a1\u7684\u8d85\u65f6\u65f6\u95f4\u8bbe\u7f6e&#xff1a;yarn application -appId ${appId} -updateLifeTime Timeout &#8211;&gt;<br \/>\n  &lt;!&#8211; \u5982\u679capplication\u6307\u5b9a\u4e86\u8d85\u65f6\u65f6\u95f4&#xff0c;\u5219\u63d0\u4ea4\u5230\u8be5\u961f\u5217\u7684application\u80fd\u591f\u5236\u5b9a\u7684\u6700\u5927\u8d85\u65f6\u65f6\u95f4\u4e0d\u80fd\u8d85\u8fc7\u8be5\u503c\u3002&#8211;&gt;<br \/>\n  &lt;!&#8211; default\u961f\u5217\u4e2d\u4efb\u52a1\u7684\u6700\u5927\u751f\u547d\u65f6\u957f&#xff0c;\u4ee5\u79d2\u4e3a\u5355\u4f4d\u3002\u4efb\u4f55\u5c0f\u4e8e\u6216\u7b49\u4e8e\u96f6\u7684\u503c\u5c06\u88ab\u89c6\u4e3a\u7981\u7528 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.maximum-application-lifetime&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u5982\u679capplication\u6ca1\u6709\u6307\u5b9a\u8d85\u65f6\u65f6\u95f4&#xff0c;\u5219\u7528default-application-lifetime \u4f5c\u4e3a\u9ed8\u8ba4\u503c &#8211;&gt;<br \/>\n  &lt;!&#8211; hive\u961f\u5217\u4e2d\u4efb\u52a1\u7684\u9ed8\u8ba4\u751f\u547d\u65f6\u957f&#xff0c;\u4ee5\u79d2\u4e3a\u5355\u4f4d\u3002\u4efb\u4f55\u5c0f\u4e8e\u6216\u7b49\u4e8e\u96f6\u7684\u503c\u5c06\u88ab\u89c6\u4e3a\u7981\u7528 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.default.default-application-lifetime&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; ******************************online\u961f\u5217**************************************** &#8211;&gt;<\/p>\n<p>  &lt;!&#8211; \u8bbe\u7f6eonline\u961f\u5217\u5360\u603b\u5185\u5b58\u768410%&#xff0c;\u9ed8\u8ba4100% \u603b\u548c\u4e3a100% &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.capacity&lt;\/name&gt;<br \/>\n    &lt;value&gt;40&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u8bbe\u7f6e\u961f\u5217\u5f39\u6027\u8c03\u5ea6\u8d44\u6e90\u6700\u5927\u5bb9\u91cf &#8211;&gt;<br \/>\n  &lt;!&#8211; deault\u961f\u5217\u7684\u6700\u5927\u5bb9\u91cf;\u81ea\u5df1\u961f\u5217\u8d44\u6e90\u4e0d\u591f&#xff0c;\u53ef\u4ee5\u4f7f\u7528\u5176\u4ed6\u961f\u5217\u8d44\u6e90\u4e0a\u9650\u767e\u5206\u6bd480% &#8211;&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.maximum-capacity&lt;\/name&gt;<br \/>\n    &lt;value&gt;80&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u7528\u6237\u6700\u591a\u80fd\u591f\u83b7\u53d6\u8be5\u961f\u5217\u8d44\u6e90\u5bb9\u91cf\u7684\u6bd4\u4f8b&#xff0c;\u53d6\u503c0-1 &#8211;&gt;<br \/>\n  &lt;!&#8211; \u5141\u8bb8\u5355\u4e2a\u7528\u6237\u6700\u591a\u53ef\u83b7\u53d6\u7684\u961f\u5217\u8d44\u6e90\u7684\u500d\u6570&#xff0c;\u9ed8\u8ba4\u503c1&#xff0c;\u786e\u4fdd\u5355\u4e2a\u7528\u6237\u65e0\u8bba\u96c6\u7fa4\u6709\u591a\u7a7a\u95f2&#xff0c;\u6c38\u8fdc\u4e0d\u4f1a\u5360\u7528\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u8d44\u6e90\u5f53\u503c\u5927\u4e8e1\u65f6&#xff0c;\u7528\u6237\u53ef\u4f7f\u7528\u7684\u8d44\u6e90\u5c06\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u8d44\u6e90<br \/>\n&#xff0c;\u4f46\u5e94\u8be5\u4e0d\u80fd\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u6700\u5927\u8d44\u6e90&#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.user-limit-factor&lt;\/name&gt;<br \/>\n    &lt;value&gt;1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u542f\u52a8hive\u961f\u5217 \u961f\u5217\u72b6\u6001&#xff1a;RUNNING  \u505c\u7528\u72b6\u6001&#xff1a;STOPPED &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.state&lt;\/name&gt;<br \/>\n    &lt;value&gt;RUNNING&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u5411\u961f\u5217\u63d0\u4ea4\u4f5c\u4e1a &#8211;&gt;<br \/>\n  &lt;!&#8211; \u8bbf\u95ee\u63a7\u5236&#xff0c;\u63a7\u5236\u8c01\u53ef\u4ee5\u5c06\u4efb\u52a1\u63d0\u4ea4\u5230\u8be5\u961f\u5217,*\u8868\u793a\u4efb\u4f55\u4eba &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.acl_submit_applications&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u64cd\u4f5c\u961f\u5217&#xff0c;\u7ba1\u7406\u5458\u6743\u9650&#xff08;\u67e5\u770b\/\u6740\u6b7b&#xff09;&#8211;&gt;<br \/>\n  &lt;!&#8211; \u8bbf\u95ee\u63a7\u5236&#xff0c;\u63a7\u5236\u8c01\u53ef\u4ee5\u7ba1\u7406(\u5305\u62ec\u63d0\u4ea4\u548c\u53d6\u6d88)\u8be5\u961f\u5217\u7684\u4efb\u52a1&#xff0c;*\u8868\u793a\u4efb\u4f55\u4eba &#8211;&gt;<br \/>\n  &lt;!&#8211; \u4e3aroot\u961f\u5217\u6307\u5b9a\u4e00\u4e2a\u7ba1\u7406\u5458&#xff0c;\u8be5\u7ba1\u7406\u5458\u53ef\u63a7\u5236\u8be5\u961f\u5217\u7684\u6240\u6709\u5e94\u7528\u7a0b\u5e8f&#xff0c;\u6bd4\u5982\u6740\u6b7b\u4efb\u610f\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u7b49 &#8211;&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.acl_administer_queue&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u914d\u7f6e\u63d0\u4ea4\u4efb\u52a1\u4f18\u5148\u7ea7 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.acl_application_max_priority&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u6307\u5b9a\u4efb\u52a1\u8fd0\u884c\u7684\u6700\u5927\u65f6\u95f4 &#8211;&gt;<br \/>\n  &lt;!&#8211; \u4efb\u52a1\u7684\u8d85\u65f6\u65f6\u95f4\u8bbe\u7f6e&#xff1a;yarn application -appId ${appId} -updateLifeTime Timeout &#8211;&gt;<br \/>\n  &lt;!&#8211; \u5982\u679capplication\u6307\u5b9a\u4e86\u8d85\u65f6\u65f6\u95f4&#xff0c;\u5219\u63d0\u4ea4\u5230\u8be5\u961f\u5217\u7684application\u80fd\u591f\u5236\u5b9a\u7684\u6700\u5927\u8d85\u65f6\u65f6\u95f4\u4e0d\u80fd\u8d85\u8fc7\u8be5\u503c\u3002&#8211;&gt;<br \/>\n  &lt;!&#8211; default\u961f\u5217\u4e2d\u4efb\u52a1\u7684\u6700\u5927\u751f\u547d\u65f6\u957f&#xff0c;\u4ee5\u79d2\u4e3a\u5355\u4f4d\u3002\u4efb\u4f55\u5c0f\u4e8e\u6216\u7b49\u4e8e\u96f6\u7684\u503c\u5c06\u88ab\u89c6\u4e3a\u7981\u7528 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.maximum-application-lifetime&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u5982\u679capplication\u6ca1\u6709\u6307\u5b9a\u8d85\u65f6\u65f6\u95f4&#xff0c;\u5219\u7528default-application-lifetime \u4f5c\u4e3a\u9ed8\u8ba4\u503c &#8211;&gt;<br \/>\n  &lt;!&#8211; hive\u961f\u5217\u4e2d\u4efb\u52a1\u7684\u9ed8\u8ba4\u751f\u547d\u65f6\u957f&#xff0c;\u4ee5\u79d2\u4e3a\u5355\u4f4d\u3002\u4efb\u4f55\u5c0f\u4e8e\u6216\u7b49\u4e8e\u96f6\u7684\u503c\u5c06\u88ab\u89c6\u4e3a\u7981\u7528 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.online.default-application-lifetime&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; ******************************offline\u961f\u5217**************************************** &#8211;&gt;<\/p>\n<p>  &lt;!&#8211; \u8bbe\u7f6eoffline\u961f\u5217\u5360\u603b\u5185\u5b58\u768440%&#xff0c;\u9ed8\u8ba4100% \u603b\u548c\u4e3a100% &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.capacity&lt;\/name&gt;<br \/>\n    &lt;value&gt;40&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u8bbe\u7f6e\u961f\u5217\u5f39\u6027\u8c03\u5ea6\u8d44\u6e90\u6700\u5927\u5bb9\u91cf &#8211;&gt;<br \/>\n  &lt;!&#8211; deault\u961f\u5217\u7684\u6700\u5927\u5bb9\u91cf;\u81ea\u5df1\u961f\u5217\u8d44\u6e90\u4e0d\u591f&#xff0c;\u53ef\u4ee5\u4f7f\u7528\u5176\u4ed6\u961f\u5217\u8d44\u6e90\u4e0a\u9650\u767e\u5206\u6bd480% &#8211;&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.maximum-capacity&lt;\/name&gt;<br \/>\n    &lt;value&gt;80&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u7528\u6237\u6700\u591a\u80fd\u591f\u83b7\u53d6\u8be5\u961f\u5217\u8d44\u6e90\u5bb9\u91cf\u7684\u6bd4\u4f8b&#xff0c;\u53d6\u503c0-1 &#8211;&gt;<br \/>\n  &lt;!&#8211; \u5141\u8bb8\u5355\u4e2a\u7528\u6237\u6700\u591a\u53ef\u83b7\u53d6\u7684\u961f\u5217\u8d44\u6e90\u7684\u500d\u6570&#xff0c;\u9ed8\u8ba4\u503c1&#xff0c;\u786e\u4fdd\u5355\u4e2a\u7528\u6237\u65e0\u8bba\u96c6\u7fa4\u6709\u591a\u7a7a\u95f2&#xff0c;\u6c38\u8fdc\u4e0d\u4f1a\u5360\u7528\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u8d44\u6e90\u5f53\u503c\u5927\u4e8e1\u65f6&#xff0c;\u7528\u6237\u53ef\u4f7f\u7528\u7684\u8d44\u6e90\u5c06\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u8d44\u6e90<br \/>\n&#xff0c;\u4f46\u5e94\u8be5\u4e0d\u80fd\u8d85\u8fc7\u961f\u5217\u914d\u7f6e\u7684\u6700\u5927\u8d44\u6e90&#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.user-limit-factor&lt;\/name&gt;<br \/>\n    &lt;value&gt;1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u542f\u52a8hive\u961f\u5217 \u961f\u5217\u72b6\u6001&#xff1a;RUNNING  \u505c\u7528\u72b6\u6001&#xff1a;STOPPED &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.state&lt;\/name&gt;<br \/>\n    &lt;value&gt;RUNNING&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u5411\u961f\u5217\u63d0\u4ea4\u4f5c\u4e1a &#8211;&gt;<br \/>\n  &lt;!&#8211; \u8bbf\u95ee\u63a7\u5236&#xff0c;\u63a7\u5236\u8c01\u53ef\u4ee5\u5c06\u4efb\u52a1\u63d0\u4ea4\u5230\u8be5\u961f\u5217,*\u8868\u793a\u4efb\u4f55\u4eba &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.acl_submit_applications&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u64cd\u4f5c\u961f\u5217&#xff0c;\u7ba1\u7406\u5458\u6743\u9650&#xff08;\u67e5\u770b\/\u6740\u6b7b&#xff09;&#8211;&gt;<br \/>\n  &lt;!&#8211; \u8bbf\u95ee\u63a7\u5236&#xff0c;\u63a7\u5236\u8c01\u53ef\u4ee5\u7ba1\u7406(\u5305\u62ec\u63d0\u4ea4\u548c\u53d6\u6d88)\u8be5\u961f\u5217\u7684\u4efb\u52a1&#xff0c;*\u8868\u793a\u4efb\u4f55\u4eba &#8211;&gt;<br \/>\n  &lt;!&#8211; \u4e3aroot\u961f\u5217\u6307\u5b9a\u4e00\u4e2a\u7ba1\u7406\u5458&#xff0c;\u8be5\u7ba1\u7406\u5458\u53ef\u63a7\u5236\u8be5\u961f\u5217\u7684\u6240\u6709\u5e94\u7528\u7a0b\u5e8f&#xff0c;\u6bd4\u5982\u6740\u6b7b\u4efb\u610f\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u7b49 &#8211;&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.acl_administer_queue&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u54ea\u4e9b\u7528\u6237\u6709\u6743\u914d\u7f6e\u63d0\u4ea4\u4efb\u52a1\u4f18\u5148\u7ea7 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.acl_application_max_priority&lt;\/name&gt;<br \/>\n    &lt;value&gt;*&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u6307\u5b9a\u4efb\u52a1\u8fd0\u884c\u7684\u6700\u5927\u65f6\u95f4 &#8211;&gt;<br \/>\n  &lt;!&#8211; \u4efb\u52a1\u7684\u8d85\u65f6\u65f6\u95f4\u8bbe\u7f6e&#xff1a;yarn application -appId ${appId} -updateLifeTime Timeout &#8211;&gt;<br \/>\n  &lt;!&#8211; \u5982\u679capplication\u6307\u5b9a\u4e86\u8d85\u65f6\u65f6\u95f4&#xff0c;\u5219\u63d0\u4ea4\u5230\u8be5\u961f\u5217\u7684application\u80fd\u591f\u5236\u5b9a\u7684\u6700\u5927\u8d85\u65f6\u65f6\u95f4\u4e0d\u80fd\u8d85\u8fc7\u8be5\u503c\u3002&#8211;&gt;<br \/>\n  &lt;!&#8211; default\u961f\u5217\u4e2d\u4efb\u52a1\u7684\u6700\u5927\u751f\u547d\u65f6\u957f&#xff0c;\u4ee5\u79d2\u4e3a\u5355\u4f4d\u3002\u4efb\u4f55\u5c0f\u4e8e\u6216\u7b49\u4e8e\u96f6\u7684\u503c\u5c06\u88ab\u89c6\u4e3a\u7981\u7528 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.maximum-application-lifetime&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;!&#8211; \u5982\u679capplication\u6ca1\u6709\u6307\u5b9a\u8d85\u65f6\u65f6\u95f4&#xff0c;\u5219\u7528default-application-lifetime \u4f5c\u4e3a\u9ed8\u8ba4\u503c &#8211;&gt;<br \/>\n  &lt;!&#8211; hive\u961f\u5217\u4e2d\u4efb\u52a1\u7684\u9ed8\u8ba4\u751f\u547d\u65f6\u957f&#xff0c;\u4ee5\u79d2\u4e3a\u5355\u4f4d\u3002\u4efb\u4f55\u5c0f\u4e8e\u6216\u7b49\u4e8e\u96f6\u7684\u503c\u5c06\u88ab\u89c6\u4e3a\u7981\u7528 &#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.root.offline.default-application-lifetime&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>&lt;!&#8211; &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; \u5176\u5b83\u914d\u7f6e &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061; &#8211;&gt;<\/p>\n<p>&lt;!&#8211;CapacityScheduler\u5c1d\u8bd5\u8c03\u5ea6\u673a\u672c\u5730\u5bb9\u5668\u4e4b\u540e\u9519\u8fc7\u7684\u8c03\u5ea6\u673a\u4f1a\u6570\u3002\u901a\u5e38&#xff0c;\u5e94\u8be5\u5c06\u5176\u8bbe\u7f6e\u4e3a\u96c6\u7fa4\u4e2d\u7684\u8282\u70b9\u6570\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5728\u4e00\u4e2a\u67b6\u6784\u4e2d\u8bbe\u7f6e\u5927\u7ea640\u4e2a\u8282\u70b9\u3002\u5e94\u4e3a\u6b63\u6574\u6570\u503c\u3002&#8211;&gt;<br \/>\n  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.node-locality-delay&lt;\/name&gt;<br \/>\n    &lt;value&gt;40&lt;\/value&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.rack-locality-additional-delay&lt;\/name&gt;<br \/>\n    &lt;value&gt;-1&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      Number of additional missed scheduling opportunities over the node-locality-delay<br \/>\n      ones, after which the CapacityScheduler attempts to schedule off-switch containers,<br \/>\n      instead of rack-local ones.<br \/>\n      Example: with node-locality-delay&#061;40 and rack-locality-delay&#061;20, the scheduler will<br \/>\n      attempt rack-local assignments after 40 missed opportunities, and off-switch assignments<br \/>\n      after 40&#043;20&#061;60 missed opportunities.<br \/>\n      When setting this parameter, the size of the cluster should be taken into account.<br \/>\n      We use -1 as the default value, which disables this feature. In this case, the number<br \/>\n      of missed opportunities for assigning off-switch containers is calculated based on<br \/>\n      the number of containers and unique locations specified in the resource request,<br \/>\n      as well as the size of the cluster.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.queue-mappings&lt;\/name&gt;<br \/>\n    &lt;value&gt;&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      A list of mappings that will be used to assign jobs to queues<br \/>\n      The syntax for this list is [u|g]:[name]:[queue_name][,next mapping]*<br \/>\n      Typically this list will be used to map users to queues,<br \/>\n      for example, u:%user:%user maps all users to queues with the same name<br \/>\n      as the user.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.queue-mappings-override.enable&lt;\/name&gt;<br \/>\n    &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      If a queue mapping is present, will it override the value specified<br \/>\n      by the user? This can be used by administrators to place jobs in queues<br \/>\n      that are different than the one specified by the user.<br \/>\n      The default is false.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.per-node-heartbeat.maximum-offswitch-assignments&lt;\/name&gt;<br \/>\n    &lt;value&gt;1&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      Controls the number of OFF_SWITCH assignments allowed<br \/>\n      during a node&#039;s heartbeat. Increasing this value can improve<br \/>\n      scheduling rate for OFF_SWITCH containers. Lower values reduce<br \/>\n      &#034;clumping&#034; of applications on particular nodes. The default is 1.<br \/>\n      Legal values are 1-MAX_INT. This config is refreshable.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.application.fail-fast&lt;\/name&gt;<br \/>\n    &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      Whether RM should fail during recovery if previous applications&#039;<br \/>\n      queue is no longer valid.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.workflow-priority-mappings&lt;\/name&gt;<br \/>\n    &lt;value&gt;&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      A list of mappings that will be used to override application priority.<br \/>\n      The syntax for this list is<br \/>\n      [workflowId]:[full_queue_name]:[priority][,next mapping]*<br \/>\n      where an application submitted (or mapped to) queue &#034;full_queue_name&#034;<br \/>\n      and workflowId &#034;workflowId&#034; (as specified in application submission<br \/>\n      context) will be given priority &#034;priority&#034;.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>  &lt;property&gt;<br \/>\n    &lt;name&gt;yarn.scheduler.capacity.workflow-priority-mappings-override.enable&lt;\/name&gt;<br \/>\n    &lt;value&gt;false&lt;\/value&gt;<br \/>\n    &lt;description&gt;<br \/>\n      If a priority mapping is present, will it override the value specified<br \/>\n      by the user? This can be used by administrators to give applications a<br \/>\n      priority that is different than the one specified by the user.<br \/>\n      The default is false.<br \/>\n    &lt;\/description&gt;<br \/>\n  &lt;\/property&gt;<\/p>\n<p>&lt;\/configuration&gt;<\/p>\n<h5>4.5.8 \u4fee\u6539workers<\/h5>\n<p>cat &gt; $HADOOP_HOME\/etc\/hadoop\/workers &lt;&lt;EOF<br \/>\nidc-bigdata-01<br \/>\nidc-bigdata-02<br \/>\nidc-bigdata-03<br \/>\nEOF<\/p>\n<p>\u914d\u7f6e\u8bf4\u660e workers \u914d\u7f6edatanode\u5de5\u4f5c\u7684\u673a\u5668&#xff0c;\u800cdatanode\u4e3b\u8981\u662f\u7528\u6765\u5b58\u653e\u6570\u636e\u6587\u4ef6\u7684<\/p>\n<h5>4.5.9\u5206\u53d1\u914d\u7f6e\u6587\u4ef6<\/h5>\n<p>for host in idc-bigdata-{02..03}<br \/>\ndo<br \/>\necho &#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;$host hadoop install&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\nscp -r \/opt\/module\/hadoop-3.3.5  $host:\/opt\/module<br \/>\nssh $host ln -sf \/opt\/module\/hadoop-3.3.5 \/opt\/module\/hadoop<br \/>\nssh $host chown -R hadoop:hadoop \/opt\/module\/hadoop*<br \/>\nscp -r \/etc\/profile.d\/myenv.sh $host:\/etc\/profile.d\/myenv.sh<br \/>\nssh $host source \/etc\/profile.d\/myenv.sh<br \/>\necho<br \/>\ndone<\/p>\n<h5>4.6 \u78c1\u76d8\u5206\u533a\u6302\u8f7d<\/h5>\n<p>parted \/dev\/sdb<br \/>\nmklabel gpt<br \/>\nmkpart primary xfs 0% 100%<br \/>\nmkfs.xfs \/dev\/sdb1<\/p>\n<p>parted \/dev\/sdc<br \/>\nmklabel gpt<br \/>\nmkpart primary xfs 0% 100%<br \/>\nmkfs.xfs \/dev\/sdc1<\/p>\n<p>mkdir -p \/datas\/dfs\/{dn1,dn2}<br \/>\nchown -R hadoop:hadoop \/datas\/dfs<\/p>\n<p>\u6dfb\u52a0\u5f00\u673a\u6302\u8f7d<\/p>\n<p>vim \/etc\/fstab <\/p>\n<p>\/dev\/sdb1   \/datas\/dfs\/dn1                       xfs     defaults        0 0<br \/>\n\/dev\/sdc1   \/datas\/dfs\/dn2                       xfs     defaults        0 0<\/p>\n<p>\u52a0\u8f7d<br \/>\nmount -a <\/p>\n<p>\u67e5\u770b<\/p>\n<p>[root&#064;idc-bigdata-01 ~]# df -hT|grep datas<br \/>\n\/dev\/sdb1             xfs       100G  747M  100G   1% \/datas\/dfs\/dn1<br \/>\n\/dev\/sdc1             xfs       100G  747M  100G   1% \/datas\/dfs\/dn2<\/p>\n<h4>4.7 \u542f\u52a8Hadoop<\/h4>\n<p>\u6309\u4ee5\u4e0b\u987a\u5e8f\u542f\u52a8hadoop\u76f8\u5173\u670d\u52a1&#xff1a;<\/p>\n<h5>4.7.1 \u7b2c\u4e00\u6b21\u542f\u52a8\u96c6\u7fa4&#xff08;\u5fc5\u987b\u6309\u987a\u5e8f\u6267\u884c\u5426\u5219\u542f\u52a8\u4e0d\u6210\u529f&#xff09;<\/h5>\n<p>1.\u542f\u52a8zookeeper\u96c6\u7fa4<\/p>\n<p>zkServer.sh start<br \/>\n\u68c0\u67e5\u542f\u52a8\u60c5\u51b5&#xff1a; jps &#xff0c;\u6bcf\u4e2a\u8282\u70b9\u5305\u542bQuorumPeerMain\u8fdb\u7a0b\u4ee3\u8868zk\u96c6\u7fa4\u542f\u52a8\u6210\u529f\u6216\u8005\u6bcf\u4e2a\u8282\u70b9\u6267\u884c&#xff1a;<br \/>\nzkServer.sh status&#xff0c;\u67e5\u770b\u662f\u5426\u6709leader\u8282\u70b9\u3002<\/p>\n<p>2.\u6bcf\u4e2anamenode\u8282\u70b9\u4e0a\u542f\u52a8journalnode\u8fdb\u7a0b<br \/>\nhdfs &#8211;daemon start journalnode<\/p>\n<p>3.\u5728\u7b2c\u4e00\u53f0namenode\u8282\u70b9\u4e0a\u683c\u5f0f\u5316namenode<br \/>\nhdfs namenode -format<br \/>\n\u542f\u52a8\u8fd9\u53f0\u8282\u70b9\u7684namenode<br \/>\nhdfs &#8211;daemon start namenode<\/p>\n<p>4.\u5176\u4ed6Namenode\u8282\u70b9\u4e0a\u9996\u6b21\u8981\u624b\u52a8\u540c\u6b65\u4e00\u6b21\u6570\u636e&#xff0c;\u5728\u53e6\u5916\u4fe9\u4e2a\u8282\u70b9\u6267\u884c&#xff1a;<br \/>\nhdfs namenode -bootstrapStandby<br \/>\n\u540c\u6b65\u5b8c\u6210\u540e\u542f\u52a8namenode<br \/>\nhdfs &#8211;daemon start namenode<\/p>\n<p>5.\u521d\u59cb\u5316ZKFC  \u6ce8\u8fd9\u91cc\u7684\u521d\u59cb\u5316\u4e5f\u53ef\u4ee5\u653e\u5728\u7b2c\u4e00\u6b65\u64cd\u4f5c<br \/>\nZKFC\u7528\u4e8e\u76d1\u63a7active namenode\u8282\u70b9\u662f\u5426\u6302\u6389&#xff0c;\u901a\u77e5\u5176\u5b83\u8282\u70b9\u4e0a\u7684ZKFC\u5f3a\u884c\u6740\u6b7b\u81ea\u5df1ZKFC\u8282\u70b9\u4e0a\u7684namenode<br \/>\n&#xff08;\u9632\u6b62\u5176\u5047\u6b7b\u72b6\u6001\u4ea7\u751f\u96c6\u7fa4namenode\u8111\u88c2\u7684\u53d1\u751f&#xff09;&#xff0c;\u7136\u540e\u9009\u4e3e\u51fa\u5176\u4ed6namenode\u4e3aactive\u8282\u70b9<br \/>\n\u96c6\u7fa4\u9996\u6b21\u642d\u5efa\u9700\u8981\u5728zookeeper\u4e2d\u521d\u59cb\u5316namenode\u4fe1\u606f&#xff0c;\u5728namenode1\u8282\u70b9\u6267\u884c\u547d\u4ee4&#xff1a;<br \/>\nhdfs zkfc -formatZK<br \/>\n\u4e3b\u8282\u70b9\u542f\u52a8zkfc<br \/>\nhdfs &#8211;daemon start zkfc<\/p>\n<p>#### \u542f\u52a8HDFS\u76f8\u5173\u8fdb\u7a0b<br \/>\n \u5728namenode1\u8282\u70b9\u4e0a&#xff0c;\u542f\u52a8HDFS\u6574\u4e2a\u96c6\u7fa4&#xff08;\u5305\u62ec\u5176\u4ed6\u8282\u70b9&#xff09;\u7684\u5176\u4ed6\u8fdb\u7a0b&#xff08;Datanode\/DFSZKFailoverController&#xff09;&#xff0c;\u6267\u884c\u547d\u4ee4&#xff1a;<br \/>\nstart-dfs.sh<br \/>\nstart-yarn.sh<br \/>\n\u6216\u8005\u6267\u884cstart-all.sh <\/p>\n<p>6.\u67e5\u770bnamenode active\u8282\u70b9<\/p>\n<p>hdfs haadmin -getAllServiceState<br \/>\n[hadoop&#064;idc-bigdata-01 ~]$ hdfs haadmin -getAllServiceState<br \/>\nidc-bigdata-01:8020                                active<br \/>\nidc-bigdata-02:8020                                standby<br \/>\nidc-bigdata-03:8020                                standby  <\/p>\n<p>7. \u542f\u52a8\u65e5\u5fd7\u670d\u52a1<br \/>\nidc-bigdata-03<br \/>\nmapred &#8211;daemon start historyserver<\/p>\n<p>8. \u9a8c\u8bc1\u9ad8\u53ef\u7528<br \/>\nkill -9 active namenode\u8fdb\u7a0b&#xff0c;\u67e5\u770b\u9875\u9762\u72b6\u6001&#xff0c;\u53ef\u53d1\u73b0\u53e6\u5916\u67d0\u4e2anamenode\u81ea\u52a8\u5207\u6362\u6210active\u72b6\u6001\u3002<br \/>\n\u8bb0\u4f4fkill\u6389\u7684&#xff0c;\u5b9e\u9a8c\u7ed3\u675f\u540e\u518d\u542f\u52a8\u8d77\u6765\u3002<br \/>\nkill \u6216 hdfs &#8211;daemon stop namenode<br \/>\n\u96c6\u7fa4\u4e00\u5171\u4e00\u6709namenode \u6700\u591a\u53ef\u4ee5\u5bb9\u5fcd\u4e24\u4e2a\u5b95\u673a<\/p>\n<p>9. \u9a8c\u8bc1\u96c6\u7fa4\u662f\u5426\u53ef\u7528<\/p>\n<p>hdfs dfs -mkdir \/data<br \/>\nhdfs dfs -mkdir hdfs:\/\/idc-bigdata-cluster\/wordcount<br \/>\nhdfs dfs -put wordcount.txt hdfs:\/\/idc-bigdata-cluster\/wordcount<br \/>\nhdfs dfs -ls hdfs:\/\/idc-bigdata-cluster\/wordcount<\/p>\n<h5>4.8 \u5177\u4f53\u64cd\u4f5c\u6b65\u9aa4<\/h5>\n<h5>4.8.1 \u521d\u59cb\u5316zkfc<\/h5>\n<p>\u683c\u5f0f\u5316ZooKeeper\u96c6\u7fa4&#xff0c;\u76ee\u7684\u662f\u5728ZooKeeper\u96c6\u7fa4\u4e0a\u5efa\u7acbHA\u7684\u76f8\u5e94\u8282\u70b9&#xff0c;\u4efb\u610f\u8282\u70b9\u6267\u884c \u8fd9\u91cc\u4f7f\u7528\u7b2c\u4e00\u4e2a\u8282\u70b9 idc-bigdata-01<\/p>\n<p>su &#8211; hadoop<br \/>\nhdfs zkfc -formatZK<\/p>\n<p>\u6267\u884c\u8f93\u51fa<\/p>\n<p>2023-06-02 04:45:17,095 INFO ha.ActiveStandbyElector: Session connected.<br \/>\n2023-06-02 04:45:17,139 INFO ha.ActiveStandbyElector: Successfully created \/hadoop-ha\/idc-bigdata-cluster in ZK.<br \/>\n2023-06-02 04:45:17,251 INFO zookeeper.ZooKeeper: Session: 0x2000134fa350000 closed<br \/>\n2023-06-02 04:45:17,252 WARN ha.ActiveStandbyElector: Ignoring stale result from old client with sessionId 0x2000134fa350000<br \/>\n2023-06-02 04:45:17,252 INFO zookeeper.ClientCnxn: EventThread shut down for session: 0x2000134fa350000<br \/>\n2023-06-02 04:45:17,257 INFO tools.DFSZKFailoverController: SHUTDOWN_MSG:<br \/>\n\/************************************************************<br \/>\nSHUTDOWN_MSG: Shutting down DFSZKFailoverController at idc-bigdata-01\/10.62.1.192<br \/>\n************************************************************\/<\/p>\n<p>\u9a8c\u8bc1zkfc\u662f\u5426\u683c\u5f0f\u5316\u6210\u529f<\/p>\n<p># zkCli.sh<\/p>\n<p>[zk: localhost:2181(CONNECTED) 1] ls \/<br \/>\n[hadoop-ha, zookeeper]<br \/>\n[zk: localhost:2181(CONNECTED) 2] ls \/hadoop-ha<br \/>\n[idc-bigdata-cluster]<\/p>\n<h5>4.8.2 \u542f\u52a8journalnode<\/h5>\n<p>idc-bigdata-01\u3001idc-bigdata-02\u53caidc-bigdata-03\u8282\u70b9\u542f\u52a8journalnode<\/p>\n<p>su &#8211; hadoop<br \/>\nhdfs &#8211;daemon start journalnode   \u6bcf\u4e2a\u8282\u70b9\u90fd\u9700\u8981\u542f\u52a8<\/p>\n<p>jps \u67e5\u770bjava\u8fdb\u7a0b<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ jps -l<br \/>\n46520 org.apache.hadoop.hdfs.qjournal.server.JournalNode<\/p>\n<p>\u6bcf\u4e2a\u8282\u70b9\u4e0a\u90fd\u6709\u8fd9\u4e2a\u8fdb\u7a0b<br \/>\n\u76d1\u542c\u7aef\u53e3\u4e3a&#xff1a;8485<\/p>\n<h5>4.8.3 namenode\u8282\u70b9\u683c\u5f0f\u5316<\/h5>\n<p>\u5728\u5176\u4e2d\u4e00\u4e2anamenode\u8282\u70b9\u6267\u884c\u683c\u5f0f\u5316&#xff0c;\u4ee5\u5728idc-bigdata-01\u8282\u70b9\u4e3a\u4f8b<\/p>\n<p>su &#8211; hadoop<br \/>\nhdfs namenode -format<\/p>\n<p>\u6267\u884c\u8f93\u51fa <\/p>\n<p>2023-06-02 04:59:50,441 INFO util.GSet: VM type       &#061; 64-bit<br \/>\n2023-06-02 04:59:50,442 INFO util.GSet: 0.029999999329447746% max memory 3.2 GB &#061; 1007.6 KB<br \/>\n2023-06-02 04:59:50,442 INFO util.GSet: capacity      &#061; 2^17 &#061; 131072 entries<br \/>\n2023-06-02 04:59:51,244 INFO namenode.FSImage: Allocated new BlockPoolId: BP-1983029622-10.62.1.192-1685653191244<br \/>\n2023-06-02 04:59:51,314 INFO common.Storage: Storage directory \/datas\/dfs\/name has been successfully formatted.<br \/>\n2023-06-02 04:59:51,597 INFO namenode.FSImageFormatProtobuf: Saving image file \/datas\/dfs\/name\/current\/fsimage.ckpt_0000000000000000000 using no compression<br \/>\n2023-06-02 04:59:51,716 INFO namenode.FSImageFormatProtobuf: Image file \/datas\/dfs\/name\/current\/fsimage.ckpt_0000000000000000000 of size 398 bytes saved in 0 seconds .<br \/>\n2023-06-02 04:59:51,745 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid &gt;&#061; 0<br \/>\n2023-06-02 04:59:51,835 INFO namenode.FSNamesystem: Stopping services started for active state<br \/>\n2023-06-02 04:59:51,835 INFO namenode.FSNamesystem: Stopping services started for standby state<br \/>\n2023-06-02 04:59:51,841 INFO namenode.FSImage: FSImageSaver clean checkpoint: txid&#061;0 when meet shutdown.<br \/>\n2023-06-02 04:59:51,842 INFO namenode.NameNode: SHUTDOWN_MSG:<br \/>\n\/************************************************************<br \/>\nSHUTDOWN_MSG: Shutting down NameNode at idc-bigdata-01\/10.62.1.192<br \/>\n************************************************************\/<\/p>\n<h5>4.8.4 \u542f\u52a8idc-bigdata-01\u8282\u70b9nameNode<\/h5>\n<p>\u542f\u52a8idc-bigdata-01\u8282\u70b9nameNode<\/p>\n<p>su &#8211; hadoop<br \/>\nhdfs &#8211;daemon start namenode<\/p>\n<p>\u67e5\u770b\u8fdb\u7a0b<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ jps<br \/>\n47863 NameNode<br \/>\n46520 JournalNode<br \/>\n47918 Jps<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ ls -lh \/datas\/dfs\/name\/<br \/>\ntotal 4.0K<br \/>\ndrwx&#8212;&#8212; 2 hadoop hadoop 112 Jun  2 04:59 current<br \/>\n-rw-r&#8211;r&#8211; 1 hadoop hadoop  20 Jun  2 05:06 in_use.lock<\/p>\n<h5>4.8.5 \u540c\u6b65\u5176\u5b83\u8282\u70b9nameNode\u6570\u636e<\/h5>\n<p>\u5c06idc-bigdata-01\u8282\u70b9\u4e0anamenode\u7684\u6570\u636e\u540c\u6b65\u5230\u5176\u4ed6nameNode\u8282\u70b9&#xff0c;\u5728idc-bigdata-02\u3001idc-bigdata-03\u8282\u70b9\u6267\u884c&#xff1a;<\/p>\n<p>hdfs namenode -bootstrapStandby<\/p>\n<p>\u6267\u884c\u8fc7\u7a0b<\/p>\n<p>idc-bigdata-02<\/p>\n<p>&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n2023-06-01 21:13:27,641 INFO common.Storage: Storage directory \/datas\/dfs\/name has been successfully formatted.<br \/>\n2023-06-01 21:13:27,694 INFO namenode.FSEditLog: Edit logging is async:true<br \/>\n2023-06-01 21:13:27,776 INFO namenode.TransferFsImage: Opening connection to http:\/\/idc-bigdata-01:9870\/imagetransfer?getimage&#061;1&amp;txid&#061;0&amp;storageInfo&#061;-66:53130945:1685653191244:CID-c35ed3c1-4131-4a48-bf1b-7d8ffe34a40d&amp;bootstrapstandby&#061;true<br \/>\n2023-06-01 21:13:27,877 INFO common.Util: Combined time for file download and fsync to all disks took 0.00s. The file download took 0.00s at 0.00 KB\/s. Synchronous (fsync) write to disk of \/datas\/dfs\/name\/current\/fsimage.ckpt_0000000000000000000 took 0.00s.<br \/>\n2023-06-01 21:13:27,878 INFO namenode.TransferFsImage: Downloaded file fsimage.ckpt_0000000000000000000 size 398 bytes.<br \/>\n2023-06-01 21:13:27,885 INFO ha.BootstrapStandby: Skipping InMemoryAliasMap bootstrap as it was not configured<br \/>\n2023-06-01 21:13:27,888 INFO namenode.NameNode: SHUTDOWN_MSG:<br \/>\n\/************************************************************<br \/>\nSHUTDOWN_MSG: Shutting down NameNode at idc-bigdata-02\/10.62.1.193<\/p>\n<p>idc-bigdata-03<br \/>\n&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n2023-06-02 05:00:58,927 INFO common.Storage: Storage directory \/datas\/dfs\/name has been successfully formatted.<br \/>\n2023-06-02 05:00:58,971 INFO namenode.FSEditLog: Edit logging is async:true<br \/>\n2023-06-02 05:00:59,045 INFO namenode.TransferFsImage: Opening connection to http:\/\/idc-bigdata-01:9870\/imagetransfer?getimage&#061;1&amp;txid&#061;0&amp;storageInfo&#061;-66:53130945:1685653191244:CID-c35ed3c1-4131-4a48-bf1b-7d8ffe34a40d&amp;bootstrapstandby&#061;true<br \/>\n2023-06-02 05:00:59,059 INFO common.Util: Combined time for file download and fsync to all disks took 0.00s. The file download took 0.00s at 0.00 KB\/s. Synchronous (fsync) write to disk of \/datas\/dfs\/name\/current\/fsimage.ckpt_0000000000000000000 took 0.00s.<br \/>\n2023-06-02 05:00:59,059 INFO namenode.TransferFsImage: Downloaded file fsimage.ckpt_0000000000000000000 size 398 bytes.<br \/>\n2023-06-02 05:00:59,077 INFO ha.BootstrapStandby: Skipping InMemoryAliasMap bootstrap as it was not configured<br \/>\n2023-06-02 05:00:59,081 INFO namenode.NameNode: SHUTDOWN_MSG:<br \/>\n\/************************************************************<br \/>\nSHUTDOWN_MSG: Shutting down NameNode at idc-bigdata-03\/10.62.1.194<br \/>\n************************************************************\/<\/p>\n<h5>4.8.6 \u542f\u52a8\u5176\u5b83\u8282\u70b9nameNode<\/h5>\n<p>\u542f\u52a8idc-bigdata-02\u53caidc-bigdata-03\u8282\u70b9nameNode<\/p>\n<p>hdfs &#8211;daemon start namenode<\/p>\n<p>\u67e5\u770b\u8fdb\u7a0b<\/p>\n<p>&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;idc-bigdata-01&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n47863 NameNode<br \/>\n46520 JournalNode<\/p>\n<p>&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;idc-bigdata-02&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>21208 NameNode<br \/>\n19946 JournalNode<br \/>\n&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;idc-bigdata-03&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<br \/>\n19938 JournalNode<br \/>\n21182 NameNode<\/p>\n<p>\u76d1\u63a7\u7aef\u53e3 8020 9870<\/p>\n<p>\u6d4f\u89c8\u5668\u8bbf\u95eeNameNode,\u5f53\u524d\u6240\u6709NameNode\u90fd\u662fstandby\u72b6\u6001&#xff1a;<\/p>\n<p>http:\/\/idc-bigdata-01:9870\/<br \/>\nhttp:\/\/idc-bigdata-02:9870\/<br \/>\nhttp:\/\/idc-bigdata-03:9870\/<\/p>\n<h5>4.9 \u542f\u52a8\u6240\u6709\u5176\u4ed6\u670d\u52a1&#xff0c;\u5305\u62eczkfc<\/h5>\n<p>start-all.sh<\/p>\n<p>\u6b64\u65f6\u518d\u6b21\u67e5\u770bnameNode\u754c\u9762&#xff0c;\u53d1\u73b0\u5df2\u7ecf\u9009\u4e3e\u51fa\u4e00\u4e2aactive\u8282\u70b9:<\/p>\n<p>http:\/\/idc-bigdata-01:9870\/<\/p>\n<p>&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;idc-bigdata-01&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>52096 NameNode<br \/>\n53428 ResourceManager<br \/>\n52949 DFSZKFailoverController<br \/>\n52310 DataNode<br \/>\n53646 NodeManager<br \/>\n52638 JournalNode<\/p>\n<p>&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;idc-bigdata-02&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>23856 NameNode<br \/>\n24962 NodeManager<br \/>\n24514 DFSZKFailoverController<br \/>\n24051 DataNode<br \/>\n24775 ResourceManager<br \/>\n24269 JournalNode<\/p>\n<p>&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;idc-bigdata-03&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;&#061;<\/p>\n<p>24178 DFSZKFailoverController<br \/>\n24469 NodeManager<br \/>\n23931 JournalNode<br \/>\n23723 DataNode<br \/>\n23532 NameNode<\/p>\n<h4>4.10 \u9a8c\u8bc1hadoop\u529f\u80fd<\/h4>\n<h5>4.10.1 \u9a8c\u8bc1HDFS\u4e0a\u4f20\u7b49\u529f\u80fd<\/h5>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ hdfs dfs -put .bash_history \/<br \/>\n[hadoop&#064;idc-bigdata-01 ~]$ hdfs dfs -ls \/<br \/>\nFound 12 items<br \/>\n-rw-r&#8211;r&#8211;   3 hadoop supergroup       7818 2023-06-02 10:23 \/.bash_history<\/p>\n<h5>4.10.2 \u9a8c\u8bc1YARN\u529f\u80fd<\/h5>\n<p>\u8ba1\u7b97\u5706\u5468\u7387<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ hadoop jar \/opt\/module\/hadoop\/share\/hadoop\/mapreduce\/hadoop-mapreduce-examples-3.3.5.jar pi 10 100<\/p>\n<p>&#8230;&#8230;<br \/>\nJob Finished in 3.059 seconds<br \/>\nEstimated value of Pi is 3.14800000000000000000<\/p>\n<h5>4.10.3\u9a8c\u8bc1mapreduce\u529f\u80fd<\/h5>\n<p>echo &#034;hello hadoop&#034; &gt; wordtest<br \/>\nhadoop fs -put wordtest \/wordtest<\/p>\n<p>\u6267\u884c mapreduce \u540e\u751f\u6210\u7ed3\u679c\u6587\u4ef6<br \/>\nhadoop jar \/opt\/module\/hadoop\/share\/hadoop\/mapreduce\/hadoop-mapreduce-examples-3.3.5.jar wordcount \/wordtest \/result<\/p>\n<p>\u67e5\u770b\u7edf\u8ba1\u7ed3\u679c<\/p>\n<p>hadoop fs -cat \/result\/part-r-00000<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ hadoop fs -cat \/result\/part-r-00000<br \/>\nhadoop1<br \/>\nhello1<\/p>\n<h5>4.10.4\u9a8c\u8bc1HA\u9ad8\u53ef\u7528\u6027<\/h5>\n<p>\u6d4b\u8bd5\u662f\u5426\u80fd\u591f\u5b8c\u6210\u81ea\u52a8\u6545\u969c\u8f6c\u79fb\u3002<\/p>\n<p>\u4e4b\u540e\u5237\u65b0\u9875\u9762\u6211\u4eec\u53d1\u73b0idc-bigdata-02\u8282\u70b9&#xff08;\u539fstandy&#xff09;\u81ea\u52a8\u53d8\u6210\u4e86 active namenode\u3002<br \/>\n\u67e5\u770bnodename\u72b6\u6001<\/p>\n<p>[hadoop&#064;idc-bigdata-01 ~]$ hdfs haadmin -getAllServiceState<br \/>\nidc-bigdata-01:8020                                standby<br \/>\nidc-bigdata-02:8020                                active<br \/>\nidc-bigdata-03:8020                                standby <\/p>\n<p>\u505c\u6b62idc-bigdata-02 \u4e0anamenode\u8fdb\u7a0b<\/p>\n<p>\u5728idc-bigdata-02\u8282\u70b9active namenode\u4e0a\u6267\u884c jps &#xff0c;\u786e\u5b9anamenode\u8fdb\u7a0b&#xff0c;kill \u5c06\u5176\u6740\u6389<br \/>\nkill -9 2424  \u6216 hdfs &#8211;daemon stop namenode<\/p>\n<p>[hadoop&#064;idc-bigdata-02 ~]$ hdfs &#8211;daemon stop namenode<br \/>\n[hadoop&#064;idc-bigdata-02 ~]$ jps<br \/>\n60886 Jps<br \/>\n53494 DataNode<br \/>\n54248 ResourceManager<br \/>\n53706 JournalNode<br \/>\n54443 NodeManager<br \/>\n53918 DFSZKFailoverController<\/p>\n<p>\u67e5\u770bnamenode\u72b6\u6001<\/p>\n<p>[hadoop&#064;idc-bigdata-02 ~]$ hdfs haadmin -getAllServiceState<br \/>\nidc-bigdata-01:8020                                standby<br \/>\n2023-06-02 11:37:47,527 INFO ipc.Client: Retrying connect to server: idc-bigdata-02\/10.62.1.193:8020. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries&#061;1, sleepTime&#061;1000 MILLISECONDS)<br \/>\nidc-bigdata-02:8020                                Failed to connect: Call From idc-bigdata-02\/10.62.1.193 to idc-bigdata-02:8020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:  http:\/\/wiki.apache.org\/hadoop\/ConnectionRefused<br \/>\nidc-bigdata-03:8020                                active<br \/>\n[hadoop&#064;idc-bigdata-02 ~]$ hdfs haadmin -getServiceState nn1<\/p>\n<p>\u73b0\u5728namenode \u5df2\u5207\u6362\u5230idc-bigdata-03 <\/p>\n<p>\u518d\u6b21\u9a8c\u8bc1\u4e0a\u4f20\u4e0b\u8f7d\u7b49\u529f\u80fd\u662f\u5426\u6b63\u5e38<\/p>\n<p>HA\u6a21\u5f0fRM\u7684active\u8282\u70b9<\/p>\n<p>yarn rmadmin -getAllServiceState<br \/>\nyarn rmadmin -getServiceState rm1<\/p>\n<p>\u5207\u6362<br \/>\nyarn rmadmin -transitionToStandby rm1<\/p>\n<h4>\u91cd\u7f6ehadoop\u96c6\u7fa4<\/h4>\n<h5>\u5220\u9664\u65e7\u6570\u636e<\/h5>\n<p>\u68c0\u67e5hadoop\u96c6\u7fa4\u72b6\u6001&#xff0c;\u5982\u679c\u96c6\u7fa4\u4e2d\u5b58\u5728hadoop\u7684\u670d\u52a1\u8fdb\u7a0b&#xff0c;\u5c06hadoop\u7684\u6240\u6709\u670d\u52a1\u7ec4\u4ef6\u90fd\u5173\u95ed \u5173\u95edhadoop\u96c6\u7fa4\u670d\u52a1\u7ec4\u4ef6 \u6e05\u7406hadoop\u96c6\u7fa4\u5b89\u88c5\u76ee\u5f55\u4e0b\u7684data\u548clogs\u76ee\u5f55<\/p>\n<p>\u505c\u4e0azookeeper \u96c6\u7fa4&#xff0c;\u5220\u9664 zookeeper \u76f8\u5173\u5220\u9664 rm -rf \/data\/zookeeper\/data\/version-2 rm -rf \/datas\/dfs\/dn1\/ rm -rf \/datas\/dfs\/dn2\/* rm -rf \/datas\/dfs\/jn rm -rf \/datas\/dfs\/nn rm -rf \/datas\/dfs\/tmp<\/p>\n<h5>\u6309\u987a\u5e8f\u91cd\u542f\u521d\u59cb\u5316<\/h5>\n<p>1.\u542f\u52a8zookeeper\u96c6\u7fa4<\/p>\n<p>zkServer.sh start<br \/>\n\u68c0\u67e5\u542f\u52a8\u60c5\u51b5&#xff1a; jps &#xff0c;\u6bcf\u4e2a\u8282\u70b9\u5305\u542bQuorumPeerMain\u8fdb\u7a0b\u4ee3\u8868zk\u96c6\u7fa4\u542f\u52a8\u6210\u529f\u6216\u8005\u6bcf\u4e2a\u8282\u70b9\u6267\u884c&#xff1a;<br \/>\nzkServer.sh status&#xff0c;\u67e5\u770b\u662f\u5426\u6709leader\u8282\u70b9\u3002<\/p>\n<p>2.\u6bcf\u4e2anamenode\u8282\u70b9\u4e0a\u542f\u52a8journalnode\u8fdb\u7a0b<br \/>\nhdfs &#8211;daemon start journalnode<\/p>\n<p>3.\u5728\u7b2c\u4e00\u53f0namenode\u8282\u70b9\u4e0a\u683c\u5f0f\u5316namenode<br \/>\nhdfs namenode -format<br \/>\n\u542f\u52a8\u8fd9\u53f0\u8282\u70b9\u7684namenode<br \/>\nhdfs &#8211;daemon start namenode<\/p>\n<p>4.\u5176\u4ed6Namenode\u8282\u70b9\u4e0a\u9996\u6b21\u8981\u624b\u52a8\u540c\u6b65\u4e00\u6b21\u6570\u636e&#xff0c;\u5728\u53e6\u5916\u4fe9\u4e2a\u8282\u70b9\u6267\u884c&#xff1a;<br \/>\nhdfs namenode -bootstrapStandby<br \/>\n\u540c\u6b65\u5b8c\u6210\u540e\u542f\u52a8namenode<br \/>\nhdfs &#8211;daemon start namenode<\/p>\n<p>5.\u521d\u59cb\u5316ZKFC  \u6ce8\u8fd9\u91cc\u7684\u521d\u59cb\u5316\u4e5f\u53ef\u4ee5\u653e\u5728\u7b2c\u4e00\u6b65\u64cd\u4f5c<br \/>\nZKFC\u7528\u4e8e\u76d1\u63a7active namenode\u8282\u70b9\u662f\u5426\u6302\u6389&#xff0c;\u901a\u77e5\u5176\u5b83\u8282\u70b9\u4e0a\u7684ZKFC\u5f3a\u884c\u6740\u6b7b\u81ea\u5df1ZKFC\u8282\u70b9\u4e0a\u7684namenode<br \/>\n&#xff08;\u9632\u6b62\u5176\u5047\u6b7b\u72b6\u6001\u4ea7\u751f\u96c6\u7fa4namenode\u8111\u88c2\u7684\u53d1\u751f&#xff09;&#xff0c;\u7136\u540e\u9009\u4e3e\u51fa\u5176\u4ed6namenode\u4e3aactive\u8282\u70b9<br \/>\n\u96c6\u7fa4\u9996\u6b21\u642d\u5efa\u9700\u8981\u5728zookeeper\u4e2d\u521d\u59cb\u5316namenode\u4fe1\u606f&#xff0c;\u5728namenode1\u8282\u70b9\u6267\u884c\u547d\u4ee4&#xff1a;<br \/>\nhdfs zkfc -formatZK<br \/>\n\u4e3b\u8282\u70b9\u542f\u52a8zkfc<br \/>\nhdfs &#8211;daemon start zkfc<\/p>\n<p>#### \u542f\u52a8HDFS\u76f8\u5173\u8fdb\u7a0b<br \/>\n \u5728namenode1\u8282\u70b9\u4e0a&#xff0c;\u542f\u52a8HDFS\u6574\u4e2a\u96c6\u7fa4&#xff08;\u5305\u62ec\u5176\u4ed6\u8282\u70b9&#xff09;\u7684\u5176\u4ed6\u8fdb\u7a0b&#xff08;Datanode\/DFSZKFailoverController&#xff09;&#xff0c;\u6267\u884c\u547d\u4ee4&#xff1a;<br \/>\nstart-dfs.sh<br \/>\nstart-yarn.sh<br \/>\n\u6216\u8005\u6267\u884cstart-all.sh <\/p>\n<p>6.\u67e5\u770bnamenode active\u8282\u70b9<\/p>\n<p>hdfs haadmin -getAllServiceState<br \/>\n[hadoop&#064;idc-bigdata-01 ~]$ hdfs haadmin -getAllServiceState<br \/>\nidc-bigdata-01:8020                                active<br \/>\nidc-bigdata-02:8020                                standby<br \/>\nidc-bigdata-03:8020                                standby  <\/p>\n<p>7. \u542f\u52a8\u65e5\u5fd7\u670d\u52a1<br \/>\nidc-bigdata-03<br \/>\nmapred &#8211;daemon start historyserver<\/p>\n<p>8. \u9a8c\u8bc1\u9ad8\u53ef\u7528<br \/>\nkill -9 active namenode\u8fdb\u7a0b&#xff0c;\u67e5\u770b\u9875\u9762\u72b6\u6001&#xff0c;\u53ef\u53d1\u73b0\u53e6\u5916\u67d0\u4e2anamenode\u81ea\u52a8\u5207\u6362\u6210active\u72b6\u6001\u3002<br \/>\n\u8bb0\u4f4fkill\u6389\u7684&#xff0c;\u5b9e\u9a8c\u7ed3\u675f\u540e\u518d\u542f\u52a8\u8d77\u6765\u3002<br \/>\nkill \u6216 hdfs &#8211;daemon stop namenode<br \/>\n\u96c6\u7fa4\u4e00\u5171\u4e00\u6709namenode \u6700\u591a\u53ef\u4ee5\u5bb9\u5fcd\u4e24\u4e2a\u5b95\u673a<\/p>\n<p>9. \u9a8c\u8bc1\u96c6\u7fa4\u662f\u5426\u53ef\u7528<\/p>\n<p>hdfs dfs -mkdir \/data<br \/>\nhdfs dfs -mkdir hdfs:\/\/idc-bigdata-cluster\/wordcount<br \/>\nhdfs dfs -put wordcount.txt hdfs:\/\/idc-bigdata-cluster\/wordcount<br \/>\nhdfs dfs -ls hdfs:\/\/idc-bigdata-cluster\/wordcount<\/p>\n<h5>hadoop \u6587\u4ef6\u5206\u6790<\/h5>\n<p>\u67e5\u770bnamenode \u76ee\u5f55\u7ed3\u6784<\/p>\n<p>ls -lh \/datas\/dfs\/nn\/current\/<\/p>\n<p>-rw-rw-r&#8211; 1 hadoop hadoop   42 Jun  4 11:51 edits_0000000000000002362-0000000000000002363<br \/>\n-rw-rw-r&#8211; 1 hadoop hadoop 1.0M Jun  4 11:51 edits_inprogress_0000000000000002364<br \/>\n-rw-rw-r&#8211; 1 hadoop hadoop 9.0K Jun  4 10:28 fsimage_0000000000000002018<br \/>\n-rw-rw-r&#8211; 1 hadoop hadoop   62 Jun  4 10:28 fsimage_0000000000000002018.md5<br \/>\n-rw-rw-r&#8211; 1 hadoop hadoop  12K Jun  4 11:28 fsimage_0000000000000002263<br \/>\n-rw-rw-r&#8211; 1 hadoop hadoop   62 Jun  4 11:28 fsimage_0000000000000002263.md5<br \/>\n-rw-rw-r&#8211; 1 hadoop hadoop    5 Jun  4 11:51 seen_txid<br \/>\n-rw-r&#8211;r&#8211; 1 hadoop hadoop  215 Jun  3 21:14 VERSION<\/p>\n<p>fsimage\u662fNameNode\u5143\u6570\u636e\u5728\u5185\u5b58\u6ee1\u4e86\u540e&#xff0c;\u6301\u4e45\u5316\u4fdd\u5b58\u5230\u7684\u6587\u4ef6\u3002 fsimage*.md5 \u662f\u6821\u9a8c\u6587\u4ef6&#xff0c;\u7528\u4e8e\u6821\u9a8cfsimage\u7684\u5b8c\u6574\u6027\u3002 seen_txid \u662fhadoop\u7684\u7248\u672c vession\u6587\u4ef6\u91cc\u4fdd\u5b58 namespaceID&#xff1a;NameNode\u7684\u552f\u4e00ID clusterID:\u96c6\u7fa4ID NameNode\u548cDataNode\u7684\u96c6\u7fa4ID\u5e94\u8be5\u4e00\u81f4&#xff0c;\u8868\u660e\u662f\u4e00\u4e2a\u96c6\u7fa4<\/p>\n<p>[root&#064;idc-bigdata-01 ~]# more \/datas\/dfs\/nn\/current\/VERSION #Sat Jun 03 21:14:52 CST 2023 namespaceID&#061;1498354829 clusterID&#061;CID-24440b17-58ee-4d55-a589-ea0a5c5c0be6 cTime&#061;1685798092376 storageType&#061;NAME_NODE blockpoolID&#061;BP-899285325-10.62.1.192-1685798092376 layoutVersion&#061;-66<\/p>\n<p>\u6ce8\u610f&#xff1a;<\/p>\n<p>\u5982\u679c\u9700\u8981\u91cd\u65b0\u683c\u5f0f\u5316NameNode,\u9700\u8981\u5148\u5c06\u539f\u6765NameNode\u548cDataNode\u4e0b\u7684\u6587\u4ef6\u5168\u90e8\u5220\u9664&#xff0c;\u4e0d\u7136\u4f1a\u62a5\u9519&#xff0c;NameNode\u548cDataNode\u6240\u5728 \u76ee\u5f55\u662f\u5728core-site.xml\u4e2dhadoop.tmp.dir\u3001dfs.namenode.name.dir\u3001dfs.datanode.data.dir\u5c5e\u6027\u914d\u7f6e\u7684\u3002<\/p>\n<p>\u56e0\u4e3a\u6bcf\u6b21\u683c\u5f0f\u5316&#xff0c;\u9ed8\u8ba4\u662f\u521b\u5efa\u4e00\u4e2a\u96c6\u7fa4ID&#xff0c;\u5e76\u5199\u5165NameNode\u548cDataNode\u7684VERSION\u6587\u4ef6\u4e2d&#xff08;VERSION\u6587\u4ef6\u6240\u5728\u76ee\u5f55\u4e3a dfs\/name\/current \u548c dfs\/data\/current&#xff09;&#xff0c;\u91cd\u65b0\u683c\u5f0f\u5316\u65f6&#xff0c;\u9ed8\u8ba4\u4f1a\u751f\u6210\u4e00\u4e2a\u65b0\u7684\u96c6\u7fa4ID,\u5982\u679c\u4e0d\u5220\u9664\u539f\u6765\u7684\u76ee\u5f55&#xff0c; \u4f1a\u5bfc\u81f4namenode\u4e2d\u7684VERSION\u6587\u4ef6\u4e2d\u662f\u65b0\u7684\u96c6\u7fa4ID,\u800cDataNode\u4e2d\u662f\u65e7\u7684\u96c6\u7fa4ID&#xff0c;\u4e0d\u4e00\u81f4\u65f6\u4f1a\u62a5\u9519\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6587\u7ae0\u6d4f\u89c8\u9605\u8bfb880\u6b21\uff0c\u70b9\u8d5e20\u6b21\uff0c\u6536\u85cf17\u6b21\u3002Hadoop\u662f\u4e00\u4e2a\u7531Apache\u57fa\u91d1\u4f1a\u6240\u5f00\u53d1\u7684\u5206\u5e03\u5f0f\u7cfb\u7edf\u57fa\u7840\u67b6\u6784\u3002\u7528\u6237\u53ef\u4ee5\u5728\u4e0d\u4e86\u89e3\u5206\u5e03\u5f0f\u5e95\u5c42\u7ec6\u8282\u7684\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u5206\u5e03\u5f0f\u7a0b\u5e8f\u3002\u5145\u5206\u5229\u7528\u96c6\u7fa4\u7684\u5a01\u529b\u8fdb\u884c\u9ad8\u901f\u8fd0\u7b97\u548c\u5b58\u50a8\u3002HADOOP\u96c6\u7fa4\u5177\u4f53\u6765\u8bf4\u5305\u542b\u4e24\u4e2a\u96c6\u7fa4\uff1aHDFS\u96c6\u7fa4\u548cYARN\u96c6\u7fa4\uff0c\u4e24\u8005\u903b\u8f91\u4e0a\u5206\u79bb\uff0c\u4f46\u7269\u7406\u4e0a\u5e38\u5728\u4e00\u8d77\u3002HDFS\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u7684\u5b58\u50a8\uff0c\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709\uff1aNameNode\u3001DataNode\u3001SecondaryNameNodeYARN\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u8fd0\u7b97\u65f6\u7684\u8d44\u6e90\u8c03\u5ea6\uff0c\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709\uff1aResourceManager\u3001NodeManager\u3002_\u57fa\u4e8ekylin\u7684hadoop\u96c6\u7fa4\u642d\u5efa<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[779,323,43,44],"topic":[],"class_list":["post-16056","post","type-post","status-publish","format-standard","hentry","category-server","tag-hadoop","tag-323","tag-43","tag-44"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.wsisp.com\/helps\/16056.html\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"og:description\" content=\"\u6587\u7ae0\u6d4f\u89c8\u9605\u8bfb880\u6b21\uff0c\u70b9\u8d5e20\u6b21\uff0c\u6536\u85cf17\u6b21\u3002Hadoop\u662f\u4e00\u4e2a\u7531Apache\u57fa\u91d1\u4f1a\u6240\u5f00\u53d1\u7684\u5206\u5e03\u5f0f\u7cfb\u7edf\u57fa\u7840\u67b6\u6784\u3002\u7528\u6237\u53ef\u4ee5\u5728\u4e0d\u4e86\u89e3\u5206\u5e03\u5f0f\u5e95\u5c42\u7ec6\u8282\u7684\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u5206\u5e03\u5f0f\u7a0b\u5e8f\u3002\u5145\u5206\u5229\u7528\u96c6\u7fa4\u7684\u5a01\u529b\u8fdb\u884c\u9ad8\u901f\u8fd0\u7b97\u548c\u5b58\u50a8\u3002HADOOP\u96c6\u7fa4\u5177\u4f53\u6765\u8bf4\u5305\u542b\u4e24\u4e2a\u96c6\u7fa4\uff1aHDFS\u96c6\u7fa4\u548cYARN\u96c6\u7fa4\uff0c\u4e24\u8005\u903b\u8f91\u4e0a\u5206\u79bb\uff0c\u4f46\u7269\u7406\u4e0a\u5e38\u5728\u4e00\u8d77\u3002HDFS\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u7684\u5b58\u50a8\uff0c\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709\uff1aNameNode\u3001DataNode\u3001SecondaryNameNodeYARN\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u8fd0\u7b97\u65f6\u7684\u8d44\u6e90\u8c03\u5ea6\uff0c\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709\uff1aResourceManager\u3001NodeManager\u3002_\u57fa\u4e8ekylin\u7684hadoop\u96c6\u7fa4\u642d\u5efa\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.wsisp.com\/helps\/16056.html\" \/>\n<meta property=\"og:site_name\" content=\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-18T14:36:49+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"43 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/16056.html\",\"url\":\"https:\/\/www.wsisp.com\/helps\/16056.html\",\"name\":\"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"isPartOf\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\"},\"datePublished\":\"2025-04-18T14:36:49+00:00\",\"dateModified\":\"2025-04-18T14:36:49+00:00\",\"author\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/16056.html#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.wsisp.com\/helps\/16056.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/16056.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.wsisp.com\/helps\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\",\"url\":\"https:\/\/www.wsisp.com\/helps\/\",\"name\":\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"description\":\"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"contentUrl\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"caption\":\"admin\"},\"sameAs\":[\"http:\/\/wp.wsisp.com\"],\"url\":\"https:\/\/www.wsisp.com\/helps\/author\/admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.wsisp.com\/helps\/16056.html","og_locale":"zh_CN","og_type":"article","og_title":"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","og_description":"\u6587\u7ae0\u6d4f\u89c8\u9605\u8bfb880\u6b21\uff0c\u70b9\u8d5e20\u6b21\uff0c\u6536\u85cf17\u6b21\u3002Hadoop\u662f\u4e00\u4e2a\u7531Apache\u57fa\u91d1\u4f1a\u6240\u5f00\u53d1\u7684\u5206\u5e03\u5f0f\u7cfb\u7edf\u57fa\u7840\u67b6\u6784\u3002\u7528\u6237\u53ef\u4ee5\u5728\u4e0d\u4e86\u89e3\u5206\u5e03\u5f0f\u5e95\u5c42\u7ec6\u8282\u7684\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u5206\u5e03\u5f0f\u7a0b\u5e8f\u3002\u5145\u5206\u5229\u7528\u96c6\u7fa4\u7684\u5a01\u529b\u8fdb\u884c\u9ad8\u901f\u8fd0\u7b97\u548c\u5b58\u50a8\u3002HADOOP\u96c6\u7fa4\u5177\u4f53\u6765\u8bf4\u5305\u542b\u4e24\u4e2a\u96c6\u7fa4\uff1aHDFS\u96c6\u7fa4\u548cYARN\u96c6\u7fa4\uff0c\u4e24\u8005\u903b\u8f91\u4e0a\u5206\u79bb\uff0c\u4f46\u7269\u7406\u4e0a\u5e38\u5728\u4e00\u8d77\u3002HDFS\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u7684\u5b58\u50a8\uff0c\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709\uff1aNameNode\u3001DataNode\u3001SecondaryNameNodeYARN\u96c6\u7fa4\u8d1f\u8d23\u6d77\u91cf\u6570\u636e\u8fd0\u7b97\u65f6\u7684\u8d44\u6e90\u8c03\u5ea6\uff0c\u96c6\u7fa4\u4e2d\u7684\u89d2\u8272\u4e3b\u8981\u6709\uff1aResourceManager\u3001NodeManager\u3002_\u57fa\u4e8ekylin\u7684hadoop\u96c6\u7fa4\u642d\u5efa","og_url":"https:\/\/www.wsisp.com\/helps\/16056.html","og_site_name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","article_published_time":"2025-04-18T14:36:49+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"admin","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"43 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.wsisp.com\/helps\/16056.html","url":"https:\/\/www.wsisp.com\/helps\/16056.html","name":"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","isPartOf":{"@id":"https:\/\/www.wsisp.com\/helps\/#website"},"datePublished":"2025-04-18T14:36:49+00:00","dateModified":"2025-04-18T14:36:49+00:00","author":{"@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41"},"breadcrumb":{"@id":"https:\/\/www.wsisp.com\/helps\/16056.html#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.wsisp.com\/helps\/16056.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.wsisp.com\/helps\/16056.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.wsisp.com\/helps"},{"@type":"ListItem","position":2,"name":"\u94f6\u6cb3\u9e92\u9e9f\u670d\u52a1\u5668\u64cd\u4f5c\u7cfb\u7edf\u90e8\u7f72Hadoop\u96c6\u7fa4"}]},{"@type":"WebSite","@id":"https:\/\/www.wsisp.com\/helps\/#website","url":"https:\/\/www.wsisp.com\/helps\/","name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","description":"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41","name":"admin","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/","url":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","contentUrl":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","caption":"admin"},"sameAs":["http:\/\/wp.wsisp.com"],"url":"https:\/\/www.wsisp.com\/helps\/author\/admin"}]}},"_links":{"self":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/16056","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/comments?post=16056"}],"version-history":[{"count":0,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/16056\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/media?parent=16056"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/categories?post=16056"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/tags?post=16056"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/topic?post=16056"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}