天天看點

學習筆記--hadoop

Hadoop

hadoop-1.2.1.tar.gz jdk-6u32-linux-x64.bin

Useradd  -u 900 hadoop

Mv jdk1.6.0_32  /home/hadoop

Mv hadoop-1.2.1.tar.gz/home/hadoop

Chown hadoop.hadoop /home/hadoop -R

Su -hadoop

Ln -s jdk1.6.0_32 java

Tar zxf hadoop-1.2.1.tar.gz hadoop-1.2.1

Ln -s hadoop-1.2.1 hadoop

更改環境變量:

學習筆記--hadoop

Vim /hadoop/conf/hadoop-env.sh

學習筆記--hadoop

Cd /hadoop

Mkdir input

Cp conf/*.xml input

Bin/hadoop jar hadoop-examples-1.2.1.jar grep input output ‘dfs[a-z.]+’

設定無密碼登陸:

Ssh-keygen

Ssh-copy-id 172.25.60.1

保證 master 到所有的 slave 節點都實作無密碼登入

Cd ~/hadoop/conf

Vim slaves ---->172.25.60.1

Vim masters---->172.25.60.1

Vim core-site.xml  在configuration中間添加以下内容

<configuration>

        <property>

                <name>fs.default.name</name>

                        <value>hdfs://172.25.60.1:9000</value>

                                </property>

</configuration>

Vim hdfs-site.xml 在configuration中間添加以下内容

                <name>dfs.replication</name>

                        <value>1</value>

Vim mapred-site.xml 在configuration中間添加以下内容

                <name>mapred.job.tracker</name>

                        <value>172.25.60.1:9001</value>

格式化一個新的分布式檔案系統:

$ bin/hadoop namenode  -format

啟動 Hadoop 守護程序:

$ bin/start-all.sh

在各個節點檢視 hadoop 程序:

$ jps

Hadoop 守護程序的日志寫入到 ${HADOOP_HOME}/logs 目錄

浏覽 NameNode 和 JobTracker 的網絡接口,它們的位址預設為:

NameNode – http://172.25.60.1:50070/

JobTracker – http://172.25.60.1:50030/

将輸入檔案拷貝到分布式檔案系統:

$ bin/hadoop fs -put conf input

運作發行版提供的示例程式:

$ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'

檢視輸出檔案:

将輸出檔案從分布式檔案系統拷貝到本地檔案系統檢視:

$ bin/hadoop fs -get output output

$ cat output/*

或者

在分布式檔案系統上檢視輸出檔案:

$ bin/hadoop fs -cat output/*

完成全部操作後,停止守護程序:

$ bin/stop-all.sh

完全分布式(三個節點)server1 server2 server4:

在三個節點上安裝 rpcbind nfs-utils 并打開rpcind nfs服務

Vim /etc/exports

/home/hadoop    *(rw,all_squash,anonuid=900,anongid=900)

在slave2 4上添加使用者  useradd -u 900 hadoop

mount  172.25.60.1:/home/hadoop/  /home/hadoop/

在1上分别進行ssh 連接配接 ssh 172.25.60.2ssh172.25.60.4

在master上:vim  ~/hadoop/conf

Vim slaves

172.25.60.2

172.25.60.4

Vim hdfs-site.xml

<Value>1</value> ------> <Value>2</value>

(删除tmp------>格式化---->bin/start-dfs.sh----->bin/hadoop fs -put conf/ input----->bin/start-mapred.sh

bin/hadoop jar hadoop-examples-1.2.1.jar grep input output 'dfs[a-z.]+')

bin/hadoop  dfsadmin-report:檢視節點運作狀态

bin/hadoop fs -ls :檢視輸出檔案

添加一個節點檔案:

學習筆記--hadoop

線上添加節點:

添加使用者 useradd -u 900 hadoop

mount 172.25.60.1:/home/hadoop/home/hadoop

su - hadoop

vim slaves加入該節點 ----->>172.25.60.5

bin/hadoop-daemon.sh start datanode

bin/hadoop-daemon.sh start tasktracker

線上删除節點:

先做資料遷移:

在server上:vim mapred-site.xml

<property>

<name>dfs.hosts.exclude</name>

<value>/home/hadoop/hadoop/conf/hostexclude</value>

</property>

Vim hadoop/hadoop/conf/hostexclude------->172.25.60.4

Bin/hadoop dfsadmin -refreshNodes  ####重新整理節點

資源回收筒功能:

vimcore-site.xml添加以下:

<name>fs.trash.interval</name>

<value>1440</value>      1440=60*24

實驗:bin/hadoop fs -rm input/hadoop-env.sh

bin/hadoop fs -ls input  檢視是否删除

bin/hadoop fs -ls 此時新增目錄 .Trash

bin/hadoop fs -ls .Trash/Current/user/hadoop/input

将此檔案移回原目錄即可恢複

bin/hadoop fs -mv .Trash/Current/user/hadoop/input/hadoop-env.sh input   

優化:

學習筆記--hadoop
學習筆記--hadoop
學習筆記--hadoop
學習筆記--hadoop

更新hadoop至2.6版本

删除之前的連結,解壓hadoop-2.6.4.tar.gz   jdk-7u79-linux-x64.tar.gz到hadoop家目錄,并更改權限為hadoop.hadoop進入hadoop使用者,連結成hadoop和java,進入hadoop/etc/hadoop/

vim  hadoop-env.sh    export JAVA_HOME=/home/hadoop/java

cd /hadoop/etc/hadoop

vim  core-site.xml

                <name>fs.defaultFS</name>

                <value>hdfs://172.25.60.1:9000</value>

                        </property>

vim hdfs-site.xml

  <property>

                <value>2</value>

vim yarn-env.sh

# some Java parameters

export JAVA_HOME=/home/hadoop/java

cp  mapred-site.xml.template  mapred-site.xml

     <property>

                <name>mapreduce.framework.name</name>

                <value>yarn</value>

vim yarn-site.xml

         <property>

                <name>yarn.nodemanager.aux-services</name>

                <value>mapreduce_shuffle</value>

        </property>

vim slaves  

172.25.60.5

bin/hdfs namenode -format

sbin/start-dfs.sh

bin/hdfs dfs -mkdir /user

bin/hdfs dfs -mkdir /user/hadoop

bin/hdfs dfs -put etc/hadoop input

sbin/start-yarn.sh

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output 'dfs[a-z.]+'

通路 172.25.60.1:50070   172.25.60.1:8088

##########替換lib下檔案為64位(不更改的話啟動時會有warn警告)

mv   hadoop-native-64-2.6.0.tar   /home/hadoop/hadoop/lib/native

tarxf  hadoop-native-64-2.6.0.tar

###########指定節點目錄

學習筆記--hadoop

繼續閱讀