配置hadoop伪分布模式

来源:互联网 发布:windows python脚本 编辑:程序博客网 时间:2024/05/29 11:50
1、安装JDK
建议使用JDK1.8版本
2、安装hadoop
hadoop-2.7.2.tar.gz
我在ubuntu虚拟机上安装的hadoop,通过文件共享的方式将hadoop解压到虚拟机中的目录/solf/hadoop/
3、配置环境变量
配置环境变量可以选择如下三个文件
(1)主目录下 ~/.bashrc  指令 sudo gedit ~/.bashrc 
配置如下:
export JAVA_HOME=/home/will/jdk/jdk1.8    //jdk根目录
export HADOOP_INSTALL=/solf/hadoop        //hadoop根目录
export PATH=$PATH:$HADOOP_INSTALL/bin 
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
(2)跟目录下  /etc/profile
export JAVA_HOME=/home/will/jdk/jdk1.8  (指向jdk1.8的根目录)
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH
(3)跟目录下  /etc/enviroment
我在该文件下添加了
JAVA_HOME=/home/will/jdk/jdk1.8
我在三个文件中都作了配置也许有重复,但是并不冲突
 
4、配置hadoop分布模式
   hadoop有三种分布模式:独立分布、伪分布、完全分布模式
   (1)独立模式
基本不用配置,只需要将 mapred-site.xml.template文件拷贝一份命名为 mapred-site.xml
   (2)伪分布模式
hadoop启动时会默认查找 hadoop根目录下 /etc/hadoop 文件夹作为配置的文件目录
因此,我们将/etc/下的hadoop文件复制三份
cp -r hadoop hadoop-local    //独立分布
cp -r hadoop hadoop-pseudo//伪分布
cp -r hadoop hadoop-full     //完全分布

然后删除hadoop
rm -rf hadoop

通过软连接的方式让hadoop指向三种模式,比如指向伪分布模式:
ln -s hadoop-pseudo hadoop
那么启动hadoop时默认选择的是伪分布模式,选择其他两种模式只需要改变中间的目标文件
ln -s {target } hadoop

伪分布模式需要配置如下文件:
/etc/hadoop 下
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:8020/</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/solf/hadoop/hadoop_will</value>
</property>
</configuration>

hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

mapred-site.xml  (/etc/hadoop目录下没有该文件,直接由mapred-site.xml.template拷贝一份改文件名)
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

(3)完全分布模式
略,还在探索中...

5、启停hadoop
(1)通过4中创建的软连接使得启动变得很简洁
start-all.sh
或者
start-dfs.sh  //启动 namenode、datanode和secondarynamenode进程
start-yarn.sh  //启动 resourcemanager和nodemanager进程
(2)停止
stop-all.sh
或者
stop-yarn.sh   //关闭顺序与启动顺序相反
stop-dfs.sh

6、查看进程
$ jps
3106 DataNode
3300 SecondaryNameNode
3638 NodeManager
3501 ResourceManager
3950 Jps
2975 NameNode

如有不妥之处请指出...













原创粉丝点击