1. 程式人生 > >centos7 hadoop 3節點叢集安裝筆記

centos7 hadoop 3節點叢集安裝筆記

                                     安裝  hadoop

賦予hadoop使用者sudo許可權:

1. 切換到root使用者,給hadoop使用者授予sudo許可權:修改/etc/sudoers檔案,由於預設root使用者也不可以寫入,這裡開啟寫入許可權:
su  - root
cd /etc/
ls -la | grep sudoer
chmod u+w sudoers         

2  增加一行,賦予hadoop使用者sudo許可權:     hadoop    ALL=(ALL)       ALL


3.用root使用者在/usr/local目錄下面解壓hadoop壓縮包
cd /soft
ls -lh
tar -zxvf hadoop-2.7.4.tar.gz 
mv hadoop-2.7.4 /usr/local/hadoop-2.7.4

cd  /usr/local/hadoop-2.7.4
mkdir tmp
mkdir dfs


改變檔案的使用者組:
chown -R hadoop /usr/local/hadoop-2.7.4/
chgrp -R hadoop /usr/local/hadoop-2.7.4/


在/etc/profile 中配置hadoop的環境變數:

echo "export  HADOOP_HOME=/usr/local/hadoop-2.7.4" >> /etc/profile
echo -e 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin'>> /etc/profile
source /etc/profile  

控制檯 hadoop  version 檢視hadoop版本資訊:    hadoop version


修改hadoop-env.sh:  

vim開啟:
vim  /usr/local/hadoop-2.7.4/etc/hadoop/hadoop-env.sh

修改如下行:
export JAVA_HOME=/usr/java/jdk1.8.0



修改:vim  /usr/local/hadoop-2.7.4/etc/hadoop/core-site.xml
<configuration>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop-2.7.4/tmp</value>
</property>
<property>
    <name>fs.default.name</name>
    <value>hdfs://node1:9000</value>
</property>
</configuration>

su - hadoop
cd ~
mkdir tmp


修改:vim  /usr/local/hadoop-2.7.4/etc/hadoop/hdfs-site.xml 
configuration>
<property>
    <name>dfs.name.dir</name>
    <value>/usr/local/hadoop-2.7.4/dfs/name</value>
   <description>Path on the local filesystem where the NameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
    <name>dfs.data.dir</name>
    <value>/usr/local/hadoop-2.7.4/dfs/data</value>
    <description>Comma separated list of paths on the local filesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
     <name>dfs.replication</name>
     <value>1</value>
</property>
</configuration>



修改:vim  /usr/local/hadoop-2.7.4/etc/hadoop/yarn-site.xml 
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
</property>
<property>
      <name>yarn.resourcemanager.hostname</name>
      <value>node1</value>
</property>
<property>
    <name>yarn.resourcemanager.address</name>
    <value>node1:8032</value>
</property>
<property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>node1:8030</value>
</property>
<property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>node1:8031</value>
</property>
<property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>node1:8033</value>
</property>
<property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>node1:8088</value>
</property>
</configuration>


修改:/usr/local/hadoop-2.7.4/etc/hadoop/mapred-site.xml

mv mapred-site.xml.template mapred-site.xml
vim  /usr/local/hadoop-2.7.4/etc/hadoop/mapred-site.xml

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>
<property>
    <name>mapreduce.job.tracker</name>
    <value>node1:9001</value>
</property>
<property>
    <name>mapreduce.jobtracker.http.address</name>
    <value>node1:50030</value>
</property>
<property>
    <name>mapreduce.jobhistory.address</name>
    <value>node1:10020</value>
</property>
<property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>node1:19888</value>
</property>



配置masters檔案:
cd  /usr/local/hadoop-2.7.4/etc/hadoop/

vim masters
新增: 
node1

vim slaves
新增並註釋原檔案中的localhost: 
#localhost
node2
node3



格式戶hdfs:
hadoop  namenode  -format


啟動:
/usr/local/hadoop-2.7.4/sbin/./start-all.sh

更推薦的執行方式:
cd sbin
./start-dfs.sh
./start-yarn.sh

單獨啟動datanode或者namenode
hadoop-daemon.sh start datanode
hadoop-daemon.sh start namenode 

停止:
/usr/local/hadoop-2.7.4/sbin/./stop-all.sh

訪問檢視啟動狀態可以訪問:
http://192.168.209.129:50070/
http://192.168.209.129:8088

jps檢視:
主節點: NameNode, SecondNameNode, ResourceManager已經啟動
從節點:NodeManager,dataNode已經啟動

主節點監控執行狀態:
hadoop dfsadmin -report

檢視端口占用:
netstat -ntlp
netstat -tnl