Hadoop初探
系统环境
- Windows 10 企业版 1903 18362.592
- VMware® Workstation 15 Pro
- ubuntu-18.04.*-live-server-amd64
- Hadoop-3.1.3
- Ubuntu 操作系统的配置简要如下,使用
  
Hadoop 安装
用户准备
- 
创建hadoop用户(此处按照要求使用hadoop511) sudo useradd -m hadoop511 -s /bin/bash
- 
设置新建用户密码 sudo passwd hadoop511
- 
添加到sudo组 sudo adduser hadoop511 sudo 
- 
切换到新建用户  
- 
添加SSH密钥证书 ssh_keygen 步骤,如对安全性等无特殊要求,建议他询问你输入东西的时候,全部回车即可 cd ~/.ssh/ ssh-keygen -t rsa cat ./id_rsa.pub >> ./authorized_keys
配置Java环境
本处选择的是AdoptOpenJDK的OpenJDK8U-jdk_x64_linux_hotspot_8u242b08
由于实验时到Github下载服务器的网络不是太好,采取下载到本地再拉取到服务器的方式,因此wget地址为本地地址
- 
创建JAVA下载目录 mkdir -p openjdk cd openjdk
- 
下载JAVA文件 wget -c https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/8/jdk/x64/linux/OpenJDK8U-jdk_x64_linux_hotspot_*.tar.gz 
- 
解压缩并去除二级目录 tar zxf OpenJDK8U-jdk_x64_linux_hotspot_8u242b08.tar.gz mv jdk8u424-b08/* . 
- 
拷贝到系统目录 sudo cp -r ~/openjdk /usr/local/
- 
修改系统环境变量 多个变量的分隔符为 冒号 : cat >> ~/.bashrc <<'EOF' export JAVA_HOME=/usr/local/openjdk export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=$PATH:${JAVA_HOME}/bin EOF 
- 
刷新系统环境变量 source ~/.bashrc
- 
测试JAVA配置 which java 
配置Hadoop
- 
创建Hadoop下载目录 mkdir -p ~/hadoop
- 
下载Hadoop源文件 wget -c https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz 
- 
解压缩后去除二级目录拷贝到目标位置 tar zxf hadoop-3.1.3.tar.gz mv hadoop-3.1.3 hadoop sudo cp -r ./hadoop /usr/local/ 
- 
更改文件拥有者 cd /usr/local sudo chown -R hadoop511 ./hadoop 
- 
验证Hadoop可用 /usr/local/hadoop/bin/hadoop version
- 
修改系统环境变量 cat >> ~/.bashrc <<'EOF' export PATH=$PATH:/usr/local/hadoop/bin EOF 
- 
刷新系统环境变量 source ~/.bashrc
Hadoop 非分布式单机配置
Hadoop 默认即为非分布式单机运行
- 
查看Hadoop自带的样例程序 hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar 
- 
测试正则grep 2.1 将输入文件放入 input 文件夹 此处使用Hadoop配置文件进行测试 cd /usr/local/hadoop mkdir -p input cp -r ./etc/hadoop/*.xml ./input/ 2.2 运行Hadoop测试 hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output 'dfs[a-z.]+' 2.3 查看测试运行结果 cat ./output/* 
Hadoop 伪分布式配置
这个伪分布式的意思就是其实还是在一台电脑上运行不同的节点,只不过看起来有好多节点,类似于Docker和k8s那种,或者理解成多个VM / WSL虚拟机也差不多感觉
Hadoop的配置文件位于
/usr/local/hadoop/etc/hadoop/中,伪分布式需要修改的两个文件为core-site.xml和hdfs-site.xml
- 
修改 core-site.xml cd /usr/local/hadoop cp etc/hadoop/core-site.xml etc/hadoop/core-site.xml.bak cat > etc/hadoop/core-site.xml <<EOF <configuration> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> EOF
- 
修改 hdfs-site.xml cp etc/hadoop/hdfs-site.xml etc/hadoop/hdfs-site.xml.bak cat > etc/hadoop/hdfs-site.xml <<EOF <configuration> <property> <name>dfs.replication</name> <value>1</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> EOF
- 
Namenode 初始化 hdfs namenode -format 
- 
开启 NameNode 和 DataNode 守护进程 ./sbin/start-dfs.sh如果说找不到JAVA_HOME但是自己又配置了,你可以执行下面的语句强行告诉Hadoop环境变量 cat >> /usr/local/hadoop/etc/hadoop/hadoop-env.sh <<'EOF' JAVA_HOME=/usr/local/openjdk EOF
- 
查看启动情况 jps 
- 
网页管理监控 
Web界面是运行于Hadoop服务器的,所以其IP地址为安装Hadoop的机器IP地址
可以在终端中使用ifconfig查看
至于端口,我安装版本2的时候是50070,但是3的时候使用netstat找了一下,发现同功能页面端口改成了9870

运行Hadooop伪分布式实例
- 
在文件系统中创建输入文件夹 hdfs dfs -mkdir -p input
- 
将测试文件放入文件系统 hdfs dfs -put ./etc/hadoop/*.xml ./input/ 
- 
检查文件系统内部测试文件 hdfs dfs -ls input 从Web页面检查也可以  
- 
运行实例 hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep input output 'dfs[a-z.]+' 
- 
查看一下输出结果 hdfs dfs -cat output/* - 这个时候的所有文件操作都在文件系统中发生改写,本地当前目录并无更新,相当于Docker的卷映射
  
- 在web界面管理端也可以验证这一点
  
 
- 这个时候的所有文件操作都在文件系统中发生改写,本地当前目录并无更新,相当于Docker的卷映射
- 
将文件系统文件取到当前目录 hdfs dfs -get output ./output cat ./output/* 
- 
关闭从节点 ./sbin/stop-dfs.sh 
 
                
《我的徒弟居然是女帝》国产动漫高清在线免费观看:https://www.jgz518.com/xingkong/11433.html
《我的徒弟居然是女帝》国产动漫高清在线免费观看:https://www.jgz518.com/xingkong/11433.html
《不装了,我姐姐是大佬》短片剧高清在线免费观看:https://www.jgz518.com/xingkong/138942.html
《心的归属国语(全新修订版)》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/162536.html
哈哈哈,写的太好了https://www.lawjida.com/
瑕不掩瑜,稍加打磨必成佳作。
这篇文章提供了宝贵的经验和见解,对读者有很大的启发和帮助。
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com