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

Hadoop 2.6 集群搭建从零开始之3 Hadoop的安装与配置(伪分布式环境)

2017-09-16 08:53 841 查看
Hadoop的下载官网为 http://hadoop.apache.org/releases.html
1.使用wget http://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.6.5/hadoop-2.6.5.tar.gz命令下载hadoop 2.6.5
例如我这里下载到了/chenjie下



2.使用 tar -zxvf hadoop-2.6.5.tar.gz命令解压此压缩包



此时出现/chenjie/hadoop-2.6.5文件夹
3.修改hosts:添加主机名和IP的对应,目的是为了使用主机名的时候能够定位(通过IP)到不同的机器。
【注:如何查看某一虚拟机的IP】



通过查看设置,网络
知道pc1的IP地址为192.168.153.131
pc2的IP地址为192.168.153.132

把机器的IP和主机名对应填入hosts文件,实例如下所示。填写完之后保存退出。
以下是pc1的hosts文件



在pc1下输入ping pc2 看是否能解析到其地址:



能解析到即可。

4.配置SSH免密码登录,目的是使主结点pc1能够免密码调用pc2 以及后面可能的其它从结点,以启动服务
sudo apt-get update //更新源
2 sudo apt-get install openssh-server //安装ssh服务器
3 sudo ps -e |grep ssh //查看ssh服务是否启动
4 sudo service ssh start //开启ssh服务
5 ssh-keygen -t rsa //生成公钥密钥 一路enter就行了
6 cat /home/chenjie/.ssh/id_rsa.pub >>/home/chenjie/.ssh/authorized_keys //将公钥添加到用户公钥文件此时会将pc1的公钥复制进pc1的认证文件(authorized_keys)中
对pc2进行同样的操作
将pc1、pc2的认证文件合并
例如:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQColBSRQ/YmsdBPpvwOryXVQEhyKh7UACLcZNKuJ95DmJSjrGqvt7fFP25CBk4+LyGUNhYpK8NOfX59RpbqcBbgxsm1EORK6KaFcEg5IklxHLHitptJkBSXGIcD4W1mvZnDwF1JV5W4EYs/Bb8oLgd2KrhvIEgBdqFZ621A3F8SHx4D77dlT9JPssxOQ5CKKW5wX/kogrkwO51Ys2MvnZASnc/+FGsPHs4HyFFNKJTWnWgAL/CovmkGc2C87F43FbCtWdRWP5XS0GtXdb6+kMZTr7C8okgSu/ZZpSWUdDQ0i+Xuq9zY5Lk4rJ2jdRPTpRTTHa3EIkqQNvM/oUarMeuJ chenjie@pc2
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/dR8PSkhpZRWET52wJ4S5YU07vvtqPKrqzTWWvwuOR2pw1eSxaj+QVc114iDklZfuHVwhFUClovZOg15fRdgCSyeLQRHem+UkUCCf351IPpoNLwM/716yWWb7R8sb1ERsVMguhp1QjaiSZ80yTYNm4LtxQpKs/u2Ox5LAZCHdtgP5cyjJrsJPPWSJV/IzsQETJPmUQlU0WpLqRD96LHh4aAk0rikxo/GFJPfM6W6ysCwGk+1W8QZGVvK/j4dQBSLim/rIGi6UC5sNW7c8/9/hzl2WPsPUnAOZVATnSfnSwUZA/SVad5XUkIikiT+faP7da9OJZlaZVlA5bNb9F/vN chenjie@pc3
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDeMHsJm25FcNuY7dAsgRuT/FCXf7sBsf20ND09CSu4nTcFzJVK4/t8LMDt3gEKE63Uv4i5gKgDORDyZJPSrSKG+vkGKwInEaZW8jYLcCJy+wC6rJmAkYBfF9m4cx1qg06rUeEykWT9wr0qr5CX8CL19I/sBn70P95MafgOJ3PUczM14S8kwO6IpYbDoUTkoSoA1aflAmo4m8MGUjzF1UU/Jer2ccfTnIIw+H20GVOG4gxW7YmsDtULmA3BqnewGatHZhxwjk+MmeeMqc92y/l0GY4wWmibd5ZbBO/yalXmMhrbf7HtTPg2TtA0HtrCNhbqOJwE7h67B4oMadI7HipH chenjie@pc4

也就是说将pc2的公钥放进pc1的认证文件种
cd .ssh
cat cat authorized_keys
vim cat authorized_keys
复制粘贴
验证成功方法,在pc1中输入 ssh pc2 能够登录到pc2



或者采用命令行的方式:使用命令发送公钥给其它结点
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.91.135

5.配置hadoop环境变量(请把图中的2.8.1改为2.6.5)



export HADOOP_HOME=/chenjie/hadoop-2.8.1
export CLASSPATH=.:$HADOOP_HOME/lib:$CLASSPATH
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_ROOT_LOGGER=INFO,console
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

保存退出,输入 source /etc/profile 
使其生效
6.配置hadoop配置文件
到hadoop目录的/etc/hadoop下



配置hadoop-env.sh,只需要加上一行
export JAVA_HOME=/.... 这里填JAVA的安装根目录 
配置
core-site.xml:
<configuration>
        <property>
          <name>fs.defaultFS</name>
          <value>hdfs://pc1:9000</value>
        </property>
        <!-- Size of read/write buffer used in SequenceFiles. -->
        <property>
           <name>io.file.buffer.size</name>
           <value>4096</value>
       </property>
        <!-- 指定hadoop临时目录,自行创建 -->
        <property>
            <name>hadoop.tmp.dir</name>
            <value>/chenjie/hadoop-2.6.5/tmp</value>
        </property>
</configuration>

配置hdfs-site.xml
<configuration>
 <!-- 备份数:默认为3-->
     <property>
        <name>dfs.replication</name>
         <value>1</value>
     </property>

 <!-- namenode-->
     <property>
         <name>dfs.namenode.name.dir</name>
         <value>/chenjie/hadoop-2.6.5/hdfs/name</value>
     </property>
<!-- datanode-->
     <property>
         <name>dfs.datanode.data.dir</name>
         <value>/chenjie/hadoop-2.6.5/hdfs/data</value>
     </property>
    <!--权限控制:false:不做控制即开放给他用户访问 -->
     <property>
         <name>dfs.permissions</name>
         <value>false</value>
     </property>
</configuration>

配置mapred-site.xml
<configuration>
    <!-- mapreduce任务执行框架为yarn-->
    <property>
         <name>mapreduce.framework.name</name>
         <value>yarn</value>
    </property>
</configuration>
配置yarn-site.xml
<configuration>
<property>
        <description>The hostname of the RM.</description>
          <name>yarn.resourcemanager.hostname</name>
         <value>pc1</value>
     </property>

      <property>
                 <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
       </property>
</configuration>
配置slaves为pc1(因为是伪分布环境,本机也作为从结点)pc1
7.将pc1上配置好的hadoop-2.6.5文件夹发送给pc2
scp -r hadoop-2.6.5 root@pc2:/chenjie

8.将pc2的配置文件/etc/profile改成跟pc1的一模一样9.在pc1 pc2上使用source /etc/profile使配置文件生效使用 hdfs namenode -format命令格式化namenode 
10。在pc1上启动hadoop集群


如果启动失败,请多次尝试格式化Namenode
伪分布式环境下在pc1上使用jps查看主节点进程和从结点进程


这里提前说一下,如果是分布式环境应该是如下的:
pc1上使用jps查看主节点进程


pc2上查看从结点进程


输入pc1的ip地址+8088或者50070端口查看




11.Hadoop运行测试
使用vim chenjie.txt新建一个文本文件,写入任意内容,保存退出使用hadoop fs -mkdir /input 在HDFS重新建input文件夹使用hadoop fs -put chenjie.txt /input将文件上传到input文件夹进入hadoop文件夹的share/hadoop/mapreduce文件夹


使用hadoop jar hadoop-mapreduce-examples-2.6.5.jar wordcount /input /output/chenjie3 命令启动wordcount实例程序
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop 安装 配置 2.8 集群
相关文章推荐