手动搭建Hadoop分布式集群

简介: 手动搭建Hadoop分布式集群


相比Cloudera Manager的安装方式,手动搭建Hadoop分布式集群能让我们了解Hadoop的详细配置,有利于我们学习HDFS和YARN的工作原理,初学者可以尝试这种方式。


前置准备

和安装Cloudera Manager、CDH一样,首先需要修改主机名、关闭防火墙、同步时钟、安装JDK

添加域名映射

添加每个节点的域名映射,分发到每个节点

vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.31.40.0 ambari1.soundhearer.com
172.31.36.6 ambari3.soundhearer.com
172.31.34.161 ambari2.soundhearer.com

配置SSH免密登录

1.执行命令


ssh-keygen

第一个提示是询问将公私钥文件存放在哪,直接回车,选择默认位置。

第二个提示是请求用户输入密钥,既然操作的目的就是实现SSH无密钥登录,故此处必须使用空密钥,所谓的空密钥指的是直接回车,不是空格,更不是其他字符。

第三个提示是要求用户确认刚才输入的密钥,既然刚才是空密钥(直接回车即空),那现在也应为空,直接回车即可。

2.可通过命令


ls -all /root/.ssh

查看到,SSH密钥文件夹.ssh目录下的确生成了两个文件idrsa和idrsa_pub,这两个文件都有用,其中公钥用于加密,私钥用于解密。中间的rsa表示算法为RSA算法。

3.执行命令


ssh-copy-id ambari1.soundhearer.com

ambari1.soundhearer.com服务器公钥拷贝至 ambari1.soundhearer.com服务器本身

第一次连接 ambari1.soundhearer.com时,需要输入yes来确认建立授权的主机名访问,并需要输入root用户密码来完成公钥文件传输

4.拷贝 ambari1.soundhearer.com服务器公钥至其余服务器

5.其余服务器按照同样的方式配置ssh免密登录,完成后验证是否可以互相之间实现SSH免密登录。

部署HDFS

上传 Hadoop3.1.3,解压并放置于 /usr/local/hadoop

修改以下四个配置文件

  • etc/hadoop/hadoop-env.sh
  • etc/hadoop/core-site.xml
  • etc/hadoop/hdfs-site.xml
  • etc/hadoop/workers

hadoop-env.sh

修改 JAVA_HOME环境变量即可


export JAVA_HOME=/usr/local/java # 修改为您的Java目录

core-site.xml

指定HDFS主节点,编辑文件 /usr/local/hadoop/etc/hadoop/core-site.xml,将如下内容嵌入此文件里最后两行的标签之间:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://ambari1.soundhearer.com:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/data/tmp</value>
    </property>
</configuration>

hdfs-site.xml

<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/data/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/data/datanode</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

workers

ambari3.soundhearer.com
ambari2.soundhearer.com

拷贝集群配置至其它服务器

./batch_scp.sh node.list /usr/local/hadoop/etc/hadoop/workers /usr/local/hadoop/etc/hadoop/
./batch_scp.sh node.list /usr/local/hadoop/etc/hadoop/core-site.xml /usr/local/hadoop/etc/hadoop/
./batch_scp.sh node.list /usr/local/hadoop/etc/hadoop/hdfs-site.xml /usr/local/hadoop/etc/hadoop/
 ./batch_scp.sh node.list /usr/local/hadoop/etc/hadoop/hadoop-env.sh /usr/local/hadoop/etc/hadoop/


启动

格式化 HDFS

cd /usr/local/hadoop
bin/hdfs namenode -format

修改 /usr/local/hadoop/etc/hadoop/hadoop-env.sh,末尾添加

HDFS_DATANODE_USER=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

启动


sbin/start-dfs.sh

jps查看进程

浏览器输入:


http://ambari1.soundhearer.com:9870

看到如下页面

修改 /usr/local/hadoop/etc/hadoop/hadoop-env.sh,添加:


<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>ambari1.soundhearer.com</value>
</property>

开启 YARN

在ambari1.soundhearer.com主节点启动YARN

cd /usr/local/hadoop
sbin/start-yarn.sh

jps发现主节点多了ResouceManager进程,从节点多了NodeManager进程

浏览器输入ambari1.soundhearer.com:8088可以访问如下页面,


相关文章
|
2天前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。
|
2天前
|
存储 分布式计算 Hadoop
Hadoop【基础知识 01】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)
【4月更文挑战第3天】Hadoop【基础知识 01】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)
101 3
|
2天前
|
算法 调度
电动汽车集群并网的分布式鲁棒优化调度matlab
电动汽车集群并网的分布式鲁棒优化调度matlab
|
2天前
|
存储 分布式计算 监控
Hadoop【基础知识 01+02】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)【分布式计算框架MapReduce核心概念+编程模型+combiner&partitioner+词频统计案例解析与进阶+作业的生命周期】(图片来源于网络)
【4月更文挑战第3天】【分布式文件系统HDFS设计原理+特点+存储原理】(部分图片来源于网络)【分布式计算框架MapReduce核心概念+编程模型+combiner&partitioner+词频统计案例解析与进阶+作业的生命周期】(图片来源于网络)
140 2
|
1天前
|
存储 分布式计算 Hadoop
Hadoop分布式文件系统(HDFS)
【5月更文挑战第10天】
17 3
|
2天前
|
存储 SQL 分布式计算
Hadoop分布式架构
【5月更文挑战第8天】Hadoop分布式架构
12 4
|
2天前
|
分布式计算 Ubuntu Hadoop
【分布式计算框架】hadoop全分布式及高可用搭建
【分布式计算框架】hadoop全分布式及高可用搭建
8 1
|
2天前
|
存储 分布式计算 Hadoop
【分布式计算框架】Hadoop伪分布式安装
【分布式计算框架】Hadoop伪分布式安装
8 2
|
2天前
|
负载均衡 Java 网络架构
【SpringCloud】如何理解分布式、微服务、集群
【SpringCloud】如何理解分布式、微服务、集群
24 1
|
2天前
|
分布式计算 监控 Hadoop
Ganglia监控Hadoop与HBase集群
Ganglia监控Hadoop与HBase集群

相关实验场景

更多