您的位置:首页 > 运维架构 > Linux

VMware10+CentOS6.8搭建Hadoop集群

2016-08-12 16:35 387 查看
1.首先安装VMware10和CentOS6.8。 

其中 CentOS6.8,我下载的是CentOS-6.8-x86_64-bin-DVD1to2。 
http://centos.ustc.edu.cn/centos/6.8/isos/x86_64/CentOS-6.8-x86_64-bin-DVD1to2.torrent

2.安装vmtools,参考http://jingyan.baidu.com/article/6dad5075ca4d6da123e36e34.html

3.下载JDK包,拖到CentOS6.8桌面上,解压到soft下面

第一步:配置环境变量 

sudo gedit /etc/profile

export JAVA_HOME=/home/xutong/soft/jdk1.8.0_60 

export JRE_HOME=/home/xutong/soft/jdk1.8.0_60/jre 

export CLASSPATH=.:JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jar 

export PATH=JAVAHOME/bin:JRE_HOME/bin:$PATH

第二步:执行如下命令 

//选择我们的JAVA作为系统默认的JAVA 

sudo update-alternatives –install /usr/bin/java java /home/xutong/soft/jdk1.8.0_60/bin/java 300 

sudo update-alternatives –install /usr/bin/javac javac /home/xutong/soft/jdk1.8.0_60/bin/javac 300

//更新设定 

sudo update-alternatives –config java

//更新系统配置文件 

source /etc/profile 

//测试JAVA是否配置成功 

java -version

4.下载hadoop-2.7.1.tar安装包,拖到CentOS6.8桌面上, 

第一步:解压 

tar -zxvf hadoop-2.7.1.tar.gz -C /home/Hadoop/ 

(说明:也可以手动拷贝过去,通过鼠标右键解压缩到soft文件夹下) 

第二步:设置环境变量 

sudo gedit /etc/profile 

第三步:添加如下内容 

export HADOOP_HOME=/home/Hadoop/hadoop-2.7.1 

export PATH=PATH:HADOOP_HOME/bin:$HADOOP_HOME/sbin 

第四步:进入Hadoop路径 

cd hadoop-2.7.1 

sudo gedit etc/hadoop/hadoop-env.sh 

第五步:添加如下内容 

export JAVA_HOME=/home/xutong/soft/jdk1.8.0_60

对hadoop进行设置 

core-site.xml的内容:

<configuration>
 

<property>
 

<name>fs.default.name</name>
 

<value>hdfs://master:9000</value> 

</property> 

<property> 

<name>Hadoop.tmp.dir</name>
 

<value>/tmp/hadoop-root</value> 

</property>

</configuration>

hdfs-site.xml

<configuration> 

<property>
 

<name>dfs.replication</name>
 

<value>3</value> 

</property>

</configuration>

mapred-site.xml

<configuration> 

<property>
 

<name>mapred.job.tracker</name>
 

<value>master:9001</value> 

</property>

</configuration>

slaves

slave1 

slave2


以上JDK和Hadoop已经安装成功

接下来

1. 

关掉SELINUX:vi /etc/selinux/config ,设置SELINUX=disabled,保存退出。 

关闭防火墙:/sbin/service iptables stop;chkconfig –level 35 iptables off


 

右击右上角电脑图标,之后点击连接信息,可以看到这个CentOS的网络连接状况

修改IP地址为静态地址:gedit /etc/sysconfig/network-scripts/ifcfg-eth0, 


 

把连接信息里的内容按照上图所示,都填上去

修改主机名称: gedit /etc/sysconfig/network,将其内容改为如下图所示: 



修改hosts映射:gedit /etc/hosts,将其内容改为如下图所示。我们在这里就加入了slave1和slave2的映射项,以简化后面的步骤。 



执行:service network restart 以重启网络。

2. 

使用VMWare中clone功能,复制出另外两台虚拟机,分别命名为slave1和slave2。因为克隆出的虚拟机网卡地址已经改变,所以要分别在复制出的两台虚拟机中执行以下操作:

•执行:rm -f /etc/udev/rules.d/70-persistent-net.rules 

•执行:reboot 重启虚拟机 

•执行:gedit /etc/sysconfig/networking/devices/ifcfg-eth0 

按照连接信息里的内容,重新修改里面的内容

3. 

做SSH免密码登录

分别在三个系统中(普通用户)的终端执行:ssh-keygen -t rsa,一路回车会在当前用户下.ssh目录中生成两个文件一个是私钥文件,一个是公钥文件,我们复制公钥文件到当前目录并重命名为authorized_keys,分别把其他两个系统的公钥文件内容复制到authorized_keys文件中,其他两个系统也做此操作,最后每个系统的authorized_keys文件包含本系统的公钥内容以及其他两个系统公钥的内容,使用SSH命令进行测试,如下图: 



如果不成功, 

1. 

给hadoop用户增加sudo权限以及修改host

1)切换到root用户,su 输入密码

2)给sudoers增加写权限:chmod u+w /etc/sudoers

3)编译sudoers文件:vi /etc/sudoers
在root ALL=(ALL)  ALL下方增加hadoop ALL=(ALL)NOPASSWD:ALL


4)去掉sudoers文件的写权限:chmod u-w /etc/sudoers

2.还是不行的话,试下下面的

服务器配置

输入命令:gedit /etc/ssh/sshd_config


#禁用root账户登录,如果是用root用户登录请开启

PermitRootLogin yes


#是否让 sshd 去检查用户家目录或相关档案的权限数据,


#这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。


#例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入

StrictModes no


#是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。


#至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys


#有了证书登录了,就禁用密码登录吧,安全要紧

PasswordAuthentication no

重启ssh服务,输入命令:

/bin/systemctl start sshd.service

注意:修改sshd后,别忘了要覆盖掉别的机器上的sshd

最后 

1.在master节点格式化hdfs文件,进入 hadoop/bin文件夹中,开启终端,输入命令: 

hdfs namenode -format

2.开启Hadoop:进入hadoop/sbin文件夹,开启终端,输入命令:start-all.sh

3.输入http://master:50070,查看节点信息 



输入http://master:8088/查看 



参考博客: 
http://www.2cto.com/kf/201607/531568.html 
http://coolwyh.iteye.com/blog/2059258 
http://blog.csdn.net/dyllove98/article/details/9228673
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐