HDFS 安装
docker 单节点版本安装
参考 https://registry.hub.docker.com/r/pravega/hdfs 执行 docker run -p 22022:22 -p 8020:8020 -p 50010:50010 -p 50020:50020 -p 50070:50070 -p 50075:50075 --name hdfs -d pravega/hdfs
docker 多节点版本安装
下载镜像 参考 https://registry.hub.docker.com/r/gradiant/hdfs 下载 gradiant/hdfs-namenode、gradiant/hdfs-datanode 这2个docker镜像 安装这2个镜像 安装namenode docker run -p 8020:8020 -p 50070:50070 -d --name hdfs-namenode --network bridge gradiant/hdfs-namenode 50070是web的管理端口 8020是rpc端口 安装datanode1 docker run -p 50011:50011 -p 50021:50021 -p 50081:50081 -d --link hdfs-namenode --name hdfs-datanode1 --network bridge -e CORE_CONF_fs_defaultFS=hdfs://10.0.22.217:8020 gradiant/hdfs-datanode 修改端口号 以上端口原本是50010、50020、50075,分别改为50011、50021、50081 cd /opt/hadoop/etc/hadoop/ 修改 hdfs-site.xml,添加下面几行 <property><name>dfs.datanode.address</name><value>0.0.0.0:50011</value></property> <property><name>dfs.datanode.ipc.address</name><value>0.0.0.0:50021</value></property> <property><name>dfs.datanode.http.address</name><value>0.0.0.0:50081</value></property> 重启容器 安装datanode2 docker run -p 50012:50012 -p 50022:50022 -p 50082:50082 -d --link hdfs-namenode --name hdfs-datanode2 --network bridge -e CORE_CONF_fs_defaultFS=hdfs://10.0.22.217:8020 gradiant/hdfs-datanode 同样的方法修改端口号,重启容器 查看验证 http://ip:50070,datandoes一栏,node有2个,表示已经启动好了。
裸机单机版安装
配置JDK的环境变量 修改/etc/profile文件,增加下面3行 export JAVA_HOME=/data/backup/hadoop/jdk1.8.0_191 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 执行 source /etc/profile 使配置生效 重新ssh登录,查看JAVA_HOME、PATH是否生效 如果没有生效,修改用户目录下的(/root/.bash_profile),增加 PATH=$PATH:$JAVA_HOME/bin 再重新登录测试 准备安装包 https://archive.apache.org/dist/hadoop/common/hadoop-2.7.0/hadoop-2.7.0.tar.gz 下载即可 上传到/data/hadoop 解压安装包 设置hadoop环境变量,修改/etc/profile文件,增加 export HADOOP_HOME=/data/backup/hadoop/hadoop-2.7.0 export PATH=$PATH:$HADOOP_HOME/bin 如果没有生效,修改用户目录下的(/root/.bash_profile),增加 PATH=$PATH:$HADOOP_HOME/bin 再重新登录测试 配置伪分布式 vi etc/hadoop/core-site.xml,添加 <property> <name>fs.defaultFS</name> <value>hdfs://ip:9000</value> </property> 修改存储路径 <property> <name>hadoop.tmp.dir</name> <value>/data/backup/hadoop/data</value> </property> vi etc/hadoop/hdfs-site.xml,增加 <property> <name>dfs.replication</name> <value>1</value> </property> 配置ssh免密登录 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 0600 ~/.ssh/authorized_keys 格式化namenode hdfs namenode -format 启动 sbin/start-all.sh 如果报了 JAVA_HOME is not set and could not be found. vi etc/hadoop/hadoop-env.sh 直接把jdk的目录,配置写死进去 验证 浏览器输入 http://ip:50070
通过jps查询进程;ss查询端口监听情况
9000 是hdfs的端口,配置在core-site.xml
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?