hadoop是一个能够对大量数据进行分布式处理的软件框架,实现了Google的MapReduce编程模型和框架,能够把应用程序分割成许多的 小的工作单元,并把这些单元放到任何集群节点上执行。在MapReduce中,一个准备提交执行的应用程序称为“作业(job)”,而从一个作业划分出 得、运行于各个计算节点的工作单元称为“任务(task)”。此外,Hadoop提供的分布式文件系统(HDFS)主要负责各个节点的数据存储,并实现了 高吞吐率的数据读写。 在分布式存储和分布式计算方面,Hadoop都是用从/从(Master/Slave)架构。在一个配置完整的集群上,想让Hadoop这头大 象奔跑起来,需要在集群中运行一系列后台(deamon)程序。不同的后台程序扮演不用的角色,这些角色由NameNode、DataNode、 Secondary NameNode、JobTracker、TaskTracker组成。其中NameNode、Secondary NameNode、JobTracker运行在Master节点上,而在每个Slave节点上,部署一个DataNode和TaskTracker,以便 这个Slave服务器运行的数据处理程序能尽可能直接处理本机的数据。对Master节点需要特别说明的是,在小集群中,Secondary NameNode可以属于某个从节点;在大型集群中,NameNode和JobTracker被分别部署在两台服务器上。
master配置
/usr/local/hadoop/conf下:
修改 masters 文件为: master
修改slaves 文件为:(本人有2从)
slave1
slave2
修改 core-site.xml 文件:
<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration> <property>#临时文件目录 <name>hadoop.tmp.dir</name> <value>/usr/local/src/hadoop/tmp</value> </property> <property>#namenode配置 <name>fs.default.name</name> <value>hdfs:://192.168.157.64:9000</value> </property></configuration>
修改mapred-site.xml文件 mapreduce的jobtracker
<property> <name>mapred.job.tracker</name> <value>http:://192.168.157.64:9001</value> </property>
修改hdfs-site.xml 数据在hdfs存储的副本数(默认是3)
<property> <name>hdfs.replication</name> <value>3</value></property>
修改hadoop-env.sh
在最后一行添加 (自己的java目录)
export JAVA_HOME=/usr/local/src/jdk1.6.0_45
修改/etc/hosts文件
master_ip master
slave_ip slave
修改/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master
复制master的hadoop目录到自己的slave
scp -rp hadoop 192.168.XX.XX:/usr/local/src/
中途需要确认链接、输入salve的root密码
修改slave的/etc/hosts、/etc/sysconfig/network
关闭防火墙、selinux
/etc/init.d/iptables stop
setenforce 0 (检查 getenforce 输出Permissive)
建立互通链接
ssh-keygen 一路确定
cd ~/.ssh 进入隐藏文件
master 执行 cat id_rsa.pub > authorized_keys
复制 slave 下的 slave 的公钥(id_rsa.pub)到master的authorized_keys
master 下执行
scp -rp authorized_keys root@slave:~/.ssh/
master 执行
cd /usr/local/src/hadoop/bin/
./hasoop namenode -format 初始化namenode
./start-all.sh 动起来
使用jps查看
如果 bash: jps: command not found...
vim /etc/profile 在最后一行写上
PATH="/usr/local/src/jdk1.6.0_45/bin:$PATH"
/usr/local/src/jdk1.6.0_45/bin 自己的java
source /etc/profile
jps
转载于:https://www.cnblogs.com/aifengguo/p/7398389.html