ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 1. 集群规划 ![](https://img.kancloud.cn/82/30/8230c6a61689d34d951e5f0d96084323_750x325.png) Hadoop HDFS的角色包含: NameNode,主节点管理者 DataNode,从节点工作者 SecondaryNameNode,主节点辅助 ![](https://img.kancloud.cn/b8/d2/b8d28720e3d721714d3624500e6db30c_1175x309.png) ## 2.上传 & 解压 1. 上传Hadoop安装包到node1节点中 2. 解压缩安装包到/export/server/中 ``` tar -zxvf hadoop-3.3.4.tar.gz -C /export/server ``` 3. 构建软链接 ``` cd /export/server ln -s /export/server/hadoop-3.3.4 hadoop ``` 4. 进入hadoop安装包内 ``` cd hadoop ``` ## 3.修改配置文件,应用自定义设置 配置HDFS集群,我们主要涉及到如下文件的修改: * workers: 配置从节点(DataNode)有哪些 * hadoop-env.sh: 配置Hadoop的相关环境变量 * core-site.xml: Hadoop核心配置文件 * hdfs-site.xml: HDFS核心配置文件 这些文件均存在与$HADOOP_HOME/etc/hadoop文件夹中 ## 4. 准备数据目录 根据下述2个配置项: ![](https://img.kancloud.cn/fc/23/fc2390155df4d9c6d320f6424a578897_679x148.png) ![](https://img.kancloud.cn/a6/ed/a6ed0528717af2e755c3a1447cfb4350_674x150.png) * namenode数据存放node1的/data/nn * datanode数据存放node1、node2、node3的/data/dn 所以应该 * 在node1节点: ``` mkdir -p /data/nn mkdir /data/dn ``` * 在node2和node3节点: ``` mkdir -p /data/dn ``` ## 5. 分发Hadoop文件夹 目前,已经基本完成Hadoop的配置操作,可以从node1将hadoop安装文件夹远程复制到node2、node3 * 分发 ``` # 在node1执行如下命令 cd /export/server scp -r hadoop-3.3.4 node2:`pwd`/ scp -r hadoop-3.3.4 node3:`pwd`/ ``` * 在node2执行,为hadoop配置软链接 ``` # 在node2执行如下命令 ln -s /export/server/hadoop-3.3.4 /export/server/hadoop ``` * 在node3执行,为hadoop配置软链接 ``` # 在node3执行如下命令 ln -s /export/server/hadoop-3.3.4 /export/server/hadoop ``` ## 6.配置环境变量 为了方便我们操作Hadoop,可以将Hadoop的一些脚本、程序配置到PATH中,方便后续使用。 ![](https://img.kancloud.cn/f4/e0/f4e0a85f5548bc328fd2de36450b4d14_1380x318.png) 在Hadoop文件夹中的bin、sbin两个文件夹内有许多的脚本和程序,现在来配置一下环境变量 1. vim /etc/profile ``` # 在/etc/profile文件底部追加如下内容 export HADOOP_HOME=/export/server/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin ``` 2. 在node2和node3配置同样的环境变量 ## 7. 授权为hadoop用户 hadoop部署的准备工作基本完成 为了确保安全,hadoop系统不以root用户启动,我们以普通用户hadoop来启动整个Hadoop服务 所以,现在需要对文件权限进行授权。 **ps:请确保已经提前创建好了hadoop用户(前置准备章节中有讲述),并配置好了hadoop用户之间的免密登录** * 以root身份,在node1、node2、node3三台服务器上均执行如下命令 ``` # 以root身份,在三台服务器上均执行 chown -R hadoop:hadoop /data chown -R hadoop:hadoop /export ``` ## 8.格式化整个文件系统 * 格式化namenode ``` # 确保以hadoop用户执行 su - hadoop # 格式化namenode hadoop namenode -format ``` * 启动 ``` # 一键启动hdfs集群 start-dfs.sh # 一键关闭hdfs集群 stop-dfs.sh # 如果遇到命令未找到的错误,表明环境变量未配置好,可以以绝对路径执行 /export/server/hadoop/sbin/start-dfs.sh /export/server/hadoop/sbin/stop-dfs.sh ``` ## 9.查看HDFS WEBUI 启动完成后,可以在浏览器打开: http://node1:9870,即可查看到hdfs文件系统的管理网页。 ![](https://img.kancloud.cn/fc/78/fc783baaf6bcbfaaae9134cf5f766afc_1693x586.png)