• hadoop-1.2.1集群搭建


    继续上一篇:http://www.cnblogs.com/CoolJayson/p/7430654.html

    首先需要安装上台虚拟机, 分别为: master, salve1, slave2

    1.复制CentOS_6.5, 分别重命名为-slave1和-slave2

    2.用虚拟机打开slave1和slave2, 因为我们使用的是NAT模式, 此时三台虚拟机的ip是相同的需要进行修改.(关于如何修改请参考上一篇)

    修改完成后重启网络服务, 查看ip和网卡(HWaddr)是否有相同的, 如果网卡相同的话, 进入到虚拟机设置, 移除原来的网络适配器,再重新添加一个网络适配器, 网卡就改变了.

    完成后通过SecureCRT连接三台虚拟机, 测试是否能够连接网络.

    3. 安装jdk

     在虚拟机中设置共享文件夹(目录为jdk所在的目录)

    查看是否共享成功, 使用命令 cd /mnt/hgfs/ 下查看是否有共享的文件夹

    共享成功后将jdk拷贝到 /usr/local/src/目录下

    开始安装jdk

    安装完成后添加环境变量: 编辑根目录下的.bashrc文件

     

    添加完环境变量后按ESC, 使用命令 :wq 保存退出, 使用source ~/.bashrc是配置的环境变量生效(或者用命令bash)

       

    执行以下命令, 将jdk从master拷贝到salve2(拷贝到salve1也是相同操作), 然后重复上述操作在slave1和salve2中安装jdk并且配置环境变量.

    >>>>>>>>>>>>>开始安装hadoop集群>>>>>>>>>>>>>

    1.在共享文件夹中将hadoop压缩包拷贝到/usr/local/src/目录下,  同时进行解压

    2.进入到hadoop解压的目录中,创建一个tmp文件夹用来存放临时文件

    3.进入到conf目录下, 修改masters文件和slaves文件

          

    4.修改core-site.xml文件和mapred-site.xml文件

       

    5.修改hdfs-site.xml文件和hadoop-env.sh文件

       

    6.本地网络配置, 修改/etc/hosts文件, 配置后可以直接通过hostname(master/slave1/slave2)来访问虚拟机而不需要通过ip来访问

    7.修改虚拟机的hostname, 如果要永久生效需要修改/etc/sysconfig/network文件

       

    目前为止在master节点一共修改了以下8个文件:

    hadoop的conf目录下的: masters,  slaves,  core-site.xml,  mapred-site.xml,  hdfs-site.xml,  hadoop-env.sh

    以及 /etc/hosts文件和 /etc/sysconfig/network文件.

    8.将hadoop解压文件远程拷贝到slave1和slave2节点. 检查以下拷贝的文件是否有误.

     

     

    9.修改slave1和slave2节点的/etc/hosts文件和/etc/sysconfig/network文件. slave1和slave2的/etc/hosts文件和master相同.

     

       

    10.通过 hostname slave1和hostname slave2命令让hostname立即生效. /etc/sysconfig/network文件的修改要重启虚拟机后才能生效

      

    11.系统环境不同, 为了避免网络传输出现问题时难排查, 对防火墙和selinux进行关闭. 每台机器都要关闭防火墙和selinux. 通过iptables -L命令检查防火墙是否已关闭

          

    12.建立每台机器之间的互信机制(在远程访问每台机器的ip或hostname时不用再输入密码)

    在master节点通过ssh-keygen生成密钥文件

    进入~/.ssh/隐藏目录, 将id_rsa.pub公钥文件拷贝到authorized_keys文件, 并检查两个文件内容是否相同.

    在slave1和slave2节点也通过ssh-keygen命令生成密钥, 并把它们的公钥拷贝到master节点的authorized_keys文件中

    将authorized_keys文件拷贝到slave1和slave2节点中.

    此时在master节点可以直接通过ssh slave1来访问slave1节点而不需要密码, 在slave1节点也可以通过ssh master直接访问master.

       

    13.进入到hadoop目录下的bin目录, 先进行格式化

    14.通过 ./start-all.sh 命令把整个集群启动起来, 通过jps查看每个节点的进程.

       

    15.通过 ./hadoop fs -ls /  命令查看hdfs文件系统

    16.通过 ./hadoop fs -put /etc/passwd / 命令将passwd文件拷贝到hdfs文件系统中, 如果没有报错就说明成功了.

    17.通过 ./hadoop fs -cat /passwd  命令来读取passwd文件.

     

    ---------------- 到这里hadoop集群就配置成功了!!!------------------

  • 相关阅读:
    inline, block, and inline-block
    分布式/集群/负载均衡的基本概念与区别
    Java获取当前进程的所有线程
    关于测试Windows电脑端口的命令 —— telnet用法
    关于 ArtifactTransferException: Failure to transfer
    Maven项目报错:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
    Java去除掉HTML里面所有标签的两种方法——开源jar包和自己写正则表达式
    SQL(基于MySQL)——LIMIT用法
    毕业设计进度:2月13日
    毕业设计进度:2月12日
  • 原文地址:https://www.cnblogs.com/CoolJayson/p/7434861.html
Copyright © 2020-2023  润新知