目录

一、安装VMware Workstation 15.1

二、下载Ubuntu镜像

三、安装Ubuntu镜像

 更改阿里云镜像源

四、配置JAVA环境

五、配置安装Hadoop

修改虚拟机名称

配置SSH免密登录  

配置集群环境

分发文件

启动Hadoop

数据分析


 

 

一、安装VMware Workstation 15.1

 安装路径:VMware Workstation 15.1兼容win10 https://www.aliyundrive.com/s/uUNpgqctbi9

提取码: ix71

二、下载Ubuntu镜像

这里推荐直接进入Ubuntu的官网进行下载:Ubuntu20.04

三、安装Ubuntu镜像

4307b0ef2ae7c7a9e736733f6d0de7c8.png53163fa840e83a1f39bbf9df66642890.png

761c81283026e1c8b1b80a16df49213c.png dc8bb867301dd75d6851c64e1c2236f0.png

5a050a6849a22fa0e8e192ea0662ab9e.png

6.可以自己改虚拟机的名称,这里建议存储放在除C盘外的其他盘里。然后【下一步】

5e067d2692b94e6677a0785c797dd9a3.png

 8d3d11cb170e70f188f8028dc8843051.png

b817d1cfb1ca1702dc878c1faa9b0feb.png

 9.默认【下一步】

40d1e3cb7ea9fd48ac3a1f5919054b10.png

d63b07495f4f36d7a5adc994d56a8c3d.png

a6617b03886dda972a141c0fbe282c0c.png

c4bed86ff98708e104597c2a182b4122.png

129ecc693289af0084ecd73a9177e6f0.png

 826d22d060cc274d10aa39d9900e8177.png

14.选择【编辑虚拟机设置】->【CD/DVD(SATA)】->【使用ISO映像(M)】,然后选择下载好的ubuntu20.04镜像文件。 (图片安装的是Ubuntu19.04镜像,但是操作是一样的。有想要安装Ubuntu19.04的朋友,可以参考这篇文章。

03855e52fd20e9ebb240473332a8fb0a.png

 15.安装Ubuntu

472528a06653960ddd6a4be81b85f918.png

向下滚动找到中文简体 

5c88339e6c9505e0480ef443e4a5b0d2.png

默认键盘设置,点击【继续】

3b1843d44931be346187c375addea315.png

默认选项,点击【继续】

1eb0654f5d632088959b779ab349b450.png

点击【现在安装】 

14633524fa2c25500cc69a229dde1c2b.png

 9d8eafa9a627c24e0d0b83c95185ef2b.png

 时间选择shanghai,点击【继续】

43bf1fe52753cbda2a525a60e16a0dd9.png

 设置用户名和密码(登录方式可按照自己需求来设置)点击【继续】

87d06fda542e165bb16be30a7317945e.png

 上个步骤完成后,就要等待安装,安装过程下载解压的文件较多,会很慢,要保证电脑常亮,不要进入待机状态,不然虚拟机可能会出现卡顿。安装完成后,点击【现在重启】

重启进入后,点击自己的用户,输入密码,【回车】

然后就是一些基础的设置

02965d42ed82cf934b1a17fbfadc6555.png

e477e53f89ca7ef1ca0f9f0d862d52a7.png

50c36ec7e2052784b0edc5a55544d00e.png 打开之后,Ubuntu系统界面不是全屏,可以右击桌面,点击【显示设置】,【显示器】,将分辨率调成如图数值就可以了。1b4fca4d36fc3c4689bc9cc7ee3250b0.png

 6d58dfdfdb70df552100ef945a1347fe.png

以上安装过程建议在使用有线网环境下进行,因为本人是按照这个步骤安装的,安装完成后并没有出现IP地址上的问题,虚拟机上的网络是可用的。显示也是有线已连接。

a89d85a50987bd53dbf932f8bea6baac.png

 利用终端 ping www.baidu.com,也是可以ping通的。

67951b82b6d645725a252f5a7f86a20c.png

下载vim数据包

sudo apt-get install vim

71fec093bd9c7f9981decb84d0d7a388.png

 更改阿里云镜像源

点击左下角九个点的方块,然后找到并点击【软件和更新】

b120ecae1b44d4a477cd8abbc84b5031.pngec15cc99db2418421753b3f543043d0f.pngf291577d6f4608064fc0189ac4550116.png

 26991ee259f51b6ad1ec515ba57bb78e.png

 点击【重新载入】2fbd2c2ac919ac04677ac1a078481750.png

 3606d39e722f20ba47877bc13429ad2f.png

sudo apt-get update

ee19fc767cd52705594c03ead4ac9d09.png

四、配置JAVA环境

打开下载Java JDK的文件夹,右键【在终端打开】,输入命令

tar -zxvf jdk-19_linux-x64_bin.tar.gz

a8f8863e5d2cf3331d136dda690a801b.png

 然后将解压后的文件夹移动到 /usr/java 下(需要输入管理员密码),输入命令

sudo mv jdk-19.0.1 /usr/java

bfafc6b95ad65a019a83a3c643ca4a5e.png

 显示主目录的隐藏文件 .profile 文件,进行环境配置。d60403542bf0cedb253202f7871c2add.png

用文本编辑器打开它,然后在末尾添加如下代码,然后点击【保存】。

export JAVA_HOME=/usr/java

# JDK8 添加 JRE_HOME 和 CLASSPATH 配置
export JRE_HOME=$JAVA_HOME/jre
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH

0ec7058590ab9490a07d227970ae6bc6.png输入命令,运行配置环境。

source ~/.profile

3c37fc606a022525e4a64dd359863f76.png

建立系统软链接

sudo update-alternatives --install /usr/bin/javac javac /usr/java/bin/javac 1
sudo update-alternatives --install /usr/bin/javac java /usr/java/bin/java 1

输入命令查看Java版本

java -version

1913d02c6767743e1fe689962e4d951d.png

五、配置安装Hadoop

解压压缩包,然后将解压后的文件夹移动到 /usr/hadoop 下(需要输入管理员密码),输入命令

tar -zxvf hadoop-3.3.2.tar.gz
sudo mv hadoop-3.3.2 /usr/hadoop

dbed3abb3609b4cb551fb8266ea1f56f.png

 配置JDK路径

打开文件管理器,找到 Hadoop 安装目录下的 /etc/hadoop/hadoop-env.sh 并使用文本编辑器打开(默认双击)
注意此处是 hadoop-env.sh 而不是 hadoop-env.cmd
在文件末尾添加以下代码(建议直接复制)并保存退出

export JAVA_HOME=/usr/java

配置Hadoop

在刚刚的目录下找到 core-site.xml 文件,用文本编辑器打开
在 <configuration> 标签中添加下面的配置,保存并退出

  <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/hadoop/tmp</value>
  </property>

  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
  </property>

继续在文件夹中找到 hdfs-site.xml 文件,用文本编辑器打开
在 <configuration> 标签中添加下面的配置,保存并退出

  <property>
    <name>dfs.replication</name>
    <value>3</value>
  </property>

  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/hadoop/tmp/dfs/name</value>
  </property>

  <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/hadoop/tmp/dfs/data</value>
  </property>

  <property>
    <name>dfs.http.address</name>
    <value>0.0.0.0:50070</value>
  </property>

以上全部配置完成。

修改虚拟机名称

hostname
hostnamectl set-hostname ‘hadoop01’
hostname
ifconfig
#分别得到三台设备的IP地址
sudo vim /etc/hosts
#将IP地址和用户名编辑在后面    

24ccfacf90f40a6a6455757d78bd081f.png 配置SSH免密登录  

 

sudo apt-get install openssh-server

ee887604431eb9c4bb38df33b4f46343.png

ssh localhost #登录主机,要输入yes
exit #退出主机
cd ~/.ssh/ #进入到ssh里面
ssh-keygen -t rsa #按四次回车

87792824919b574892ff26ff4f06826c.png

 用户名改为自己的即可。

#三台机器互相免密登录
cd ~/.ssh               # 如果没有该目录,先执行一次ssh localhost         
rm ./id_rsa*            # 删除之前生成的公匙(如果有)                  
ssh-keygen -t rsa       # 一直按回车就可以       
cat ./id_rsa.pub >> ./authorized_keys   #让master 节点可以无密码 SSH 本机,在 master 节点上执行
ssh master       #在主结点上实现ssh免密登录
scp ~/.ssh/id_rsa.pub hadoop@slave01:/home/hadoop/ #slave1是结点名称hadoop是自己主机名,发送公钥至从结点
mkdir ~/.ssh        # 如果不存在该文件夹需先创建,若已存在则忽略        
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys                                   
rm ~/id_rsa.pub    # 用完就可以删掉了

#上述操作需要虚拟机之间互相操作,即主节点要发给从节点,确认后从节点还要发给主节点,少操作一步都会使SSH免密登录不成功。

配置集群环境

配置集群模式时,需要修改“/usr/local/hadoop/etc/hadoop”目录下的配置文件,包括workers、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml。【主机名和路径需要自己修改】

vim workers
#命令


#以下是写入文件的内容(按【i】编辑,只能用键盘方向键移动光标,按【Esc】退出编辑,输入【:wq】保存并退出文件)
hadoopWyc
hadoopWyc2 
hadoopWyc3
vim core-site.xml
#命令



<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hadoopWyc:9000</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>file:/usr/local/hadoop/tmp</value>
        </property>
</configuration>
vim hdfs-site.xml
#命令


<configuration>
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>hadoopWyc2:50090</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>3</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>
vim mapred-site.xml
#命令


<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.address</name>
                <value>hadoopWyc:10020</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.webapp.address</name>
                <value>hadoopWyc:19888</value>
        </property>
        <property>
                <name>yarn.app.mapreduce.am.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
        </property>
        <property>
                <name>mapreduce.map.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
        </property>
        <property>
                <name>mapreduce.reduce.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
        </property> 
</configuration>
vim yarn-site.xml
#命令


<configuration>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>hadoopWyc</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
</configuration>

分发文件

此步骤也可以将上个步骤重复操作。

cd /usr/local
sudo rm -r ./hadoop/tmp     # 删除 Hadoop 临时文件
sudo rm -r ./hadoop/logs/*   # 删除日志文件
tar -zcf ~/hadoop.master.tar.gz hadoop  # 先压缩再复制
cd ~
scp hadoop.master.tar.gz hadoopWyc2:/home/
scp hadoop.master.tar.gz hadoopWyc3:/home/


#从节点虚拟机解压缩
sudo rm -r /usr/local/hadoop    # 删掉旧的(如果存在)
sudo tar -zxf /home/hadoop.master.tar.gz -C /usr/local
sudo chown -R wyc /usr/local/hadoop

 启动Hadoop

cd /usr/hadoop/bin
#打开任意终端,进入 /hadoop/bin 路径 

./hdfs namenode -format 
#进行格式化

d2ecf5aabb84d1d0513f93fd1711d52f.png

cd /usr/hadoop/sbin
#进入 /hadoop/sbin 路径 
./start-all.sh 
#启动 hadoop
jps
#查看进程

ec94faa5c874cda871b68977e30bbae6.png

cd /usr/local/hadoop
./bin/hadoop version
#查询Hadoop版本

如果出现如下图中的报错,参考此文。

root@hadoopWyc3:/usr/local/hadoop# ./sbin/start-dfs.sh
Starting namenodes on [hadoopWyc]
ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.
Starting datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.
Starting secondary namenodes [hadoopWyc2]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.

数据分析

安装配置好Hadoop之后,可以利用Hadoop来进行数据分析。【相关资源点这里】

unzip bdintro-master.zip  #解压缩
cd bdintro-master  #进入解压文件
unzip hadoop-yangyaru-datanode-dell119.log.zip
hdfs dfs -copyFromLocal hadoop-yangyaru-datanode-dell119.log /
#下载bigdata-0.0.1.jar

#分析日志文件
hadoop jar bigdata-0.0.1.jar bigdata.bigdata.Grep WARN /hadoop-yangyaru-datanode-dell119.log /output

#数据分析交通文件
hadoop jar bigdata-0.0.1.jar bigdata.bigdata.TrafficTotal /Traffic_Violations.csv /output/traffic

aff586b55c6ea5fae9f721b23e0461f7.png

6254067d98b5d2bf46ef5a0960176d3d.png 86e93440369095feeeefd8a7b7fc6a4f.png

创作不易,请多支持!

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐