惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

M
MIT News - Artificial intelligence
有赞技术团队
有赞技术团队
S
Schneier on Security
aimingoo的专栏
aimingoo的专栏
T
Troy Hunt's Blog
U
Unit 42
Hacker News - Newest:
Hacker News - Newest: "LLM"
V2EX - 技术
V2EX - 技术
T
The Blog of Author Tim Ferriss
V
Visual Studio Blog
H
Heimdal Security Blog
H
Hacker News: Front Page
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Cloudbric
Cloudbric
Google DeepMind News
Google DeepMind News
C
Cisco Blogs
The Cloudflare Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
MyScale Blog
MyScale Blog
F
Fortinet All Blogs
N
News | PayPal Newsroom
Attack and Defense Labs
Attack and Defense Labs
D
DataBreaches.Net
N
News and Events Feed by Topic
Security Archives - TechRepublic
Security Archives - TechRepublic
Forbes - Security
Forbes - Security
Simon Willison's Weblog
Simon Willison's Weblog
F
Full Disclosure
The Register - Security
The Register - Security
L
LINUX DO - 热门话题
Webroot Blog
Webroot Blog
Google Online Security Blog
Google Online Security Blog
AI
AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
I
Intezer
S
Security Affairs
阮一峰的网络日志
阮一峰的网络日志
K
Kaspersky official blog
云风的 BLOG
云风的 BLOG
博客园 - 叶小钗
T
Threatpost
Spread Privacy
Spread Privacy
小众软件
小众软件
AWS News Blog
AWS News Blog
S
Secure Thoughts
S
Security @ Cisco Blogs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks

博客园 - 茁壮的小草

join查询中索引建议 tomcat连接池的“bug” 连接池介绍 JDBC介绍 Apache Hadoop YARN 使用 kubebuilder 创建并部署 k8s-operator 单链表反转 单链表操作 如何在Kubernetes 里添加自定义的 API 对象(一) 搭建golang开发环境(1.14之后版本) 【源码】Redis命令处理过程 K8S配置存活、就绪和启动探测器 【源码】Redis exists命令bug分析 【源码】Redis Server启动过程 K8S中的Objects MAC 安装MySQL-python 公司里使用gitlab管理项目 vscode配置django开发环境最佳实战(mac) virtualenv最佳实战(windows)
Hadoop完全分布式搭建
茁壮的小草 · 2022-04-29 · via 博客园 - 茁壮的小草

Hadoop:hadoop-2.6.4

jdk:1.7.0_79

提前在所有机器上安装hadoop和jdk,打通互信,关闭防火墙,配置主机名映射,这里不介绍。

注意:本机需要ssh 本机: cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

一、集群配置

1、节点规划

组件 hostname:hadoop1

hostname: hadoop2

hostname: hadoop3
HDFS NameNode
DataNode
DataNode SecondaryNameNode
DataNode
YARN NodeManager ResourceManager
NodeManager
NodeManager

注意NameNodeSecondaryNameNodeResourceManager很耗内存资源,建议不要配置在同一节点上

2、配置文件

2.1 修改核心配置文件

cd /usr/local/hadoop-2.6.4/etc/hadoop/
vim core-site.xml
在<configuration></configuration>标签中添加如下配置
    <!-- 指定HDFS中NameNode的地址 -->
    <property>
        <name>fs.default.name</name>
        <value>hdfs://hadoop1:9000</value>
    </property>

    <!-- 指定hadoop运行时产生文件的存储目录,注意tmp目录需要创建 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/data/luxiu/hadoop/data</value>
    </property>

2.2、修改HDFS配置文件

vim hdfs-site.xml
在<configuration></configuration>标签中添加如下配置
    <!-- 设置dfs副本数,不设置默认是3个 -->
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>

    <!-- 设置namenode数据存放路径 -->
    <property>
        <name>dfs.name.dir</name>
        <value>/data/luxiu/hadoop/data/name</value>
    </property>

    <!-- 设置datanode数据存放路径 -->
    <property>
    <name>dfs.data.dir</name>
    <value>/data/luxiu/hadoop/data/data</value>
    </property>
    <!-- NameNode web 端访问地址--> 
    <property>
    <name>dfs.namenode.http-address</name>
    <value>hadoop1:8888</value>
    </property>
    <!-- 设置secondname的端口 -->
    <property>
    <name>dfs.secondary.http.address</name>
    <value>hadoop3:50090</value>
    </property>

 2.3、修改YARN配置文件

vim yarn-site.xml
在<configuration></configuration>标签中添加如下配置
<!-- Site specific YARN configuration properties -->
	<!-- reducer获取数据的方式 -->
		<property>
    	<name>yarn.nodemanager.aux-services</name>
    	<value>mapreduce_shuffle</value>
 		</property>
	<!-- 指定YARN的ResourceManager的地址 -->
 		<property>
    	<name>yarn.resourcemanager.hostname</name>
    	<value>hadoop2</value>
 		</property>

 2.4、修改mapreduce配置文件

cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
在<configuration></configuration>标签中添加如下配置
<!-- 指定mr运行在yarn上 -->
	<property>
 		<name>mapreduce.framework.name</name>
 		<value>yarn</value>
	</property>

2.5、修改slaves配置文件

vim slaves
hadoop1
hadoop2
hadoop3

注意: 文件中添加的内容结尾不能有空格,文件中也不能有空行。

2.6、将以上配置文件同步分发至其他节点

二、集群启动

1、如果集群是第一次启动,要在namenode主节点格式化NameNode

hdfs namenode -format

注意:

格式化NameNode会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到以往的数据;
如果集群在运行过程中报错,需要重新格式化NameNode的话,需要先停止NameNode和DataNode进程,并且需要删除所有节点的data和logs目录,然后再进行格式化;

2、启动集群

//启动hdfs
cd /usr/local/hadoop-2.6.4/sbin
./start-dfs.sh
//到resourcemanager的节点上启动yarn
./start-yarn.sh

3、验证 

在每一台节点上输入:jps 查看进程

[root@qsh4-sit-db-manage-1 sbin]# jps
17471 NameNode
18960 NodeManager
19110 Jps
17592 DataNode

Web端查看HDFS的NameNode

  • 浏览器访问:http://ip:8888
  • 查看HDFS上存储的数据信息

Web端查看YARN的ResourceManager,默认8088

  • 浏览器访问:http://10.4.45.82:8088
  • 查看YARN上运行的Job信息

三、集群测试