赞
踩
VMware是一个虚拟PC的软件,可以在现有的操作系统中虚拟出一个新的硬件环境,相当于模拟出一台新的PC,以此来实现在一台机器上真正同时运行两个独立的操作系统。
1)下载安装包
下载地址:vm.zip(应用系统开发课程设计)-其它文档类资源-CSDN下载
获取压缩包后,打开压缩包。
打开以上安装程序,执行安装。
2)双击软件进行安装,并点击下一步。提醒:首次安装可能会安装一个环境并重启电脑。
3)选择“我接受许可协议中的条款”,点击下一步;选择软件安装的路径,建议放在其他盘,并点击下一步。
4)取消检查更新和用户体验计划,点击下一步;再点击下一步;点击安装。
5)安装完成选择点击“许可证”,输入许可证密钥并点击输入。许可密钥在压缩包中的key文本文件中。
6)安装完毕后打开VMware,许可信息显示已许可。
附:安装Mac OS插件
我们安装的VMware是无法安装Mac OS系统的,这时候我们就需要安装一个名为unlocker-master的插件。
1、安装前首先关闭VMware,然后到服务界面将VMware的服务全部都禁用掉。以保证安装的顺利进行。
2、将下载下来的unlocker-master解压,右键以管理员身份运行win-install.cmd。
3、插件就会在以下界面进行下载安装,安装完毕后界面会自动关闭,期间无需任何操作。
4、安装完毕后,再次打开VMware,在虚拟机向导里可以看出有Apple Mac OS的选择了,安装该插件之前该虚拟机是没有此选项的。
以上就是虚拟机VMware的安装教程,关于第二个步骤,如果你没有安装Mac的想法,可以不用安装。
Ubuntu 服务器版的下载地址:https://cn.ubuntu.com/download/thank-you?version=20.04.2&architecture=amd64
Ubuntu官网:Get Ubuntu | Download | Ubuntu
下载成功后,可在下载文件夹中看到该文件。
这就是Ubuntu的镜像文件,我们打开VMware,选择创建虚拟机。
点击完成按钮即可完成创建,接着在虚拟机设置中将网络设置为桥接模式(自动)。
网络配置参见我的以下文章,由于设置步骤很具有代表性,因此我将其单独成文。
使用VMware workstations配置Ubuntu 20.04.2 LTS网络_kylinmin的博客-CSDN博客
安装openSSH服务:
- sudo apt-get update
- sudo apt-get install openssh-server
测试ssh连接: ssh localhost ,然后输⼊要连接的电脑的密码(默认的用户是当前电脑的用户)这里需要输入yes来确定建立连接。
输出以下内容即表示连接成功:
- hadoop@hadoop:~$ ssh localhost
- Welcome to Ubuntu 20.04.2 LTS (GNU/Linux 5.4.0-74-generic x86_64)
-
- * Documentation: https://help.ubuntu.com
- * Management: https://landscape.canonical.com
- * Support: https://ubuntu.com/advantage
- System information as of Wed 23 Jun 2021 07:29:16 AM UTC
-
- System load: 0.14 Processes: 280
- Usage of /: 33.0% of 18.57GB Users logged in: 1
- Memory usage: 17% IPv4 address for ens33: 192.168.1.8
- Swap usage: 0%
-
-
- 74 updates can be installed immediately.
- 0 of these updates are security updates.
- To see these additional updates run: apt list --upgradable
-
-
- The list of available updates is more than a week old.
- To check for new updates run: sudo apt update
- Failed to connect to https://changelogs.ubuntu.com/meta-release-lts. Check your Internet connection or proxy settings
-
-
- Last login: Wed Jun 23 07:28:18 2021 from 192.168.1.7
在网络联通且ssh服务安装成功后,我们便可以采用远程工具连接该虚拟机进行操作。
这里列举两种常用连接工具:
a.putty
PuTTY是一款开源(Open Source Software)的连接软件,主要由Simon Tatham维护,使用MIT许可证授权。包含的组件有:PuTTY, PuTTYgen,PSFTP, PuTTYtel, Plink, PSCP, Pageant,默认登录协议是SSH,默认的端口为22。Putty是用来远程连接服务器的,支持SSH、Telnet、Serial等协议的连接。其中最常用的是SSH。用它来远程管理Linux十分好用,其主要优点如下:
◆ 完全免费;
◆ 在Windows 9x/NT/2000下运行的都非常好;
◆ 全面支持SSH1和SSH2;
◆绿色软件,无需安装,下载后在桌面建个快捷方式即可使用;
◆ 体积很小,不到1M;
◆ 操作简单,所有的操作都在一个控制面板中实现。
Putty的下载安装教程如下:
1、去putty官网PuTTY: a free SSH and Telnet client下载对应位数的软件到本地,下载地址:Download PuTTY: latest release (0.78)
2、下载得到的是一个安装文件,安装即可使用。
双击打开后,进入Putty的安装界面。安装过程较为简略,故此处不再赘述。
putty的基本使用方法如下:
1、打开需要连接的目标服务器(虚拟机),本例中以虚拟机Hadoop为例,其IP为:192.168.1.8。
2、打开putty,在面板中输入你要连接的目标的IP地址或者主机名,然后在下方的Saved Sessions方框内输入会话名,并点击“Save”即可保存当前设置以方便下次登录,如上图所示。
3、在Default Settings栏目中选中你保存的会话,之后点击打开,即可打开会。
4、之后putty页面会跳转,在跳转的页面中输入你连接的目标的用户账号,之后回车,再输入密码,验证通过之后即可远程登录,如下图所示。点击Open后,有时候会有一个提示,需要生成一个Key,点击确认即可。
需要注意的是为了保证密码的隐蔽性,此处输入密码时不会明文显示,只管输入即可。
5、远程登录成功之后,就可以在Putty里进行操作了。操作方式和在虚拟机(或服务器)上操作一样了,甚至还要方便。因为Putty里支持复制和粘贴,可以很便捷的操作。
最后需要注意一点,Putty的登录信息一般会保存在本机上,所以在使用公用电脑的时候,务必要注意清除登录信息。
b.winscp
WinSCP 是一个 Windows 环境下使用的 SSH(Source Shell)的开源图形化 SFTP(SSH File Transfer Protocol) 客户端。同时支持 SCP(Source Copy Protocol) 协议。它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件。
Installation package
下载安装包。然后到 翻译页面(英文) 选择下载简体中文(Simplified Chinese)插件,将 ZIP 包解压缩到 WinSCP 安装路径。具体情况请阅读 完全指导(英文)。此软件还可以结合 PuTTY,以方便用户的远程登录。下一步
即可。 使用 WinSCP 可以连接到一台提供 SFTP(SH File Transfer Protocol)或 SCP (Secure Copy Protocol)服务的 SSH(Secure Shell)服务器,通常是 UNIX 服务器。SFTP 包含于 SSH-2 包中,SCP 在 SSH-1 包中。两种协议都能运行在以后的 SSH 版本之上。WinSCP 同时支持 SSH-1
和 SSH-2
。 但 WinSCP 不支持编码选择,也就是说,你在 Windows 下使用 WinSCP 连接一个 Linux 机器,因为 Linux 和 Windows 的默认编码不同,因此是无法访问上面的中文文件或者文件夹的(将看到乱码)。一种解决方法就是在打开 WinSCP 时登录中的 Advanced Options–Environment
中将 UTF-8 encoding for filenames
设为 on
。
WinSCP 有两种界面可供您选择。
可以在 安装 时选择喜欢的界面,也可以以后改变 设置。
如果您是第一次使用 WinSCP,建议选择 Windows Explorer 界面,因为 Windows 用户比较熟悉这个界面。当然,如果您习惯 Norton Commander 风格,就选择 Norton Commander
界面,它注重于方便的键盘操作,你完全可以脱离鼠标,更快地进行操作。
利⽤SSH的ssh-keygen命令⽣成密码,并将密钥加⼊授权。
- cd ~/.ssh/
- ssh-keygen -t rsa
- cat ./id_rsa.pub >> ./authorized_keys
这样在登录hadoop集群时就可以省略输⼊密码的过程了。 这时使⽤命令 ssh localhost 就可以不需要输⼊密码登录服务器了。
4.安装JDK
首先下载所需要的jdk安装包,此处我将已经下载好的jdk与Hadoop安装包提供给大家。
下载好所需要的安装包后即可开始安装。
也可到Oracle官网下载该jdk:Oracle | Integrated Cloud Applications and Platform Services
Java SE - Downloads | Oracle Technology Network | Oracle
选择下载Oracle JDK后下载JDK Download。推荐下载Java SE 8版本。
因为要在Ubuntu中安装JDK,所以在具体的下载⻚⾯中选择对应的下载链接。
推荐下载压缩包的版本,这样就可以通过解压缩就直接使⽤了,很⽅便。
使⽤命令:
wget https://download.oracle.com/otn/java/jdk/8u291-
b10/d7fc238d0cbf4b0dac67be84580cfb4b/jdk-8u291-linux-x64.tar.gz?
AuthParam=1622859984_6b467f8e8daea9cfe332d4853d355d15
可以直接在虚拟机中下载。
如果是在宿主机中下载的JDK,要使⽤scp这个命令将下载好的JDK软件输输到虚拟机中去。
熟悉Linux的相关命令:
scp jdk-8u291-linux-x64.tar.gz hadoop@10.24.139.54:/home/hadoop/
注意要使⽤虚拟的⽤户进⾏链接。
也可以使用winscp远程上传至虚拟机。
将JDK安装到/usr/lib/jvm⽬录中
- cd /usr/lib
- sudo mkdir jvm
- cd ~
- sudo cp jdk-8u291-linux-x64.tar.gz /usr/lib/jvm/
- cd /usr/lib/jvm/
- ls
- sudo tar -zxvf jdk-8u291-linux-x64.tar.gz
- sudo mv jdk1.8.0_291/ jdk1.8
输入命令时可以使用tab键补全命令,不必一个一个字母敲。
将jdk配置到环境变量中去。
vim .bashrc
将jdk的内容配置在该⽂件的最后⼀⾏.
- # config the jdk1.8
- export JAVA_HOME=/usr/lib/jvm/jdk1.8
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
- export PATH=${JAVA_HOME}/bin:$PATH
source .bashrc
让配置⽂件⽣效。
java -version
检查jdk安装的情况。
- hadoop@hadoop:~$ java -version
- java version "1.8.0_291"
- Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
- Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)
注意在使用putty时采用shift+insert键进行粘贴。
5.安装Hadoop
先下载Hadoop,我在上面的资料中已经放入了所使用的安装包,当然也可以去阿帕奇的官网下载。
Welcome to The Apache Software Foundation!
直接移动到⽹站的最下⾯的部分,APACHE PROJECT LIST在这其中选择Hadoop。
点击Hadoop进⼊到Hadoop⼦项⽬中。
点击Download按钮后,进⼊下载⻚⾯
点击Binary download下的连接可以进⾏下载。
如果虚拟机可以连接上⽹络,也可以使⽤wget命令进⾏下载。这样就可以直接将Hadoop的压 缩包下载到虚拟机上,减少其他的上传等操作。
wget https://mirrors.bfsu.edu.cn/apache/hadoop/common/hadoop-3.2.2/hadoop-3.2.2.tar.gz
在宿主机中下载完成后, 还需要使⽤scp使⽤,或者是WinSCP等相关的软件将hadoop软件包上传到虚拟机中去.
scp hadoop-3.2.2.tar.gz hadoop@10.24.139.54:/home/hadoop/
上传完成后可以在虚拟机中查找,上传结果。
同样还可以使用winscp进行上传。
安装Hadoop,⾸先将Hadoop复制到/usr/local/⽬录下
sudo cp hadoop-3.2.2.tar.gz /usr/local/
- cd /usr/local/
- sudo tar -zxvf hadoop-3.2.2.tar.gz
然后执⾏下列命令,查看解压结果,并将原始包删除。
接着可以使⽤命令 sudo mv hadoop-3.2.2/ hadoop/ 来修改解压后的hadoop⽬录。
如果hadoop⽬录的⽤户及⽤户组不是hadoop时,需要进⾏权限的修改。
sudo chown -R hadoop ./hadoop
在/usr/local/hadoop这个⽬录中,可以查看bin⼦⽬录下的命令:
ls bin
运⾏命令 bin/hadoop version 可以查看hadoop安装后的情况
执⾏本地运⾏的案例:Grep实例
- pwd #/usr/local/hadoop ⽬录下执⾏以下的命令
- sudo mkdir input
- cp ./etc/hadoop/*.xml ./input/
- ./bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoopmapreduce-examples-3.2.2.jar grep ./input/ ./output 'dfs[a-z.]+'
- cat ./output/*
6.环境测试及小案例
注意如何检查安装的情况:
- 1. cat /etc/netplan/00-installer-config.yaml
- 2. ssh localhost
- 3. java -version
- 4. cd /usr/local/hadoop
- bin/hadoop version
- 5. bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduceexamples-3.2.2.jar grep ./input ./output 'dfs[a-z.]+'
- rm -rf output/
- 再次执⾏上⾯的命令后
- cat ./output/*
7.伪分布式的Hadoop应用
1.⾸先进⼊到⽬录中:/usr/local/hadoop/etc/hadoop
cd /usr/local/hadoop/etc/hadoop
2.到这个⽬录中就是要修改两个⽂件 core-site.xml。修改的命令是:
vim core-site.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <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>
hdfs-site.xml。修改的命令是:
vim hdfs-site.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <!-- Put site-specific property overrides in this file. -->
- <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>
接下来进⼊到hadoop的安装⽬录。 cd /usr/local/hadoop
1)Hadoop初始化
./bin/hdfs namenode -format
- WARNING: /usr/local/hadoop/logs does not exist. Creating.
- 2021-06-19 07:35:23,020 INFO namenode.NameNode: STARTUP_MSG:
- /************************************************************
- STARTUP_MSG: Starting NameNode
- STARTUP_MSG: host = hadoop/127.0.1.1
- STARTUP_MSG: args = [-format]
- STARTUP_MSG: version = 3.2.2
- ......
看到上⾯的信息,就完成了初始化的⼯作。
2)启动HDFS
cd /usr/local/hadoop
./sbin/start-dfs.sh
如果运⾏的期间出错了,⽐如说没有发现JAVA_HOME等提示,则需要在 etc/hadoop/hadoop-env.sh中配置JAVA_HOME的内容。
- cd /usr/local/hadoop/etc/hadoop
-
- vim hadoop-env.sh
在此⽂件的最下⾯添加
export JAVA_HOME=/usr/lib/jvm/jdk1.8
保存后退出,再次执⾏启动HDFS的命令。
- hadoop@hadoop:/usr/local/hadoop$ ./sbin/start-dfs.sh
- Starting namenodes on [localhost]
- Starting datanodes
- Starting secondary namenodes [hadoop]
当看到以上信息是就是hdfs启动成功了。
也可以输入jps来再次检查启动情况。
- hadoop@hadoop:/usr/local/hadoop$ jps
- 5415 Jps
- 5226 SecondaryNameNode
- 4811 NameNode
- 4975 DataNode
当启动成功后,就可以通过浏览器访问本地hadoop的Web⻚⾯了(http://localhost:9870,这 其中的localhost可以使⽤具体的IP地址来替换,⽐如我的是192.168.1.8,因为这是桥接模式下的虚拟机地址)。
3)样例执行
在HDFS中创建hadoop⽤户的⽤户⽬录
- cd /usr/local/hadoop/
- ./bin/hdfs dfs -mkdir -p /user/hadoop
在⽤户hadoop⽬录下(/user/hadoop)再创建⼀个input⽬录
./bin/hdfs dfs -mkdir input
然后,再将/usr/local/hadoop/etc/hadoop/⽬录下的所有⽂件(.xml)“上传”到分布式系统 HDFS中的/user/hadoop/input/⽬录下。
./bin/hdfs dfs -put ./etc/hadoop/*.xml input
这时可以通过Web去查看新创建的⽬录以及刚刚上传的⽂件都在/user/hadoop/input/⽬录下了。
执⾏样例程序Grep:
./bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.2.jar grep input output 'dfs[a-z.]+'
- hadoop@hadoop:/usr/local/hadoop$
- ./bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.2.jar grep input output 'dfs[a-z.]+'
输出以下信息即为正确:
./bin/hdfs dfs -cat output/*
输出以下信息:
- hadoop@hadoop:/usr/local/hadoop$ ./bin/hdfs dfs -cat output/*
- 1 dfsadmin
- 1 dfs.replication
- 1 dfs.namenode.name.dir
- 1 dfs.datanode.data.dir
在web端检查:
input中:
output中:
./bin/hdfs dfs -rm -r output
- hadoop@hadoop:/usr/local/hadoop$ ./bin/hdfs dfs -rm -r output
- Deleted output
如何停⽌hdfs:
- cd /usr/local/hadoop
-
- ./sbin/stop-dfs.sh
- hadoop@hadoop:/usr/local/hadoop$ ./sbin/stop-dfs.sh
- Stopping namenodes on [localhost]
- Stopping datanodes
- Stopping secondary namenodes [hadoop]
- hadoop@hadoop:/usr/local/hadoop$ ^C
此时Web⻚⾯就没有可显示的内容了。
常用Linux命令:
- cd 切换⽬录
- ls 查看⽂件与⽬录
- mkdir 新建⽬录
- rmdir 删除⽬录
- cp 复制⽂件或⽬录
- mv 移动⽂件与⽬录,或可⽤于更改名称
- rm 删除⽂件或⽬录(必须是空的⽬录)
- cat 查看⽂件内容
- tac 反向查看⽂件内容
- more ⼀⻚⼀⻚翻动查看
- head 取出前⾯⼏⾏
- tail 取出后⾯⼏⾏touch 修改⽂件时间或创建新⽂件
- chown 修改⽂件所有者权限
- find ⽂件查找
- tar 压缩命令
- grep 查找字符串
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。