java 虚拟机 hadoop 环境搭建 (本次搭建全过程)

vm 大家 centos  hadoop

第一步

安装 vm

安装 centos6

第二步

配置 centos6 host_name


vi /etc/sysconfig/network


用任一款你喜爱的编辑器打开该文件,里面有一行 


HOSTNAME=localhost.localdomain (如果是默认的话),修改 

localhost.localdomain 为你的主机名。

vi /etc/hosts

打开该文件,会有一行 127.0.0.1 localhost.localdomain localhost 


。其中 127.0.0.1 是本地环路地址, localhost.localdomain 是主机


名(hostname),也就是你待修改的。localhost 是主机名的别名(alias


),它会出现在console的提示符下。将第二项修改为你的主机名,第三

项可选。

将上面两个文件修改完后,并不能立刻生效。如果要立刻生效的话,可

以用 hostname your-hostname 作临时修改,它只是临时地修改主机名

,系统重启后会恢复原样的。但修改上面两个文件是永久的,重启系统

会得到新的主机名。

最后,重启后查看主机名 uname -n 。

更改 location,localdamain 为 自己的域名 比如 master , slave
第三步

配置 ssh 免密码登录

master  192.168.13.128

slave1  192.168.13.129

在3台主机上都执行以下操作,当前服务器放第一行

vi /ets/hosts

添加 三行

192.168.13.128 master
192.168.13.129 slave1
master 服务器

首先 三天机器都的先 生成 ssh(执行 ssh-keygen -t rsa )

然后 (依次执行下面 命令)

master -> slave1(master 服务器)

ssh-cody-id fyj@192.168.13.129 输入 yes

slave1 -> master(slave1 服务器)

ssh-cody-id fyj@192.168.13.128 输入 yes


第四步


安装 jdk


方法1 
下载 jdk8.xx.tar.gz

tar -xzvf jdk8.xx.tar.gz


配置环境

执行 source ~/.bashrc

java -version 查看是否安装 

方法 2 
yum list installed |grep java

yum -y remove java-1.7.0-openjdk*
yum -y remove tzdata-java.noarch


yum -y list java*
yum -y install java-1.7.0-openjdk*

yum -y install java-1.8.0-openjdk*

java -version

第五步

安装Hadoop

1 下载 hadoop 并解压

放在目录 /opt下面(tar -zxvf hadoop...)

新建 
cd hadoop...
mkdir tmp,mkdir dfs/data,mkdir dfs/name

2 配置相关信息 
hadoop-env.sh(文件都在/usr/hadoop/etc/hadoop中)
修改JAVA_HOME值(export JAVA_HOME=/usr/java)
配置文件:yarn-env.sh
修改JAVA_HOME值(export JAVA_HOME=/usr/java)

配置文件:slaves
将内容修改为:slave1
slave2 (有几个机器配置几个)

配置文件:core-site.xml


<configuration>
       <property>
                <name>fs.defaultFS</name>
                <value>hdfs://master:8020</value>
       </property>
       <property>
                <name>io.file.buffer.size</name>
                <value>131072</value>
        </property>
       <property>
               <name>hadoop.tmp.dir</name>
               <value>file:/usr/hadoop/tmp</value>
               <description>Abase for other temporary   


directories.</description>
       </property>
        <property>
               <name>hadoop.proxyuser.u0.hosts</name>
               <value>*</value>
       </property>
       <property>
               <name>hadoop.proxyuser.u0.groups</name>
               <value>*</value>
       </property>
</configuration>

配置文件:hdfs-site.xml

<configuration>
       <property>
                <name>dfs.namenode.secondary.http-


address</name>
               <value>master:9001</value>
       </property>
     <property>
             <name>dfs.namenode.name.dir</name>
             <value>file:/usr/hadoop/dfs/name</value>
       </property>
      <property>
              <name>dfs.datanode.data.dir</name>
              <value>file:/usr/hadoop/dfs/data</value>
       </property>
       <property>
               <name>dfs.replication</name>
               <value>3</value>
        </property>
        <property>
                 <name>dfs.webhdfs.enabled</name>
                  <value>true</value>
         </property>
</configuration>

配置文件:mapred-site.xml
<configuration>
          <property>                                            


                      
        <name>mapreduce.framework.name</name>
                <value>yarn</value>
           </property>
          <property>
                  <name>mapreduce.jobhistory.address</name>
                  <value>master:10020</value>
          </property>
          <property>
                


<name>mapreduce.jobhistory.webapp.address</name>
                <value>master:19888</value>
       </property>
</configuration>


配置文件:yarn-site.xml


<configuration>
       <property>
                <name>dfs.namenode.secondary.http-


address</name>
               <value>master:9001</value>
       </property>
     <property>
             <name>dfs.namenode.name.dir</name>
             <value>file:/usr/hadoop/dfs/name</value>
       </property>
      <property>
              <name>dfs.datanode.data.dir</name>
              <value>file:/usr/hadoop/dfs/data</value>
       </property>
       <property>
               <name>dfs.replication</name>
               <value>3</value>
        </property>
        <property>
                 <name>dfs.webhdfs.enabled</name>
                  <value>true</value>
         </property>
</configuration>
8)配置文件:mapred-site.xml
<configuration>
          <property>                                            


                      
        <name>mapreduce.framework.name</name>
                <value>yarn</value>
           </property>
          <property>
                  <name>mapreduce.jobhistory.address</name>
                  <value>master:10020</value>
          </property>
          <property>
                


<name>mapreduce.jobhistory.webapp.address</name>
                <value>master:19888</value>
       </property>
</configuration>
9)配置文件:yarn-site.xml
<configuration>
        <property>
               <name>yarn.nodemanager.aux-services</name>
               <value>mapreduce_shuffle</value>
        </property>
        <property>                                              


                  
<name>yarn.nodemanager.aux-


services.mapreduce.shuffle.class</name>
               
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
        </property>
        <property>
               <name>yarn.resourcemanager.address</name>
               <value>master:8032</value>
       </property>
       <property>
               


<name>yarn.resourcemanager.scheduler.address</name>
               <value>master:8030</value>
       </property>
       <property>
            <name>yarn.resourcemanager.resource-
tracker.address</name>
             <value>master:8031</value>
      </property>
      <property>
              <name>yarn.resourcemanager.admin.address</name>
               <value>master:8033</value>
       </property>
       <property>
               <name>yarn.resourcemanager.webapp.address</name>
               <value>master:8088</value>
       </property>
</configuration>


配置文件:mapred-site.xml

<configuration>
          <property>                                            
        <name>mapreduce.framework.name</name>
                <value>yarn</value>
           </property>
          <property>
                  <name>mapreduce.jobhistory.address</name>
                  <value>master:10020</value>
          </property>
          <property>
<name>mapreduce.jobhistory.webapp.address</name>
                <value>master:19888</value>
       </property>
</configuration>

配置文件:yarn-site.xml


<configuration>
        <property>
               <name>yarn.nodemanager.aux-services</name>
               <value>mapreduce_shuffle</value>
        </property>
        <property>                               
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
               
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
        </property>
        <property>
               <name>yarn.resourcemanager.address</name>
               <value>master:8032</value>
       </property>
       <property>
               
<name>yarn.resourcemanager.scheduler.address</name>
               <value>master:8030</value>
       </property>
       <property>
            <name>yarn.resourcemanager.resource-


tracker.address</name>
             <value>master:8031</value>
      </property>
      <property>
              <name>yarn.resourcemanager.admin.address</name>
               <value>master:8033</value>
       </property>
       <property>
               <name>yarn.resourcemanager.webapp.address</name>
               <value>master:8088</value>
       </property>
</configuration>

下一步
将配置好的 hadoop 文件 复制到对应的其他slave 机器上




启动hadoop


#注意最后单词带‘-’

将hadoop传输到slave1和slave2根目录

ssh 免密码登陆
http://blog.csdn.net/universe_hao/article/details/52296811 

http://www.cnblogs.com/hrx-star/p/5795765.html

Hadoop异常 hdfs.DFSClient: DataStreamer Exception: 


org.apache.hadoop.ipc.RemoteException

解决 : 关闭防火墙

关闭命令:  service iptables stop 
        永久关闭防火墙:chkconfig iptables off


两个命令同时运行,运行完成后查看防火墙关闭状态 
        service iptables status

开始====编写第一个程序


读取文件
package com.hadoop.main;

import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;


import org.apache.commons.compress.utils.IOUtils;
import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;
public class WordCount {
static 
  {
        URL.setURLStreamHandlerFactory(new 


FsUrlStreamHandlerFactory());
    }
    
    public static void main(String [] args) throws 


MalformedURLException, IOException
    {

        try(InputStream in = new URL


("hdfs://localhost:9000/test2/index.txt").openStream();)
        {   
            IOUtils.copy(in, System.out);
        }
    }

}



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值