Hadoop 环境搭建 单机伪分布式
2019-03-29 本文已影响0人
歌哥居士
前期准备
虚拟机镜像:CentOS-7-x86_64-DVD-1708【选择了GNOME和X Window兼容、开发环境,内存8G以上】
hadoop版本:hadoop-2.6.0-cdh5.7.0.tar.gz
jdk版本:jdk-8u162-linux-x64.tar.gz
虚拟机文件名:vmware000
虚拟机用户名:user000 密码:ok【root密码:ok】
虚拟机主机名:host000
$ sudo vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=host000
$ sudo vim /etc/hosts,添加<虚拟机ip 域名>
本机IP host000
$ sudo systemctl stop firewalld.service
$ sudo systemctl disable firewalld.service
$ sudo reboot
$ cd ~
$ mkdir backup doc projects tmps tmps/hadoop-tmp tools
backup用来备份一些配置文件
doc目录存上传的文件、数据文件、jar包等
projects 存放项目
tools存放开发工具
tmps、tmps/hadoop-tmp给hadoop、zookeeper、kafka等存放数据
配置免密登录
$ ssh-keygen -t rsa,然后一路回车。
$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
$ ssh localhost测试下,是否需要输入密码。
配置HDFS
$ tar -zxvf ~/doc/hadoop-2.6.0-cdh5.7.0.tar.gz -C ~/tools/
$ ln -s ~/tools/hadoop-2.6.0-cdh5.7.0 ~/tools/hadoop
$ vim ~/tools/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/home/user000/tools/jdk
配置hdfs: 我9000改成了8020。
$ vim ~/tools/hadoop/etc/hadoop/core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://host000:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/user000/tmps/hadoop-tmp</value>
</property>
$ vim ~/tools/hadoop/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
配置hadoop的bin到path方便使用
$ vim ~/.bash_profile
export HADOOP_HOME=/home/user000/tools/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
$ source ~/.bash_profile
$ hdfs namenode -format
$ start-dfs.sh
$ jps
http://host000:50070/
配置MapReduce
$ cp ~/tools/hadoop/etc/hadoop/mapred-site.xml.template ~/tools/hadoop/etc/hadoop/mapred-site.xml
$ vim ~/tools/hadoop/etc/hadoop/mapred-site.xml
表示mapper reduce跑在yarn上。
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
配置YARN
$ vim ~/tools/hadoop/etc/hadoop/yarn-site.xml
表示yarn-nodemanager用的哪一个service
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
$ start-yarn.sh
$ jps
http://host000:8088
测试MapReduce
使用2个map,取3个样本
$ hadoop jar ~/tools/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0-cdh5.7.0.jar pi 2 3
打开http://host000:8088观察
$ hadoop fs -ls -R /
$ hadoop fs -rm -r /tmp;hadoop fs -rm -r /user;