Hadoop的部署环境是经过虚拟化之后的四台主机,OS是Ubuntu Server10.04。(XenServer5.6兼容的OS并不包括Ubuntu,将Ubuntu转成PV也是一个折腾的过程,另文介绍)。Hadoop的版本号依旧是:0.20.2.安装Java环境如上一讲所示。
主机名及其IP地址对应如下:
Slave&TaskTracker:dm1,IP:192.168.0.17;(datanode)
Slave&TaskTracker:dm2,IP:192.168.0.18;(datanode)
Slave&TaskTracker:dm3,IP:192.168.0.9;(datanode)
Master&JobTracker:dm4,IP:192.168.0.10;(namenode)
Master是Hadoop集群的管理节点,重要的配置工作都在它上面,至于它的功能和作用请参考HadoopAPI
。
具体配置步骤如下:
一
.修改各个节点(dm1-dm4)的HostName,命令如下:
如下图所示例:
二
.在host中添加机器的hostname和IP,用以通讯。Master需要知道所有的slave的信息。对应的slave只需要知道Master和自身的信息即可。
命令如下:
Master(dm4)的hosts配置应该如下图所示:
其它的slave(dm3……)的hosts配置应该如下图所示:
三
.Hadoop核心代码需要配置conf文件夹里面的core-site.xml,hdfs-site.xml,mapread-site.xml,mapred-site.xml,hadoop-env.sh这几个文件。具体各个配置的含义请参考Hadoop帮助文档
。
1.首先编辑各个机器节点(包括master和slave)的core-site.xml文件,命令如下:(Hadoop 文件夹放在home下)
vi /home/hadoop/conf/core-site.xml
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>fs.default.name</name>
<value>hdfs://dm4:9000</value>
</property>
</configuration>
2.其次编辑各个机器节点(包括master和slave)的hdfs-site.xml,命令如下:
vi /home/hadoop/conf/hdfs-site.xml
hdfs-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>dfs.name.dir</name>
<value>/home/hadoop/NameData</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3.再次,编辑各个机器节点(包括master和slave)mapred-site.xml文件,
命令如下:
vi /home/hadoop/conf/mapred-site.xml
mapred-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>mapred.job.tracker</name>
<value>192.168.0.10:9001</value>
</property>
</configuration>
4.最后,编辑各个机器节点(包括master和slave) hadoop-env.sh文件,命令如下:
vi /home/hadoop/conf/hadoop-env.sh
向该文件加入几行代码,如下所示:
export HADOOP_HOME=/home/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/conf
export PATH=$PATH:$HADOOP_HOME/bin
四
.配置集群的主从关系。在所有机器节点上,Hadoop的conf文件夹中,都有slaves和masters两个文件。往masters中添加Master(dm4)的IP地址或者hostname。往slaves文件中添加Slave(dm1-dm3)的IP或hostname。所有节点都需要修改。
Masters如下图所示:
slaves如下图所示:
行文至此,Hadoop
的
整体安装和配置
已经完成。Hadoop集群的启动从Master(Namenode)机器开始,它和slave(DataNode)之间通讯使用ssh,我们接下来需要设置ssh无密码公钥认证登入。
五
.SSH非对称密钥的原理请参见此文
和彼文
。首先要在
所有节点
生成密钥对,具体实现步骤如下:
1.
所有节点
生成RSA密钥对,命令如下:
出现如下图所示:
直接回车,密钥对存放为/root/.ssh/id_rsa。在该文的演示中生成/root/viki.pub然后会要求你输入密码,选择空
最后生成如下图:
2.将Master(Namenode)
生成的公钥viki.pub的内容复制到本机的 /root/.ssh/ 的authorized_keys 文件 里。命令如下:
cp viki.pub authorized_keys
然后,将authorized_keys 文件复制到各个slave(DataNode)
机器的
/root/.ssh/ 文件夹,命令如下:
scp /root/.ssh/authorized_keys dm3:/root/.ssh/
最后,在所有机器
执行用户权限命令chmod,命令如下:
chmod 644 authorized_keys
经过以上步骤,ssh配置也已完成。通过以下命令验证:
ssh dm3
exit
ssh dm2
exit
ssh dm1
exit
第一次连接需要密码,输入yes和机器密码就可以。以后即不用再输入。
六
.启动并验证Hadoop集群,如同上讲所述。输入:http://192.168.0.10:50030/jobtracker.jsp
在下所搭建的Hadoop集群截图:
七.参考文献
1.Hadoop
快速入门
http://hadoop.apache.org/common/docs/r0.18.2/cn/quickstart.html
2.通用线程
: OpenSSH
密钥管理
http://www.ibm.com/developerworks/cn/linux/security/openssh/part1/index.html
分享到:
相关推荐
Hadoop与HBase自学笔记 1、 安装jdk 2、 安装Cygwin以及相关服务 2.1 安装Cygwin 2.2 配置环境变量 2.3 安装sshd服务 2.4 启动sshd服务 2.5 配置ssh登录 3、安装hadoop 3.1 修改hadoop-env.sh 3.2 修改...
Hadoop hbase hive sqoop集群环境安装配置及使用文档
从零开始hadoop+zookeeper+hbase+hive集群安装搭建,内附详细配置、测试、常见error等图文,按照文档一步一步搭建肯定能成功。(最好用有道云打开笔记)
1.hadoop安装2.zookeeper安装3.hbase安装4.hive安装5.sqoop安装6.R安装kafka安装 spark安装 八项安装笔记
手把手教你搭建分布式Hadoop家族集群视频教程(视频+讲义+笔记+配置),内容包括 Hadoop,SQOOP,Hive,Hbase的安装配置及集群搭建。内容包括但不限于: 01_回顾集群架构及配置集群时间同步 02_配置主节点与从节点...
docker版hbase集群构建,从docker安装开始,再到docker中下载并运行hadoop镜像,之后下载并配置hbase。最后对整个流程做总结,遇到的问题,以及一些docker基础知识和hbase教程。
hadoop学习资料下载.包括hdfs,集群,MapReduce,HBase,Hive等等.完全收录.
Day5 介绍Hadoop集群、zookeeper操作 Day6 介绍HBase体系结构及基本操作 Day7 介绍Hive、sqoop体系结构及基本操作和最后项目 源码分析 NameNode源码分析(RPC是基础) DataNode源码分析 FileSystem源码分析(如何与...
史上最全hadoop笔记,组件描述 : 1. hdfs : 就是一个文件系统 ,可以存储海量的数据 2. mapreduce : 从海量数据中 ,通过一定的算法 ,计算出有用信息 3. hive : 就是 sql 语句解释器 ,接收用户输入的 sql 语句 ,...
主机名 IP地址 安装的软件 运行的进程 Master 192.168.75.140 jdk,Hadoop, ,zookeeper namenode,resourcemanager,zkfc Node2 192.168.75.128 jdk,Hadoop, ,zookeeper namenode, datanode,zkfc, journalnode Slave1 ...
Linux基础知识学习笔记(markdown格式) 包括:基础指令、yum、日期、时区、固定IP、ping、wget、vurl、nmap、nestat、进程...集群化、scp、Mysql、Zookeeper、Kafka、Hadoop、HBase、Spark、Flink、Tomcat、JDK......
1.3 Spark与Hadoop集成 ................................................................................................ 7 1.4 Spark组件 ....................................................................
一.弹性分布式数据集-RDD RDD是Spark核心数据结构...从hadoop文件系统输入创建如HDFS,也可以是其他与hadoop兼容的持久化存储系统如Hive,Hbase创建。 (2).从父RDD转换得到新的RDD。 (3).调用SparkContext的parallelize
数据处理:Hadoop、Spark、Storm、Flink、Pig、Tez、Impala、Presto、Kylin、Drill、Phoniex、Beam、Apex 数据存储:HBase、HDFS、Cassandra、Kudu、Alluxio、Parquet 数据仓库:Hive、HAWQ 分布式协调:Zookeeper ...
Hive 、Hbase 、 solr 、 (比较少,也可以说基本还没有什么东西) , Hadoop 按照官网有过集群搭建过程,这个中间可能会稍微有点问题,不过对于基本了解搭建应该是可以用的,不是太好。 Spark 模块的wiki 记录的大