Hadoop 简单集群搭建
来源:互联网 发布:中国对外贸易数据图表 编辑:程序博客网 时间:2024/05/16 10:06
搭建三个节点的Hadoop环境。
理论上讲,Namenode 和JobTracker都是master节点,分布在不同的机器上。我们这里把两个java的进程放在同一台机器上。然后搭建两个slave机器,每个机器上都作为Datanode和TaskTracker.
1. 准备:
都需要安装Linux的发行版本,一台机器作为master节点,两外两个机器作为slave节点。
修改3台机器的/etc/hosts,让彼此的主机名称和ip都能顺利解析。
如果系统中安装有交换机,在一个子网下已经可以ping通,就不需要配置。我的集群就是这样的情况。配置完后用ping命令检查是否可以通过主机名访问各机器。
2. 安装java环境:
三台机器统一安装java环境,配置环境变量。我的java安装在/usr/java/下,环境变量如下:
JAVA_HOME=/usr/java/jdk1.6.0_34/CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarPATH=$JAVA_HOME/bin:$PATHexport JAVA_HOMEexport PATHexport CLASSPATH
3.新建一个用户组和用户,专门用来做hadoop测试,命令根据linux的版本不同而定,下面的代码是ubuntu
sudo addgroup hadoopsudo adduser --ingroup hadoop hadoopsudo usermod -aG admin hadoop
4.下载hadoop-1.0.4,这个是个稳定的版本。
将其解压在/home/hadoop下,这里可以解压在别的地方,视你的情况而定。但是放在别的地方可能有访问权限的问题
配置hadoop环境变量:
HADOOP_HOME=/home/hadoop/hadoop-1.0.4HADOOP_CONF_DIR=$HADOOP_HOME/confHADOOP_LOG_DIR=/home/hadoop/hadoop-1.0.4/logsPATH=$PATH:$HADOOP_HOME/binexport HADOOP_HOMEexport HADOOP_CONF_DIRexport HADOOP_LOG_DIRexport PATH
以下内容现在master节点上面做
5.安装ssh,并生成公钥和私钥,运行:ssh-keygen -t rsa
在/home/hadoop/.ssh下生成两个文件, id_rsa id_rsa.pub,执行以下命令将公钥放在authorized_keys中:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
以上配置完成后,执行一下ssh localhsot,确认你的每台机器都可以使用ssh
如果不行,自行上网查找解决方法,我的机器在这一步中执行不下去,原因多种多样。
有一个原因可能是因为authorized_keys 的权限问题,需要权限是600才可以。但是不局限这个问题
6. 将master服务器上的authorized_keys的内容加到slave两台机器的authorized_keys文件中。让master也可以不需要密码访问2台slave服务器。
测试ssh 机器名,看是否可以无密码登录slave机器
7. 添加$HADOOP_HOME/conf/hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.6.0_34/8. 编辑$HADOOP_HOME/conf/core-site.xml
<property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/hadoop-1.0.4/tmp</value> <description>.</description></property><property> <name>fs.default.name</name> <value>hdfs://机器名:54310</value> <description> </description></property>
9. 编辑$HADOOP_HOME/conf/mapred-site.xml
<property> <name>mapred.job.tracker</name> <value>master机器名:54311</value> <description>. </description></property>
10. 编辑$HADOOP_HOME/conf/hdfs-site.xml
<property> <name>dfs.replication</name> <value>3</value> <description>. </description></property>
11. 编辑$HADOOP_HOME/conf/masters
编辑$HADOOP_HOME/conf/slaves
12. 拷贝masternode上$HADOOP_HOME文件拷贝到各个节点上
13. 在所有机器上创建/home/hduser/hadoop/tmp
14. 配置结束,启动hadoop
先格式化masternode
bin/hadoop namenode -format
bin/start-all.sh
执行启动Hadoop进程后, 在master服务器会启动3个java进程,分别的NameNode,SecondNameNode,JobTracker,在LOG目录下会产生2个文件,分别对应NameNode的运行日志和JobTracker的运行日志, 在slave服务器会启动2个java进程,分别为DataNode,TaskTracker,,在LOG目录下会产生2个文件,分别对应 DataNode的运行日志和TaskTracker的运行日志,可以通过查看日志分析hadoop的启动是否正确。
通过浏览器可以查看hadoop状态。
- Hadoop 简单集群搭建
- hadoop简单集群搭建
- 【大数据】搭建简单的Hadoop集群
- Hadoop简单入门和集群搭建
- hadoop集群搭建(hadoop)
- HADOOP: 搭建hadoop集群
- [hadoop]成功搭建Hadoop集群后简单实验
- hadoop集群搭建
- Hadoop集群的搭建
- Hadoop集群搭建
- Hadoop集群搭建
- 搭建hadoop集群
- Nutch+Hadoop集群搭建
- Hadoop集群搭建
- Hadoop集群搭建
- Hadoop环境搭建-集群
- 搭建hadoop集群
- 搭建hadoop集群
- linux-0.11,任务的内核态堆栈的位置!
- .net调试“HTTP Error 500.23 - Internal Server Error”错误解决方法
- 博客搬家
- 设计模式—ADAPTER 适配器模式
- ARM9(S3C2440) ADC
- Hadoop 简单集群搭建
- VC中创建线程分析
- Ripple插件安装:新版Chrome浏览器需要手工启用一下Ripple Emulator 插件
- 网络安全管理:网络安全七大威胁总结
- Calendar的运用
- linux 守护进程 总结 Myself
- 创建线程时参数传递技巧-用指针传值
- 读书笔记(一)《C语言精彩编程百例》
- UIScrollView可以定位到滚动的具体位置,就这么简单