赞
踩
电脑:windows10
软件:VMWare Workstation 16
CentOS-6.5-x86_64-bin-DVD1.iso文件;
主要内容:
找到“本地磁盘(E:)”目录并进入该目录,如下所示:
点击“VMware-workstation-full-16.0.0-16894299.exe”安装。
单击“下一步”。
(为了方便管理,我开辟了一个新的磁盘分区专门来放虚拟机和安装在虚拟机上的系统。比如我电脑中VMware的安装位置就是E:\VMware\ 。注:虚拟机最好安装在固态硬盘上。)
安装大致会经历一下几个过程:
我安装的过程中弹出了以下窗口,文件复制来源需要自己选择,根据提示找到对应的文件路径就可以。(如果填好之后点击“确定”没反应的话,要确认对应文件是否在对应位置。)
安装完成后的第一次启动会需要许可证密钥。可以百度搜索有效的许可证密钥。
拷贝粘贴注册码。输入注册码。点击完成,VMware安装过程结束。
打开VMWare Workstaion 10
点击文件->新建虚拟机
选择典型(推荐)(T)选项,点击“下一步(N)>”
选择“安装程序光盘映像文件(iso)(M)”,选择指定的CentOS系统的.iso文件,点击“下一步(N)>”
填写下面的信息,点击“下一步(N)>”
全名(F):hfut,用户名(U):hfut,密码§:hfut,确认©:hfut
虚拟机名称(V):HadoopMaster,选择安装位置,点击“下一步(N)>”
这里的磁盘大小不要直接使用默认值,调大为30.0
其它的选项使用默认值,点击“下一步(N)>”
自定义硬件内存调到4G。
直接等待安装完成,系统自动重启
输入密码hfut登录进系统
至此,CentOS系统安装完毕。
测试自己的电脑硬件是否支持系统的安装
运行software-sys/securable.exe软件。
点击下图所示的“克隆”选项
点击“下一步(N)”看到如下界面
使用默认选项,点击“下一步(N)”,选择“创建完整克隆(F)”,点击“下一步(N)”,如下图所示:
将虚拟机重命名为HadoopSlave,选择一个存储位置,点击“完成”
再次克隆出一个HadoopSlave2,点击“关闭”按钮后发现,“HadoopSlave”和“HadoopSlave”虚拟机已经在左侧的列表栏中。
使用FileZilla Client工具
(已经安装完成,具体过程不再赘述)
输入已经安装的CentOS的主机名和用户名,弹出输入密码的对话框。
输入密码hfut,回车,会看到下面的对话框,表示连接成功
下图左侧是Windows本机目录,右侧是Linux目录,拖拽文件可实现文件传输。
注: 查看Linux系统的IP地址
点击上图的“Connection Information”即可看到Linux系统的IP地址
另外,打开Linux系统的终端(Terminal),使用ifconfig命令也可以查看Linux系统的IP
打开VMware Workstation 10
打开之前已经安装好的虚拟机:点击“开启此虚拟机”,分别打开HadoopMaster和HadoopSlave
以下操作步骤需要在HadoopMaster和HadoopSlave节点上分别完整操作,都使用root用户,从当前用户切换到root用户的命令如下:
[hfut@localhost ~]$ su root
输入密码:hfut
本节所有的命令操作都在终端环境,打开终端的过程如下图的Applications->System Tools->Terminal菜单,或使用鼠标右键菜单的“Open in Terminal”
将完整的软件包上传到“/home/hfut/resources/software”。
(1)配置自动时钟同步
该项同时需要在HadoopSlave节点配置。
使用Linux命令配置
[root@localhost hfut]# crontab -e
键入下面的一行代码,输入i,进入插入模式(星号之间和前后都有空格)
0 1 * * * /usr/sbin/ntpdate cn.pool.ntp.org
(2)修改时区
[root@localhost hfut]# vi /etc/sysconfig/clock
输入如下内容:
ZONE=“Asia/Shanghai”
连接到上海时区文件
[root@localhost hfut]# rm /etc/localtime
[root@localhost hfut]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
[root@localhost hfut]# reboot
(3)手动同步时间
直接在Terminal运行下面的命令:
[root@localhost hfut]# /usr/sbin/ntpdate cn.pool.ntp.org
(1)HadoopMaster节点
[root@localhost hfut]# vi /etc/sysconfig/network
配置信息如下,将HadoopMaster节点的主机名改为master,即下面代码的第2行所示。
NETWORKING=yes
HOSTNAME=master
确认修改生效命令
[root@localhost hfut]# hostname master
检测主机名是否修改成功命令如下,在操作之前需要关闭当前终端,重新打开一个终端:
[root@localhost hfut]# hostname
执行完命令,会看到下图的打印输出:
(2)HadoopSlave节点
使用vi编辑主机名。
[root@localhost hfut]# vi /etc/sysconfig/network
配置信息如下,将HadoopMaster节点的主机名改为slave,即下面代码的第2行所示。
NETWORKING=yes
HOSTNAME=slave
确认修改生效命令
[root@localhost hfut]# hostname slave
检测主机名是否修改成功命令如下,在操作之前需要关闭当前终端,重新打开一个终端:
[root@localhost hfut]# hostname
执行完命令,会看到下图的打印输出:
在终端执行下面的命令:
[hfut@master ~]$ ifconfig
看到下面的打印输出
存在内网IP、广播地址、子网掩码,该节点不需要配置网络。
该项也需要在HadoopSlave节点配置
在终端执行下面的命令:
[hfut@master ~]$ setup
会出现下图中的内容
选择“Yes”
该项也需要在HadoopSlave节点配置
需要在root用户下(使用su命令),编辑主机名列表的命令:
[root@master hfut]# vi /etc/hosts
将下面两行添加到/etc/hosts文件中:
192.168.133.132 master
192.168.133.134 slave
192.168.133.129 slave2
查看master的IP地址使用下面的命令
[root@master hfut]# ifconfig
Master节点的IP是下图中红线标注的内容。
验证是否配置成功:
[root@master hfut]# ping master
[root@master hfut]# ping slave
[root@master hfut]# ping slave2
该项也需要在HadoopSlave节点配置
将JDK文件解压,放在/usr/java目录下
[root@master hfut]# cd /home/hfut/resources/software/jdk
[root@master jdk]# mkdir /usr/java
[root@master jdk]# cp jdk-7u71-linux-x64.gz /usr/java
[root@master jdk]# cd /usr/java
[root@master java]# tar -zxvf jdk-7u71-linux-x64.gz
[root@master java]# rm jdk-7u71-linux-x64.gz
使用gedit配置环境变量
[root@master hfut]# su hfut
[hfut@master java]$ gedit /home/hfut/.bash_profile
复制粘贴以下内容添加到.bash_profile
export JAVA_HOME=/usr/java/jdk1.7.0_71/
export PATH=$JAVA_HOME/bin:$PATH
使改动生效命令
[hfut@mater java]$ source /home/hfut/.bash_profile
测试配置:
[hfut@mater java]$ java -version
出现下图的信息:
(1)SSH免密匙登录配置
HadoopMaster节点
在终端生成密匙,命令如下(一路点击回车生成密匙)
[hfut@master ~]$ ssh-keygen -t rsa
生成的密匙在.ssh目录下,如下图所示:
[hfut@master ~]$ cd .ssh
[hfut@master .ssh]$ ls -l
将公钥追加到授权列表
[hfut@master .ssh]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
修改authorized_keys文件的权限,命令如下:
[hfut@master .ssh]$ chmod 600 ~/.ssh/authorized_keys
HadoopMaster节点
将authorized_keys文件复制到slave以及slave2节点,命令如下:
[hfut@master .ssh]$ scp ~/.ssh/authorized_keys hfut@slave:~/.ssh
[hfut@master .ssh]$ scp ~/.ssh/authorized_keys hfut@slave2:~/.ssh
修改HadoopMaster节点的SSH配置
[hfut@master .ssh]$ su root
[root@master .ssh]# vi /etc/ssh/sshd_config
设置PermitEmptyPasswords配置为
PermitEmptyPasswords yes
使配置生效
[root@master .ssh]# service sshd restart
使用 ssh-add指令将私钥加进来,解决“Agent admitted failure to sign using the key.”错误问题。
[root@master .ssh]# exit
[hfut@master .ssh]$ ssh-add ~/.ssh/id_rsa
修改HadoopSlave节点的SSHD配置
[hfut@slave ~]$ su root
[root@slave .ssh]# vi /etc/ssh/sshd_config
设置PermitEmptyPasswords配置为
PermitEmptyPasswords yes
使配置生效
[root@slave .ssh]# service sshd restart
验证免密匙登录
在HadoopMaster机器上执行下面的命令:
[hfut@master ~]$ ssh slave
关闭窗口再执行下面的命令:
[hfut@master ~]$ ssh slave2
如果出现下图的内容表示免密匙配置成功:
(注:slave2可以在配置好slave之后直接从slave克隆然后修改slave2的hostname、配置hosts列表、将authorized_keys文件复制到slave2节点以及在master节点配置slaves文件等等操作)
复制并解压Hadoop软件包,命令如下:
[hfut@master ~]$ cp ~/resources/software/hadoop/apache/hadoop-2.5.2.tar.gz ~/
[hfut@master ~]$ tar -zxvf hadoop-2.5.2.tar.gz
[hfut@master ~]$ rm hadoop-2.5.2.tar.gz
[hfut@master ~]$ cd hadoop-2.5.2
环境变量文件中,只需要配置JDK的路径。
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/hadoop-env.sh
在文件靠前的部分找到下面的一行代码:
export JAVA_HOME=${JAVA_HOME}
将这行代码修改为下面的代码:
export JAVA_HOME=/usr/java/jdk1.7.0_71/
然后保存文件。
环境变量文件中,只需要配置JDK的路径。
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/yarn-env.sh
在文件靠前的部分找到下面的一行代码:
# export JAVA_HOME=/home/y/libexec/jdk1.6.0/
将这行代码修改为下面的代码(将#号也去掉):
export JAVA_HOME=/usr/java/jdk1.7.0_71/
然后保存文件。
使用gedit编辑:
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/core-site.xml
替换core-site.xml中的内容。
使用gedit编辑:
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/hdfs-site.xml
替换hdfs-site.xml中的内容。
使用gedit编辑:
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/yarn-site.xml
替换yarn-site.xml中的内容。
复制mapred-site.xml-template.xml文件:
[hfut@master Hadoop-2.5.2]$ cp ~/hadoop-2.5.2/etc/hadoop/mapred-site.xml.template ~/hadoop-2.5.2/etc/hadoop/mapred-site.xml
使用gedit编辑:
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/mapred-site.xml
替换mapred-site.xml中的内容。
使用gedit编辑:
[hfut@master Hadoop-2.5.2]$ gedit ~/hadoop-2.5.2/etc/hadoop/slaves
用下面的代码替换slaves中的内容:
slave
slave2
使用下面的命令将已经配置完成的Hadoop复制到从节点HadoopSlave上:
[hfut@master Hadoop-2.5.2]$ cd
[hfut@master Hadoop-2.5.2]$ scp -r hadoop-2.5.2/ hfut@slave:~/
[hfut@master Hadoop-2.5.2]$ scp -r hadoop-2.5.2/ hfut@slave2:~/
该节的配置需要同时在两个节点(HadoopMaster和HadoopSlave)上进行操作,操作命令如下:
[hfut@master Hadoop-2.5.2]$ cd
[hfut@master ~]$ gedit ~/.bash_profile
将下面的代码追加到.bash_profile末尾:
#HADOOP
export HADOOP_HOME=/home/hfut/hadoop-2.5.2
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
然后执行命令:
[hfut@master ~]$ source ~/.bash_profile
该节的配置需要同时在两个节点(HadoopMaster和HadoopSlave)上进行操作,操作命令如下:
在hfut的用户主目录下,创建数据目录,命令如下:
[hfut@master ~]$ mkdir /home/hfut/hadoopdata
(1)格式化文件系统
格式化命令如下,该操作需要在HadoopMaster节点上执行:
[hfut@master ~]$ hdfs namenode -format
(2)启动Hadoop
使用start-all.sh启动Hadoop集群,首先进入Hadoop安装主目录,然后执行启动命令:
[hfut@master ~]$ cd ~/hadoop-2.5.2
[hfut@master ~]$ sbin/start-all.sh
执行命令后,提示输入yes/no时,输入yes。
(3)查看进程是否启动
在HadoopMaster的终端执行jps命令,在打印结果中会看到4个进程,分别是ResourceManager、Jps、NameNode和SecondaryNameNode,如下图所示。如果出现这4个进程表示主节点进程启动成功。
在HadoopSlave的终端执行jps命令,在打印结果中会看到3个进程,分别是Nodemanager、Datanode和Jps,如下图所示。如果出现这3个进程表示主节点进程启动成功。
(4)Web UI查看集群是否成功启动
在HadoopMaster上启动Firefox浏览器,在浏览器地址栏中输入http://master:50070/,检查namenode和datanode是否正常。UI页面如下图所示。
在HadoopMaster上启动Firefox浏览器,在浏览器地址栏中输入http://master:18088/,检查Yarn是否正常。页面如下图所示。
(5)运行PI实例检查Hadoop集群是否搭建成功
进入Hadoop安装主目录,执行下面的命令:
[hfut@master ~]$ cd ~/hadoop-2.5.2/share/hadoop/mapreduce/
[hfut@master mapreduce]$ hadoop jar ~/hadoop-2.5.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.2.jar pi 10 10
会看到如下的执行结果:
最后输出:
Estimated value of Pi is 3.20000000000000000000
以上的3个验证步骤都没有问题,说明集群正常启动。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。