虚拟机上安装和配置hadoop
安装hadoop所需要9个安装包:hadoop安装包
提取码:ir3f
准备工做
配置一台虚拟机:
详情请见:使用VMware安装虚拟机
安装和配置好jdk:
详情请见:linux系统下jdk安装和环境配置
安装和配置好mysql:
详情请见:linux系统下mysql安装和配置
安装和配置hadoop
使用Moba连接到虚拟机。
把左下角的方框勾上。
首先更改主机名:
[root@hadoop02 hadoop]# hostnamectl set-hostname hadoop02
[root@hadoop02 hadoop]# vi /etc/hosts
#输入:
192.168.136.36 hadoop02
在根目录下先创建一个software目录,用来放置安装包:
[root@hadoop02 /]# mkdir software
把9个安装包拖进来:
把安装好的jdk移动到根目录下的opt目录下:
[root@hadoop02 opt]# mv jdk-8u221-linux-x64 -C /opt/
改名为java8:
[root@hadoop02 opt]# mv jdk-8u221-linux-x64 java8
解压hadoop-2.6.0-cdh5.14.2.tar.gz到opt目录下:
[root@hadoop02 software]# tar -zxvf hadoop-2.6.0-cdh5.14.2.tar.gz -C /opt/
把hadoop-2.6.0-cdh5.14.2名字更改为hadoop并查看一下目录:
[root@hadoop02 opt]# mv hadoop-2.6.0-cdh5.14.2/ hadoop
[root@hadoop02 opt]# ll
配置环境变量:
[root@hadoop02 opt]# vi /etc/profile
输入:
export JAVA_HOME=/opt/java8
export JRE_HOME=/opt/java8/jre
export CLASSPATH=.:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export HADOOP_HOME=/opt/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_INSTALL=$HADOOP_HOME
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
保存退出,使环境变量生效:
[root@hadoop02 opt]# source /etc/profile
查看配置好的hadoop信息:
[root@hadoop02 opt]# hadoop version
进入根目录下的opt目录下的hadoop下的目录下的hadoop:
[root@hadoop02 opt]# cd /opt/hadoop/etc/hadoop
查看hadoop下的文件:
[root@hadoop02 hadoop]# ll
配置core-site.xml:
[root@hadoop02 hadoop]# vi core-site.xml
在两个configuration之间输入:
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.136.36:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop/tmp</value>
</property>
注意:hdfs后面输入的是你的主机ip,后面的9000是端口号
保存退出,配置hdfs-site.xml:
[root@hadoop02 hadoop]# vi hdfs-site.xml
在两个configuration之间输入:
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
保存退出,配置hadoop-env.sh:
[root@hadoop02 hadoop]# vi hadoop-env.sh
在export JAVA_HOME=${JAVA_HOME}下输入:
export JAVA_HOME=/opt/java8
注意:后面的是你java安装的目录
保存退出,更改mapred-site.xml.template的文件名:
[root@hadoop02 hadoop]# mv mapred-site.xml.template mapred-site.xml
配置mapred-site.xml:
[root@hadoop02 hadoop]# vi mapred-site.xml
在两个configuration中输入:
<property>
<name>mapreduce.framework,name</name>
<value>yarn</value>
</property>
保存退出,配置yarn-site.xml:
[root@hadoop02 hadoop]# vi yarn-site.xml
在两个configuration中输入:
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop02</value>
</property>
<property>
<name>yarn.nodemanager.aux-service</name>
<value>mapreduce_shuffle</value>
</property>
保存退出,到这一步基本的配置已配置完。
添加互信:
[root@hadoop02 hadoop]# ssh-keygen
[root@hadoop02 hadoop]# cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys
[root@hadoop02 hadoop]# ssh hadoop02
[root@hadoop02 hadoop]# exit
格式化hdfs:
[root@hadoop02 hadoop]# hdfs namenode -format
启动yarn:
[root@hadoop02 hadoop]# start-yarn.sh
启动dfs:
[root@hadoop02 hadoop]# start-dfs.sh
查询进程:
[root@hadoop02 hadoop]# jps
访问hadoop,在浏览器输入:
192.168.136.36:50070
点击Utilities下的Browse the file system:
查看一下有没有文件夹:
[root@hadoop02 hadoop]# hdfs dfs -ls
创建一个文件夹:
[root@hadoop02 hadoop]# hadoop fs -mkdir /test
上传一个文件:
[root@hadoop02 hadoop]# hadoop fs -put /opt/hadoop/README.txt /test
完善一下配置信息
关闭hadoop进程:
[root@hadoop02 hadoop]# stop-all.sh
[root@hadoop02 hadoop]# jps
配置yarn-site.xml:
[root@hadoop02 hadoop]# vi yarn-site.xml
在两个Configuration中添加:
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
保存退出,配置core-site.xml:
[root@hadoop02 hadoop]# vi core-site.xml
在两个Configuration中添加:
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
<property>
<name>hadoop.native.lib</name>
<value>false</value>
<description>Should native hadoop libraries, if present, be used.
</description>
</property>
保存退出,配置hdfs-site.xml:
[root@hadoop02 hadoop]# vi hdfs-site.xml
在两个Configuration中添加:
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>192.168.136.36:50090</value>
</property>
保存退出,配置mapred-site.xml:
[root@hadoop02 hadoop]# vi mapred-site.xml
在两个Configuration中添加:
<property>
<name>mapreduce.jobhistory.address</name>
<value>192.168.136.36:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>192.168.136.36:19888</value>
</property>
保存退出,配置slaves:
[root@hadoop02 hadoop]# vi slaves
输入:
hadoop02
注意:是你的主机名。
返回opt目录下删除tmp目录和logs目录:
[root@hadoop02 hadoop]# rm -rf tmp/
[root@hadoop02 hadoop]# rm -rf logs/
注意:这两个目录是在opt目录下的。
把hadoop-native-64-2.6.0.tar解压到opt目录下的hadoop目录下的lib目录下的native目录下:
[root@hadoop02 software]# tar -xvf hadoop-native-64-2.6.0.tar -C /opt/hadoop/lib/native/
移动到opt目录下的hadoop目录下的lib目录下的native目录下查看:
[root@hadoop02 /]# cd lib/native/
[root@hadoop02 native]# ll
复制所有文件到上一级目录:
[root@hadoop02 native]# cp * ../
返回上一级目录并查看:
[root@hadoop02 nativve]# cd ..
[root@hadoop02 lib]# ll
格式化hdfs:
[root@hadoop02 hadoop]# hadoop namenode -format
启动hadoop进程并查看:
[root@hadoop02 hadoop]# start-all.sh
[root@hadoop02 hadoop]# jps
启动历史服务:
[root@hadoop02 hadoop]# mr-jobhistory-daemon.sh start historyserver
[root@hadoop02 hadoop]# jps
访问hadoop,hdfs页面:
192.168.136.36:50070
登录YARN的管理界面:
192.168.136.36:8088
查看工作历史:
192.168.136.36:19888
到这一步,hadoop才算真正的安装配置成功。