文章目录
- 前言
- 一、服务器准备
- 1、服务器列表
- 二、安装包准备
- 三、安装步骤
- 第一步:上传解压
- 2 配置java环境
- 第二步:vim hadoop-env.sh
- 第三步:在 Linux 中配置 Hadoop 环境变量
- 第四步:验证
- 第五步:修改hosts
- 第六步:设置 SSH 免密码登录
- 第七步:配置HDFS
- 第八步:配置NameNode节点
- 第九步:修改hostName
- 第十步:格式化 NameNode 以及启动 HDFS 系统
- 第十一步:网页访问
前言
目前公司需要搭建一个存储大文件的文件系统,经过一系列调研最后决定采用HDFS。
一、服务器准备
1、服务器列表
IP | 角色 |
192.168.50.100 | NameNode |
192.168.50.22 | DataNode |
192.168.50.241 | DataNode |
192.168.50.124 | DataNode |
192.168.50.143 | DataNode |
192.168.50.146 | DataNode |
二、安装包准备
jdk1.8.0_271下载地址Hadoop: hadoop-3.1.4下载地址
三、安装步骤
第一步:上传解压
tar -zxvf hadoop-3.1.4.tar.gz
tar -zxvf jdk-8u271-linux-x64.tar.gz
2 配置java环境
第二步:vim hadoop-env.sh
cd /hadoop-2.7.3/etc/hadoop/etc目录就有hadoop-env.sh文件
第三步:在 Linux 中配置 Hadoop 环境变量
vim /etc/profile
在文本末尾追加
JAVA_HOME=/XXX/XXX/jdk1.8.0_271
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH
export JAVA_HOME
export CLASSPTH
export PATH=$PATH:/XXX/XXX/hadoop-3.1.4/bin:/home/hurui/hadoop-3.1.4/sbin
source /etc/profile
第四步:验证
hadoop
如果显示如下内容说明成功了。
第五步:修改hosts
vim /etc/hosts
第六步:设置 SSH 免密码登录
在master主机上执行:
ssh-keygen -t rsa
执行命令后,出现提示可以不予理会,直接按几次回车键就可以了。
接下来,我们把生成的公钥id发送到slave1、slave2、slave3和slave4和slave5这 5 台机器。
ssh-copy-id slave1
ssh-copy-id slave2
ssh-copy-id slave3
ssh-copy-id slave4
ssh-copy-id slave5
然后用:ssh slave1
验证是否登录成功。
第七步:配置HDFS
mkdir /xxx/xxx/hadoopData
主要修改修改core-site.xml和hdfs-site.xml文件。
- 修改core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
<description>HDFS 的 URI,文件系统://namenode标识:端口</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/XXX/XXX/hadoopData</value>
<description>namenode 上传到 hadoop 的临时文件夹</description>
</property>
<property>
<name>fs.trash.interval</name>
<value>4</value>
<description>检查点被删除的时间间隔,单位分钟,如果服务器禁用则看客户端的,如果服务端启用了,忽略客户端</description>
</property>
</configuration>
- 修改hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/xxx/xxx/hadoopData/dfs/name</value>
<description>datanode 上存储 hdfs 名字空间元数据</description>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/xxx/xxx/hadoopData/dfs/data</value>
<description>datanode 上数据块的物理存储位置</description>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
<description>副本个数,默认配置是 3,应小于 datanode 机器数量</description>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions.superusergroup</name>
<value>staff</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>dfs.namenode.datanode.registration.ip-hostname-check</name>
<value>false</value>
</property>
<property>
<name>dfs.datanode.use.datanode.hostname</name>
<value>true</value>
</property>
<property>
<name>dfs.client.use.datanode.hostname</name>
<value>true</value>
</property>
</configuration>
第八步:配置NameNode节点
vim works
第九步:修改hostName
- centos7直接修改vim /etc/hostname里面的内容,然后重启即可
第十步:格式化 NameNode 以及启动 HDFS 系统
1、格式化:hdfs namenode -format
2、启动:start-dfs.sh
如果启动失败:
解决办法如下:
在Hadoop安装目录下找到sbin文件夹
在里面修改四个文件
1、对于start-dfs.sh和stop-dfs.sh文件,添加下列参数:
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
2、对于start-yarn.sh和stop-yarn.sh文件,添加下列参数:
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
重新开始start…就可以。
第十一步:网页访问
打开网页:192.168.50.100:9870