1、準備工做html
1.申請機器java
1)修改配置:node
申請虛擬機下來了,經過xshell鏈接進入,python
主機名仍是默認的,修改下,否則看着不習慣shell
>hostname 查看主機名vim
>vim /etc/sysconfig/network瀏覽器
按i、 I 、a、 A其中一個,進入輸入模式bash
HOSTNAME=master 改爲本身想要的名字工具
按Esc退出輸入模式oop
:wq 保存並退出
要想改的名字生效,執行reboot,這個過程可能須要幾分鐘,而後再xshell鏈接
二、準備軟件
1)安裝java 1.8
java -version 發現有了,不用安裝了,此步省略
2)python 也有了,不用安裝了
3)上傳文件
rz命令上傳文件
bash: rz: command not found
發現rz命令不能用,須要安裝
>rpm -qa lrzsz 查看安裝版本,發現是空的,沒安裝
>yum -y install lrzsz 安裝上傳下載命令工具
>mkdir soft 新建存在文件目錄
>cd soft
>rz 命令,執行文件上傳,選擇要上傳的文件 hadoop-2.8.4.tar.gz
>tar -xvf hadoop-2.8.4.tar.gz 解壓hadoop文件
在根目錄建立hadoop目錄,
將解壓的hadoop文件夾移動到建立的hadoop目錄
>mv hadoop-2.8.4 /hadoop
2、安裝配置
1.java環境變量配置
>vim /etc/profile
JAVA_HOME=/opt/java/jdk1.8.0_181
JRE_HOME=/opt/java/jdk1.8.0_181/jre
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=.:$JAVA_HOME/bin:$PATH
>source /etc/profile 使配置生效
2.hadoop環境變量配置
>vim /etc/profile
export HADOOP_HOME=/hadoop/hadoop-2.8.4
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH
>source /etc/profile 使配置生效
3.hadoop配置文件修改
在修改配置文件以前,建立hadoop臨時目錄
[root@master ~]# mkdir /root/hadoop
[root@master ~]# mkdir /root/hadoop/tmp
[root@master ~]# mkdir /root/hadoop/var
[root@master ~]# mkdir /root/hadoop/dfs
[root@master ~]# mkdir /root/hadoop/dfs/name
[root@master ~]# mkdir /root/hadoop/dfs/data
>cd /hadoop/hadoop-2.8.4/etc/hadoop 切換到hadoop配置文件目錄
1)修改core-site.xml文件
<configuration> <property> <name>hadoop.tmp.dir</name> <value>/root/hadoop/tmp</value> <description>hadoop tmp dir</description> </property> <property> <name>fs.default.name</name> <value>hdfs://master:9000</value> </property> </configuration>
2)修改 hadoop-env.sh
>vi hadoop-env.sh
將export JAVA_HOME=${JAVA_HOME}中${JAVA_HOME}修改爲java具體安裝目錄
export JAVA_HOME=/opt/java/jdk1.8.0_181
3)修改hdfs-site.xml
>vi hdfs-site.xml
<property> <name>dfs.name.dir</name> <value>/root/hadoop/dfs/name</value> <description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description> </property> <property> <name>dfs.data.dir</name> <value>/root/hadoop/dfs/data</value> <description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.permissions</name> <value>true</value> <description>need not permissions</description> </property>
dfs.permissions配置爲false後,能夠容許不要檢查權限就生成dfs上的文件,方便卻是方便了,可是你須要防止誤刪除,請將它設置爲true,或者直接將該property節點刪除,由於默認就是true
4)修改mapred-site.xml
<property> <name>mapred.job.tracker</name> <value>master:9001</value> </property> <property> <name>mapred.local.dir</name> <value>/root/hadoop/var</value> </property> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>
配置文件配置完成。
3、啓動hadoop
1.首次啓動,須要初始化(格式化)
>cd /hadoop/hadoop-2.8.4/bin 切換到安裝bin目錄
>./hadoop namenode -format
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.
提示方法過期了,但不影響
conf.Configuration: error parsing conf mapred-site.xml
org.xml.sax.SAXParseException; systemId: file:/hadoop/hadoop-2.8.4/etc/hadoop/mapred-site.xml; lineNumber: 5; columnNumber: 2; The markup in the document following the root element must be well-formed.
報錯了,看報錯信息是mapred-site.xml文件沒配置好,去看下發現沒配置<configuration></configuration>根標籤,加上根標籤,去bin目錄,從新執行
>./hadoop namenode -format
沒報錯就是格式化好了。
初始化成功後,能夠在/root/hadoop/dfs/name 目錄下(該路徑在hdfs-site.xml文件中進行了相應配置,並新建了該文件夾)新增了一個current 目錄以及一些文件。
2.啓動hadoop:主要是啓動HDFS和YARN
切換到sbin目錄
>cd /hadoop/hadoop-2.8.4/sbin/
>start-dfs.sh 啓動HDFS
Are you sure you want to continue connecting (yes/no)?
yes
root@master's password: ******
啓動過程當中,能夠看到,先啓動namenode服務,再啓動datanode服務,最後啓動secondarynamenode服務
HDFS啓動成功了。
啓動YARN
>start-yarn.sh
從打印日誌中,能夠看到啓動yarn實際是啓動yarn的daemons守護進程,再啓動nodemanager節點管理器
經過 jps命令查看hadoop服務是否啓動成功:
在瀏覽器中能夠訪問:
http://192.168.1.1**:8088/cluster
到此部署成功了。
http://192.168.1.1**:50070