Hadoop群集安装(未写完)

==作者:YB-Chi==

[toc]

流程

Hadoop 集群的安装配置大致为如下流程:

  1. 选定一台机器作为 Master
  2. 在 Master 节点上配置 hadoop 用户、安装 SSH server、安装 Java 环境
  3. 在 Master 节点上安装 Hadoop,并完成配置
  4. 在其他 Slave 节点上配置 hadoop 用户、安装 SSH server、安装 Java 环境
  5. 将 Master 节点上的 /usr/local/hadoop 目录复制到其他 Slave 节点上
  6. 在 Master 节点上开启 Hadoop

准备工作

其他工作见我所写的Hadoop单机部署,此处只讲解ssh无密登陆

这个操作是要让 Master 节点可以无密码 SSH 登陆到各个 Slave 节点上。

首先生成 Master 节点的公匙,在 Master 节点的终端中执行(因为改过主机名,所以还需要删掉原有的再重新生成一次):

1
cd ~/.ssh               # 如果没有该目录,先执行一次ssh localhostrm ./id_rsa*            # 删除之前生成的公匙(如果有)ssh-keygen -t rsa       # 一直按回车就可以

让 Master 节点需能无密码 SSH 本机,在 Master 节点上执行:

1
cat ./id_rsa.pub >> ./authorized_keys

完成后可执行 ssh localhost证一下(可能需要输入 yes,成功后执行 exit 返回原来的终端)。接着在 Master 节点将上公匙传输到 Slave1 节点:

1
scp ~/.ssh/id_rsa.pub root@cluster_node1:/root/.ssh

scp 是 secure copy 的简写,用于在 Linux 下进行远程拷贝文件,类似于 cp 命令,不过 cp 只能在本机中拷贝。执行 scp 时会要求输入 Slave1 上 root用户的密码(也可以使用其他用户,比如我的chi用户),输入完成后会提示传输完毕

接着在 Slave1 节点上,将 ssh 公匙加入授权:

1
2
mkdir ~/.ssh       # 如果不存在该文件夹需先创建,若已存在则忽略
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keysrm ~/.ssh/id_rsa.pub # 用完就可以删掉了

如果有其他 Slave 节点,也要执行将 Master 公匙传输到 Slave 节点、在 Slave 节点上加入授权这两步。

这样,在 Master 节点上就可以无密码 SSH 到各个 Slave 节点了,可在 Master 节点上执行如下命令进行检验,如下图所示:

1
ssh cluster_node1

微信截图_20170824164948.png

配置文件

集群/分布式模式需要修改 /usr/local/hadoop/etc/hadoop 中的5个配置文件,更多设置项可点击查看官方说明,这里仅设置了正常启动所必须的设置项: slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml

1, 文件 slaves,将作为 DataNode 的主机名写入该文件,每行一个,默认为 localhost,所以在伪分布式配置时,节点即作为 NameNode 也作为 DataNode。分布式配置可以保留 localhost,也可以删掉,让 Master 节点仅作为 NameNode 使用。

本教程让 Master 节点仅作为 NameNode 使用,因此将文件中原来的 localhost 删除,添加如下内容

1
2
cluster_node1
cluster_node2

2,文件 core-site.xml 改为下面的配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop2/tmp</value>
<description>temp dir</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://cluster_model:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
</configuration>

3, 文件 hdfs-site.xml,dfs.replication 一般设为 3,但我们只有两个 Slave 节点,所以 dfs.replication 的值还是设为 2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<configuration> 
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>Master:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>

4, 文件 mapred-site.xml (可能需要先重命名,默认文件名为 mapred-site.xml.template),然后配置修改如下:

文章作者: CYBSKY
文章链接: https://cybsky.top/2022/10/27/cyb-mds/bigdata/Hadoop/Hadoop群集安装(未写完)/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 CYBSKY