用VMWare搭建Hadoop集群

背景:因为涉及到 Flink 的学习,想在本机装个测试环境。这里记录下用 VMWare 搭建 hadoop 集群的坑。java

安装 VMware

若是是重装的状况要注意:尽可能把 VMware 清理干净再安装,不然就会出现没法正常使用VMware的状况。node

安装操做系统

这里是直接用 iso 文件安装。可参考:https://blog.csdn.net/u010780613/article/details/65439856linux

安装 JDK

  • 经过 http-server 将 jdk 安装包上传到 /root/apps/ 文件夹下面, 解压安装包:
wget http://192.168.XXX.X:8080/jdk.tar.gz
tar -zxvf /root/apps/jdk-8u181-linux-x64.tar.gz
  • 配置环境变量,vim /etc/profile,在文件行尾加入配置后保存退出:
export JAVA_HOME=/root/apps/jdk1.8.0_181
export PATH=$PATH:$JAVA_HOME/bin
  • 从新加载profile使配置生效
source /etc/profile
  • 环境变量配置完成,测试环境变量是否生效
echo $JAVA_HOME 
java -version 输出Java信息就是配置好啦

安装 Hadoop

  • 经过 http-server 将 jdk 安装包上传到 /root/apps/ 文件夹下面, 解压安装包:
wget http://192.168.XXX.X:8080/hadoop.tar.gz
tar -zxvf /root/apps/hadoop.tar.gz

Linux 配置

  • 配置主节点
$vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=node1

$source /etc/sysconfig/network
  • 修改/etc/hosts
192.168.70.130  node1
192.168.70.131  node2
192.168.70.132  node3
  • 给虚拟机配置密钥
如下命令会生成本身的公钥和私钥,生成的公私钥将自动存放在/root/.ssh目录下。
$ ssh-keygen
把生成的公钥copy到远程机器上,此时在远程主机的/root/.ssh/authorized_keys文件中保存了公钥,在known_hosts中保存了已知主机信息,当再次访问的时候就不须要输入密码了:
ssh-copy-id root@192.168.70.130
经过此命令远程链接,检验是否能够不需密码链接:
$ ssh 192.168.70.130
  • VMWare 虚拟机=》管理=》克隆出另外的两个机器
  • 在主节点机器上/root/apps/hadoop-2.7.3/sbin目录下,执行如下命令来格式化namenode:
./hadoop namenode -format
  • 启动 Hadoop,在/root/apps/hadoop-2.7.3/sbin 目录下启动服务,以后打开网页输入192.168.70.130:50070 能够看到 hadoop 集群文件管理界面:
start-all.sh
  • 关闭hadoop,在/root/apps/hadoop-2.7.3/sbin目录下执行如下命令关闭服务:
$stop-all.sh

以上是搭建Hadoop集群完成作的总结。vim