Hadoop学习(2)-Hadoop配置与安装
来源:互联网 发布:网民数据统计 编辑:程序博客网 时间:2024/04/29 08:24
在安装Hadoop之前,首先要安装好两个软件:
(1)JDK Hadoop就是Java编写的,需要Java来编译执行。
(2)SSH(安全外壳协议),推荐安装OpenSSH。需要通过SSH来启动Slave列表中各台主机的守护线程,所以需要安装SSH。不论是集群还是伪分布式,都是需要到SSH的。
安装步骤如下:
1、下载并安装JDK1.6,在/etc/profile中配置环境变量
2、安装并配置SSH免密码登录。假设在ubuntu环境下:
sudo apt-get install ssh 安装ssh
在用户u目录下 /home/u 输入命令:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa //生成dsa类型的秘钥
此时在.ssh文件夹下面多了id_dsa文件夹和id_dsa.pub文件夹。这是SSH的一对私钥和公钥,类似于钥匙和锁。
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys //将公钥加入到认证的公钥中
此时就可以免密码登录本机了。
3、Hadoop有三种运行方式:单机模式 伪分布式 完全分布式
伪分布式可以看作只有一个几点,就是NameNode,又是TaskNode。简单配置就可以做到:
(1)修改conf文件夹下的Hadoop-env.sh
export JAVA_HOME = /usr/lib/jvm/jdk //配置jdk目录
(2)修改hadoop核心配置文件conf/core-site.xml, 指明HDFS的地址以及端口
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
(3)修改hdfs-site.xml 配置HDFS,配置的备份方式为3,单机模式下为1
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
(4) 修改mapred-site.xml文件,配置MapReduce,配置JobTracker的地址及端口。
<configuration>
<property>
<name>mapred.jbo.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
(5)启动hadoop之前,需要格式化Hadoop的文件系统HDFS,进入hadoop的文件夹
bin/Hadoop NameNode -format
接下来,启动Hadoop:
bin/start-all.sh
可以在浏览器中验证hadoop是否安装成功:http://localhost:50030(mapreduce) 以及 http://localhost:50070(hdfs页面)
如果是真实的场景下,如何配置? 下面假设有三台机器:
10.37.128.2 master namenode jobtracker 主机名:master
10.37.128.3 slave datanode tasktracker 主机名:slave1
10.37.128.4 slave datanode tasktracker 主机名:slave2
(1)三台机器安装jdk,配置环境
(2)三台机器上配置etc/hosts hosts这个文件用于定义主机名与ip地址之间的对应关系
127.0.0.1 localhost
10.37.128.2 master
10.37.128.3 slave1
10.37.128.4 slave2
在etc/hostname中配置主机名:
"master"(或者slave1等)
(3)三台机器上安装OpenSSH,并配置SSH可以免密码登录。
在master用户文件夹下输入:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~./ssh/authorized_keys
然后将文件复制到两台slave相同的文件夹下面,输入命令:
scp authorized_keys slave1:~/.ssh
scp authorized_keys slvae2:~/.ssh
(4) 尝试无密码登录其他机器
ssh slave1
ssh slave2
(5) 配置三台主机的Hadoop文件
conf/Hadoop-env.sh
export JAVA_HOME= jdk目录
conf/core-site.xml
<configuration> <property> <name>fs.default.name</name> <value>hdfs:master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/tmp</value> </property></configuration>
conf/hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>2</value> </property></configuration>
conf/mapred-site.xml
<configuration> <property> <name>mapred.jbo.tracker</name> <value>master:9001</value> </property></configuration>
conf/masters
master
conf/slaves
slave1slave2
(6) 启动hadoop
bin/Hadoop NameNode -format
bin/start-all.sh
ok,通过以上步骤就可以搭建一个集群了。其实每个机器上面的配置基本一致,通过hosts文件知道了如何找到集群中的伙伴们。
额外内容:
(1)可以通过日志信息查看运行状况
(2)可以动态的加入任务节点和数据节点
(3)可以单独重启某一个数据节点或者任务节点
- Hadoop学习(2)-Hadoop配置与安装
- 学习Hadoop第三课(Hadoop安装与配置)
- Hadoop 2.7.3安装与配置------Hadoop学习(1)
- 学习Hadoop第三课(Hadoop安装与配置)
- 【hadoop学习】--(2)安装和配置hadoop伪分布式
- Hadoop学习--Hive安装与配置
- hadoop学习笔记【一】-------配置与安装
- Hadoop学习--Hive安装与配置
- hadoop 安装配置学习
- hadoop安装与配置
- Hadoop安装与配置
- hadoop安装与配置
- hadoop安装与配置
- hadoop安装与配置
- Hadoop安装与配置
- hadoop 安装与配置
- hadoop安装与配置
- hadoop安装与配置
- 链表使用时可能出现的问题
- 带宽流量概念
- 学习C++——返回类型
- Kaggle项目实战2—Titanic:Machine learning from disaster—排名Top20%
- Java_语法基础_内存空间及String详解
- Hadoop学习(2)-Hadoop配置与安装
- 反射(二)-----Assembly类
- OC基础--类
- USACO2.1.4 Healthy Holsteins (holstein)
- http://busumen.com/laian/30105.html 003ypqto
- 蓝桥杯 算法训练 操作格子 (线段树)
- 学习python第一天
- leetcode12 Integer to Roman
- 南京门户网 00a5gkzj