hdfs配置在centos的步骤
一、准备工作
-
安装Java环境
Hadoop依赖Java运行环境,需安装JDK 8(推荐OpenJDK)。执行以下命令:sudo yum update -y sudo yum install -y java-1.8.0-openjdk-devel验证安装:
java -version(需显示Java 1.8.0版本信息)。 -
下载并解压Hadoop
从Apache Hadoop官网下载稳定版本(如3.3.4),解压至指定目录(如/usr/local):wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz tar -xzvf hadoop-3.3.4.tar.gz -C /usr/local/ sudo mv /usr/local/hadoop-3.3.4 /usr/local/hadoop(可选)创建软链接简化命令:
sudo ln -s /usr/local/hadoop /usr/local/hadoop。 -
配置Hadoop环境变量
编辑/etc/profile文件,添加以下内容(替换/usr/local/hadoop为实际路径):export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk # 根据java -version输出调整 export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin使配置生效:
source /etc/profile。
二、网络与SSH配置
-
配置主机名与IP映射
编辑/etc/hosts文件,添加NameNode和DataNode的IP与主机名映射(每行一个节点):192.168.1.100 namenode 192.168.1.101 datanode1 192.168.1.102 datanode2确保所有节点的
/etc/hostname文件中主机名与/etc/hosts一致。 -
配置静态IP
编辑网络配置文件(如/etc/sysconfig/network-scripts/ifcfg-ens33),设置静态IP:BOOTPROTO=static ONBOOT=yes IPADDR=192.168.1.100 # 替换为实际IP NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8重启网络:
sudo systemctl restart network。 -
配置SSH免密登录
在NameNode上生成SSH密钥对:ssh-keygen -t rsa -P ""(直接回车)。
将公钥复制到所有节点(包括自身):ssh-copy-id root@namenode ssh-copy-id root@datanode1 ssh-copy-id root@datanode2测试免密登录:
ssh namenode(无需输入密码)。
三、HDFS核心配置文件修改
进入Hadoop配置目录:cd $HADOOP_HOME/etc/hadoop,修改以下文件:
-
core-site.xml
配置HDFS默认文件系统和NameNode地址:< configuration> < property> < name> fs.defaultFS< /name> < value> hdfs://namenode:9000< /value> < !-- 替换为NameNode主机名 --> < /property> < property> < name> hadoop.tmp.dir< /name> < value> /tmp/hadoop< /value> < !-- 临时目录,可自定义 --> < /property> < /configuration> -
hdfs-site.xml
配置NameNode/Datanode数据目录、副本数及Web界面端口:< configuration> < property> < name> dfs.replication< /name> < value> 1< /value> < !-- 单节点设为1,集群设为3 --> < /property> < property> < name> dfs.namenode.name.dir< /name> < value> /usr/local/hadoop/data/namenode< /value> < !-- NameNode数据目录 --> < /property> < property> < name> dfs.datanode.data.dir< /name> < value> /usr/local/hadoop/data/datanode< /value> < !-- DataNode数据目录 --> < /property> < property> < name> dfs.namenode.http-address< /name> < value> namenode:50070< /value> < !-- Web界面地址 --> < /property> < property> < name> dfs.webhdfs.enabled< /name> < value> true< /value> < !-- 启用WebHDFS --> < /property> < /configuration> -
slaves文件(可选,集群部署需配置)
在NameNode上编辑slaves文件,添加DataNode主机名(每行一个):datanode1 datanode2(单节点部署可跳过此步)。
四、格式化NameNode
在NameNode节点上执行格式化命令(首次启动前必须执行):
hdfs namenode -format
此命令会初始化NameNode的元数据存储目录(如dfs.namenode.name.dir指定的路径)。
五、启动HDFS服务
-
启动集群
在NameNode上执行:$HADOOP_HOME/sbin/start-dfs.sh此命令会自动启动NameNode和所有DataNode(若配置了
slaves文件)。 -
验证进程
使用jps命令检查NameNode和DataNode是否运行:- NameNode节点:应显示
NameNode进程。 - DataNode节点:应显示
DataNode进程。
- NameNode节点:应显示
六、验证配置
-
访问Web界面
在浏览器中输入http://namenode-ip:50070(如http://192.168.1.100:50070),查看HDFS集群状态(包括存储容量、DataNode列表等)。 -
测试文件操作
执行以下命令上传文件到HDFS:hdfs dfs -put /path/local/file.txt /user/root/ # 上传本地文件到HDFS根目录下的user/root路径 hdfs dfs -ls /user/root/ # 查看HDFS中的文件
七、可选配置
-
关闭防火墙(测试环境)
临时关闭防火墙:sudo systemctl stop firewalld
禁止开机启动:sudo systemctl disable firewalld
(生产环境建议配置防火墙规则,允许HDFS端口:9000、50010、50020、50070等)。 -
配置NTP时间同步
安装NTP服务:sudo yum install -y ntp
启动NTP并设置开机启动:sudo systemctl start ntpd & & sudo systemctl enable ntpd
同步时间:sudo ntpdate ntp.aliyun.com(替换为可用NTP服务器)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: hdfs配置在centos的步骤
本文地址: https://pptw.com/jishu/741936.html
