(一)Linux 虚拟机的安装
相信大多数踏上Hadoop这条不归路的人,都是习惯了使用Windows的用户。基于此,博主将自己的经验分享出来,以飨读者,欢迎朋友们评论和关注。
1,VMware 和 Ubuntu的下载
我自己的机子配置: Window10.
附上下载链接如下,
VMware: https://www.vmware.com/
Ubuntu : https://www.ubuntu.com/download
博主下载的是2018年最新的版本。
2,安装
安装过程网上有太多教程,这里附上安装链接,不做赘述。
https://blog.csdn.net/iqmae68024/article/details/54772918
安装完成后,就可以进入Linux系统了,为了接下来很多功能和命令的使用,所以博主建议也安装VMware,安装教程见链接: https://blog.csdn.net/tjcwt2011/article/details/72638977
(二)Linux虚拟机上安装Hadoop
1,创建Hadoop用户
之所以选择创建新用户,一方面是可以有一个相对独立的环境去折腾,另一方面也比较好管理hadoop相关的文件,避免了操作时的手滑误事。
sudo useradd -m hadoop -s /bin/bash //创建名为hadoop的用户,并将它存入到bash中 sudo passwd hadoop //设置密码 sudo adduser hadoop sudo // 赋予hadoop管理员权限
2,SSH的安装和配置
因为hadoop是集群化的文件管理系统,不安装ssh的话各个机子彼此之间就无法访问(当然对于只是装个虚拟机玩一下就另当别论)。SSH 为 Secure Shell 的缩写,是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。因为Ubuntu 默认已安装了 SSH client,所以这里我们只需要安装server就好啦。
1 sudo apt-get install openssh-server //用apt-get命令为虚拟机安装ssh服务器 2 3 ssh localhost //用ssh的方式登录本机,登录时会提示输入密码,就输入之前创建的hadoop用户密码就好了
一般来说ssh的安装和登录到这里就结束了,但是这样的话以后每次的登录都要重复输入密码,为了方便,可以生成ssh安全秘钥就不需每次输入密码了。
exit //先退出刚才的 ssh 登录状态 cd ~/.ssh/ //登录一次之后都会有。ssj目录。如果没有的话,执行一次ssh localhost ssh-keygen -t rsa //会有提示,都按回车就可以 cat ./id_rsa.pub >> ./authorized_keys //加入授权
再试一次ssh登录,就不需要重复输入密码了,是不是方便了很多。
3,安装Java以及环境变量的配置
hadoop本身是由Java语言开发的,所以为了后面的使用首先要安装Java并配置好环境变量。新版的Ubuntu系统是不再支持JDK8版本以下的java版本的,所以为了安装方便,博主选择安装openjdk8.
JRE(Java Runtime Environment,Java运行环境),是运行 Java 所需的环境。JDK(Java Development Kit,Java软件开发工具包)即包括 JRE,还包括开发 Java 程序所需的工具和类库。
sudo apt-get install openjdk-8-jre openjdk-8-jdk
接下来进行环境变量的配置,先找到安装时候的路径:
dpkg: “dpkg ”是“Debian Packager ”的简写。为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自“Debian”的“Linux ”发行版都使用 “dpkg”,例如 “Ubuntu”、“Knoppix ”等。
1 dpkg -L openjdk-8-jdk | grep '/bin' // 正则匹配查找路径
第一行的内容就是我们要找的,拷贝下来该路径/usr/lib/jvm/java-8-openjdk-amd64。配置java环境变量:
1 gedit ~/.bashrc //用gedit打开bashrc文件,设置环境变量,如果还没有安装gedit的话,可以用sudo apt-get install gedit 进行安装
打开后在开头加上export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64。
之后进行保存,然后重新运行一下.bashrc文件使之生效。
1 source ~/.bashrc
2 echo $JAVA_HOME //输出一下JAVA_HOME的值,看看全局变量是否已经生效
好了,到这里java的环境变量已经完成。
灌了两个小时的水,博主要出去溜达了,后面的配置和java程序的分享会继续更新。手写不易,转发或引用请注明出处。
我是房陵笑笑生,一个集才华和秃头于一身的程序员。