安装linux虚拟机和配置hadoop集群



从CentOS安装到Hadoop2.4.0完全分布式配置


1. 前提

1. 安装VMware

2. 安装centos64     

1. 网络配置

2. 正式安装

2. 配置Master

1. 连接网络 

2. 修改主机名

3. 创建工作组和用户

4. 安装JDKHadoop 

5. 配置hadoop

1. 

3. 安装配置slave

1. 另外安装slave

2. 克隆        

4. 设置SSH无密码登录

5. 启动Hadoop

1.前提

需要提前下载的有:

      1JDK-1.8.0   

      2hadoop-2.4.0   

      3putty   

以上资源,包括VMware、  CentOS镜像文件、相关配置文件都可以在我的网盘中下载到:禁用url……http://p a n . b a i d u .com/s/1jGhxyXC

   PS: 网盘中CentOSJDK都只适合32位的,64CentOS6.4自行找资源

64JDK可以点官网:

  http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

     1.1安装VMware

            VMware安装比较简单,网盘中有安装文件,遇到什么问题请百度之,此处不再罗嗦

     1.2安装centos6.4     

           1.2.1 网络配置

                打开VMware->编辑->虚拟网络编辑器  如图配置

      

      

1.2.2正式安装

Hadoop完全分布式集群至少须要两台虚拟机,考虑到内存占用量大的问题,此处推荐以下配置

 

内存

安装模式

IP地址

Master

1G

Minimal Desktop

192.168.224.100

Slave1

512M

Minimal

192.168.224.71

IP地址可以随意配置,只要在同一网段内就行。

step1:打开VMware->文件-> 新建虚拟机  选 “自定义(高级)”->下一步

 

step2:选稍后安装操作系统->选择linux系统、版本CentOS->名称、位置随意->处理器核数根据自己情况选->内存选择

      512M:只能安装命令行模式,322G内存可以同时运行3台虚拟机(也够呛了)

      1G可以安装多种带图形操作界面模式,322G内存可以同时运行2台虚拟机

             随后一直点确认就对了

       

step3:在创建好的虚拟机上右键-》设置虚拟机,点CD/DVD载入CentOS6.4映像文件,运行虚拟机

   

step4:运行虚拟机

       下面以1G安装为例(区别在于:安装界面稍有不同,512M需在安装完成后才能配置网络和主机名,1G在安装过程中可配置)

    因为是虚拟机,所以安装过程中提示的“是否检查磁盘”“是否格式化”之类的全部都选最省时的选项吧。

    到以下步骤时,点配置网络:地址如下图配置,DNS服务器地址按个人情况配置,     

 DNS服务器地址查看方法:

       开始-》运行-cmd-》输入命令 “ ipconfig -all ”   找到DNS地址填入下图

 

 

 

step 5 选择好安装模式,设置好用户名密码、根据提示完成安装。

step 6 root身份登录CentOS

 

 

2.配置Master

      2.1连接网络 

             如果在安装过程中已经配置好IP地址等,则打开终端,ping www.baidu.com  看一下是否能ping通。

             如果无法ping通,查看VMware相关的服务是否开启了。

     查看方法:控制面板-》管理工具-》服务   找到以“VMware”开头的服务,未开启则全部右键开启

             仍然无法ping通,则根据一下步骤重新配置一下:

      

             step1: 打开终端,输入 vi /etc/sysconfig/network-scripts/ifcfg-eth0     (新手提示:按[tab]可以自动填充路径的,在终端输入命令时多按[tab]可以减少输入错误)

                             主要确认以下配置:(物理地址HDDR不要乱改)

[html] view plaincopy

1. DEVICE=eth0                     

2. ONBOOT=yes                    

3. BOOTPROTO=static  

4. IPADDR=192.168.224.100      //ip地址  

5. NETMASK=255.255.255.0       //子网掩码  

6. GATEWAY=192.168.224.2       //网关  

7. DNS1=192.168.10.8           //DNS地址  

8. DNS2=192.168.11.8  


               step2:   输入: service network restart     重启网络服务

                                          ping  www.baidu.com           看一下能不能ping 

      2.2修改主机名

             vi /etc/sysconfig/network

             

[html] view plaincopy

1. NETWORKING=yes  

2. HOSTNAME=master  


 

             vi /etc/hosts        

              替换成以下内容

              

[html] view plaincopy

1. 192.168.224.100 master  

2. 192.168.224.71 slaver1  

 

 2.3创建工作组和用户

创建用户组:hadoop,然后在此用户组下创建hadoop用户。

[root@ master ~]# groupadd  hadoop

[root@ master ~]# useradd -g hadoop  -d /home/hadoop  hadoop

hadoop”是所创建的用户名, -d指明“ hadoop”用户的home目录是/home/hadoop

[root@ master ~]# passwd hadoop [给用户hadoop设置口令]

1). 在真实集群分布模式下,要求集群中所有节点使用相同的用户名,这是hadoop的基本要求。比如,可以使用“hadoop”作为所有节点上统一的用户名。

2). 并且要求在所有节点上安装的hadoop系统具有完全一致的目录结构。

         

     2.4安装JDKHadoop 

 

         step1:解压putty

         step2:运行cmd,把JDKHadoop安装文件传送到虚拟机中

                        具体操作:cd putty安装目录下,比如说我的安装路径为  G:\putty,则

          

[html] view plaincopy

1. C:\user\test>g:  

2. C:\user\test>cd putty  

3. C:\user\test>pscp [jdk所在位置]  hadoop@192.168.224.100:/home/hadoop/  

4. C:\user\test>pscp [hadoop所在位置]  hadoop@192.168.224.100:/home/hadoop/  

 

          step3:在root身份下安装JDK

                       cd  /home/hadoop/ 

                  rpm -ivh jdk-8u5-linux-i586.rpm

                     

                       JDK默认安装在/usr/java/目录下

 

          step4:配置环境变量(此处顺便把HADOOP一起配置了,虽然它还没安装)

vi  /etc/profile

在最后面添加以下内容

[html] view plaincopy

1. export JAVA_HOME=/usr/java/jdk1.8.0_05  

2. export JRE_HOME=/usr/java/jdk1.8.0_05/jre  

3. export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib  

4. export HADOOP_HOME=/home/hadoop/hadoop-2.4.0/  

5. export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin  

 

source /etc/profile  使配置生效

terminal中输入     

  java -version            看一下是否配置成功,如果配置成功会显示JAVA的版本号等信息。

 

      step5:安装hadoop

            

su hadoop  //hadoop身份登录

cd ~       

tar   -zxvf   hadoop-2.4.0.gzip.tar  ~/     //hadoop解压到/home/hadoop/目录下

   

 2.5配置hadoop

 

       cd  ~/hadoop-2.4.0/etc/hadoop/              修改以下文件内容:

hadoop-env.sh

[html] view plaincopy

1. #export JAVA_HOME=${JAVA_HOME}  

2. export JAVA_HOME=/usr/java/jdk1.8.0_05/  

 

 

core-site.xml

[html] view plaincopy

1. <?xml version="1.0" encoding="UTF-8"?>  

2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

3. <configuration>  

4. <property>  

5. <name>fs.defaultFS</name>  

6. <value>hdfs://192.168.224.100:9000/</value>  

7. </property>  

8. </configuration>  



hdfs-site.xml

[html] view plaincopy

1. <?xml version="1.0" encoding="UTF-8"?>  

2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

3. <configuration>  

4. <property>  

5. <name>dfs.namenode.name.dir</name>  

6. <value>/home/hadoop/hadoop-2.4.0/hdfs/name</value>  

7. </property>   

8. <property>  

9. <name>dfs.datanode.data.dir</name>  

10. <value>/home/hadoop/hadoop-2.4.0/hdfs/data</value>  

11. </property>  

12. </configuration>  



yarn-site.xml

[html] view plaincopy

1. <?xml version="1.0"?>  

2. <configuration>  

3. <property>  

4. <name>yarn.nodemanager.log-dirs</name>  

5. <value>/home/hadoop/hadoop-2.4.0/yarn/log</value>  

6. </property>  

7. </configuration>  


slaves

 

[html] view plaincopy

1. master  

2. slave1  

 

如果你比较懒,也可以下载上文提供的网盘中的文件,把它们发送到虚拟机中。方法参考2.4中的step2

如果要传送整个目录

lcd win中的目录

psftp -r 目录名 新目录名

关于psftp更多相关命令:http://blog.csdn.net/greenzb/article/details/4216128

 

3.安装配置slave

 

        有两种方法:1.克隆master,修改配置变成slave       2.另外安装一台slave

        克隆出来的slave配置与master一模一样,如果想要低配一点的slave,则要另外安装。

3.1另外安装slave

    为什么要另外安装这么麻烦?因为楼主的322G渣机开两台1G虚拟机时,想开个word写技术文档都得卡得想死啊…(内存都达98%了  T^T显卡过热蓝屏是家常便饭。)

    安装步骤与上面基本一致,配置时可以偷偷懒从master机里用scp命令     直接把hadoop文件夹等 复制过去(复制过去后注意文件拥有者是否与master中的一致)

     

3.2克隆        

 VMware中有克隆虚拟机的功能,选中要克隆的虚拟机master, 完整克隆一台slave1,完成后启动slave1     

step1 修改主机名:

 vi /etc/sysconfig/network

             

[html] view plaincopy

1. NETWORKING=yes  

2. HOSTNAME=master  

 

         

step2 修改网络配置:

执行:vim  /etc/udev/rules.d/70-persistent-net.rules    

          eth1改成eth0, 记下ATTR{address}

执行:vi /etc/sysconfig/networking/devices/ifcfg-eth0 

修改:IPADDR=192.168.224.71

修改:HWADDR= 上面记下的ATTRaddress}(或者在虚拟机设置中选中“网络适配器”-》“高级”  得到MAC地址)

执行: reboot      重启

 

重启后ping www.baidu.com  看一下是否能ping通,ping 不通说明网络没配置好

ping不通时:  vim  /etc/udev/rules.d/70-persistent-net.rules  看一下什么情况,如果多一行eth1   eth0  eth1都有的情况,把eth0那行删了,eth1改成eth0,再修改ifcfg-eth0把物理地址改成与上面配置中的eth0一致

 

   

4.设置SSH无密码登录

 

step1:打开两台虚拟机,登录到master中,执行如下命令:

 

ssh 

 

如果提示Bash :  ssh  command  not  found

yum install openssh-clients

安装openssh安装完成后换成hadoop身份登录执行如下命令:

  

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

scp ~/.ssh/id_dsa.pub slave1:~/.ssh/authorized_keys

 

中间可能需要输入密码 ,按提示输入即可。

然后记得修改文件权限

             修改 authorized_keys 权限为600

               chmod 600 /home/hadoop/.ssh/authorized_keys

 

现在分别执行如下命令

ssh localhost

ssh slave1

不需要再输入密码就对了。如果仍然不成功:tail /var/log/secure -n 20  查看登录日志

 

 

5.启动Hadoop

 

执行HDFS格式化命令:

 

hadoop namenode -format

 

master虚拟机中

sh   /hadoop/hadoop-2.4.0/sbin/start-all.sh 

 

jps    查看进程

应该有如下进程

 

 

ok,搞定!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值