伪分布式模式下,Hadoop将全部进程运行于同一台主机上,但此时Hadoop将使用分布式文件系统,并且各jobs也是由JobTracker服务管理的独立进程。同时,因为伪分布式的Hadoop集群只有一个节点,所以HDFS的块复制将限制为单个副本,其secondary-master和slave也都将运行于本地主机。此种模式除了并不是真正意义的分布式以外,其程序执行逻辑彻底相似于彻底分布式,所以,经常使用于开发人员测试程序执行。html
hadoop的配置共有四种级别:集群、进程、做业和单独操做,前两类由集群管理员负责配置,后面的两类则属于程序员的工做范畴。java
hadoop的配置文件位于conf目录中,其中的core-site.xml、mapred-site.xml和hdfs-site.xml三个配置文件最为关键。core-site.xml用于配置hadoop集群的特性,它做用于所有进程及客户端,mapred-site.xml配置mapreduce集群的工做属性,hdfs-site.xml配置hdfs集群的工做属性。node
另外还有三个配置文件须要留意。hadoop-env.sh是Hadoop的多个脚本执行时source的配置信息,其用于为Hadoop指定运行时使用的JDK、各进程的JDK属性、PID文件及日志文件的保存目录等。masters则用于指定辅助名称节点(SecondaryNameNode)的主机名或主机地址,slaves用于指定各从服务器(TaskTracker或DataNode)的主机名或主机地址。对伪分布式的Hadoop集群来说,这些节点均为本机。程序员
1、JDK安装与配置apache
详情请见:http://www.cnblogs.com/zhangwenjing/p/3580726.html服务器
2、Hadoop安装与配置ssh
一、Hadoop下载与安装分布式
地址:http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.3.0/hadoop-2.3.0.tar.gzoop
使用wget命令下载:wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.3.0/hadoop-2.3.0.tar.gz测试
解压缩:tar -zxvf hadoop-2.3.0.tar.gz
重命名:mv hadoop-2.3.0 hadoop
#vi ect/profile
HADOOP_PREFIX=/opt/hadoop
PATH=$HADOOP_PREFIX/bin:$PATH
export HADOOP_PREFIX PATH
执行环境配置:source /etc/profile
验证:hadoop -version
二、Hadoop配置
Hadoop配置在hadoop/etc/hadoop下,做以下修改:
hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.7.0_51(JDK安装目录)
修改内存大小:export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS"
core-site.xml,作以下配置:
<configuration>
<!--NameNode的IP地址和端口-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop/hadoop-${user.name}</value>
</property>
</configuration>
hdfs-site.xml,作以下配置(系统默认文件保存3份,因伪分布模式,故改成1份):
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/datanode</value>
</property>
</configuration>
mapred-site.xml,作以下配置:
<configuration>
<property>
<name>mapreduce.jobtracker.address</name>
<value>localhost:9001</value>
</property>
</configuration>
hadoop2.0有了yarn因此原来的mapred配置都转向yarn-site.xml文件中了,这里也就指定yarn。
yarn-site.xml,为方便,未进行配置。
core-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-project-dist/hadoop-common/core-default.xml
hdfs-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
mapred-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml
yarn-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-yarn/hadoop-yarn-common/yarn-default.xml
执行hadoop环境配置:source /opt/hadoop/etc/hadoop/hadoop-env.sh
因为启动hadoop需一遍遍输入密码,不方便,故设置ssh免密登录本机
ssh-keygen -t rsa -P "" 输入这个命令后一直回车就能够了
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
切换到安装目录
格式化namenode:./bin/hadoop namenode –format
启动hadoop:./sbin/start-all.sh设置ssh免密登录本机
检查进程是否启动:jps
有以上内容说明已经启动
hadoop资源管理页面:http://localhost:8088
namenode节点信息:http://localhost:50070