热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos7实现Hadoop-2.9.1分布式集群搭建和部署(三台机器)

一、准备三台虚拟机hadoop192.168.131.128localhost131192.168.131.131localhost134192.168.131.134(以

一、准备三台虚拟机

hadoop 192.168.131.128
localhost131 192.168.131.131
localhost134 192.168.131.134

(以上是我的三台虚拟机的hostname 和 ip)

hadoop 是 master 的 hostname

剩下的两个是 slave 的 hostname

linux 的 hostname 需要自己手动修改 不然会是 localhost.localdomain

修改 hostname 的命令是:

 hostnamectl set-hostname hadoop

修改 hosts 文件,(三台虚拟机都要添加)添加:

192.168.131.131 localhost131
192.168.131.134 localhost134
192.168.131.128 hadoop

二、然后在 master 机器上配置通过 SSH 远程复制过去就行了,接下来几乎都是在 master 机器上操作

1->安装 jdk

在官网上下载 jdk 是 linux 版本的 (我是在 wins 上下载好之后通过 FTP 上传的 Centos 上的)

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

注意记得查看 Centos 是 64 位的还是 32 位的

查看的命令:

uname -r

后缀是 X86_64 是 64 位的,否则是 32 位的

解压 jdk,将 jdk 添加 PATH 中:

vim /etc/profile
    #添加内容:
    export JAVA_HOME=/home/jdkHome #jdk压缩包解压位置
    export PATH=$PATH:$JAVA_HOME/bin

!!!!!退出vim后,别忘了重启文件!!!!
source /etc/profile

2->安装 Hadoop-2.9.1

http://archive.apache.org/dist/hadoop/core/stable/

这是 hadoop 目前比较稳定的版本

将文件通过 FTP 上传的 Centos 上 /home/hadoopCluster 并解压

3->配置 Hadoop-2.9.1

进入到 Hadoop 目录下的 etc/hadoop 的目录下(修改 6 个文件)

① 修改文件 hadoop-env.sh

找到 export JAVA_HOME=$JAVA_HOME 修改为 jdk 所在的路径


②修改文件 core-site.xml


    
    
        fs.defaultFS
        hdfs://hadoop:8020
    
    
    
        hadoop.tmp.dir
        /home/hadoopCluster/hadoop-2.9.1/tmp
    

③修改文件 hdfs-site.xml


    
    
        dfs.namenode.http-address
        hadoop:50070
    

    
    
        dfs.namenode.secondary.http-address
        localhost131:50090
    

    
    
        dfs.replication
        2
    
    
 

该配置文件中我之前配置 namenode 和 datanode 的路径,到最后格式化 namenode 的时候,namenode 没有启动,查看 logs 目录下的启动日志时发现,format 的时候,会报找不到 namenode 的错误,jps 查看 java 进程的时候或发现 namenode 没有启动,所以就将 namenode 和 datanode 的路径设置为默认。

④修改文件 mapred-site.xml

mapred-site.xml 文件当你修改时会发现没有这个文件,将 mapred-site.xml.template 文件重命名为 mapred-site.xml

mv  mapred-site.xml.template mapred-site.xml

修改为:


    
    
        mapreduce.framework.name
        yarn
    

⑤修改文件 yarn-site.xml

    
    
        mapreduce.framework.name
        yarn
    

⑥修改文件 slaves

localhost131
localhost134


4->修改完成了接下是配置 SSH 免密登录

在这里我使用 root 超级管理员登陆的,所以进入 /root 目录下

执行命令 ls


进入目录 .ssh  --> cd .ssh

ssh-keygen -t rsa
mv id_rsa_pub authorized_keys
ssh-copy-id root@localhost131
ssh-copy-id root@localhost134

配置完以上操作之后测试 SSH

ssh localhost131     !!退出 SSH 命令是 exit
ssh localhost134

不需要输入密码证明 SSH 配置成功,接下来就是远程复制文件,将 jdk 还有 hadoop 复制到另外两台机器上

注意:以上操作都是在一台机器上完成的 master (hadoop : 192.168.131.128)

5->将 Hadoop 添加到 PATH 中去

vim /etc/profile
export JAVA_HOME=/home/jdkHome/jdk1.8.0_171
export HADOOP_HOME=/home/hadoopCluster/hadoop-2.9.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin

6->远程复制文件

进入目录 /home 文件夹下(因为 jdk 和 hadoop 文件都在这个文件夹下)

scp -r jdkHome root@localhost131
scp -r hadoopCluster root@localhost131
scp -r jdkHome root@localhost134
scp -r hadoopCluster root@localhost134

7->将另外两台机器也配置 jdk 全局环境

ssh 复制过去的是以文件的形式传输的,所以不用解压,直接修改 profile 文件就行了,修改完之后,hadoop 不用再修改了,s三台机器 hadoop 配置都是一样的 , 注意:如果  jdk 的路径有不同,则需要修改 hadoop 配置文件 hadoop-env.sh 文件,将里面的 JAVA_HOME 配置成该机器的路径

8->格式化 master (hadoop:192.168.131.128) 的 namenode

hdfs namenode -format


9->启动 Hadoop (master)

进去 sbin 目录下 : ./start-all.sh

 另外两台机器:jps


测试:192.168.131.128:50070 进入 namenode 的管理界面

          192.168.131.128:8088   进入resourceManager的管理界面


启动完成


推荐阅读
  • Linux静默安装Oracle 11g教程
    准备工作在电脑中下载linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.ziphttp:download.oracle.comotnlinuxoracle11gR2l ... [详细]
  • asp.net core 应用docke部署到centos7
    前言前期准备win10(不要安装hyper-V)VMware-Workstation-Pro15.0Xshell6(非必需)VS2019以上环境请自行安装都是默认安装没什么可说的不 ... [详细]
  • 对象存储与块存储、文件存储等对比
    看到一篇文档,讲对象存储,好奇,搜索文章,摘抄,学习记录!背景:传统存储在面对海量非结构化数据时,在存储、分享与容灾上面临很大的挑战,主要表现在以下几个方面:传统存储并非为非结 ... [详细]
  •  参考自:https:linux.cnarticle-6719-1.html一、安装  首先通过xshell5先登陆来到字符界面(xshell通过SSH连接请参见之前随笔)  先下载redis, ... [详细]
  • 本文详细记录了 MIT 6.824 课程中 MapReduce 实验的开发过程,包括环境搭建、实验步骤和具体实现方法。 ... [详细]
  • Python学习day3网络基础之网络协议篇
    一、互联网协议连接两台计算机之间的Internet实际上就是一系列统一的标准,这些标准称之为互联网协议,互联网的本质就是一系列网络协议。二、为什么要有互联网协议互联网协议就相当于计 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • centos7.3配置python2、3环境与配置各自pip
    环境:CentOS-7-x86_64-Everything-1611No.1查看CentOS对Python的默认依赖[root@cs~]#lsusrbinpython* ... [详细]
  • 阿里云主机实战应用之centos7上的防火墙设置
    最近公司又上了一台服务器,以前都是用centos6系统,这次选择使用了centos7系统的安装镜像,因为现在程序版本在centos7上一般php默认就是5.4以上的,mysql也 ... [详细]
  • centos7如何利用yum安装mysql 8.0.12
    这篇文章将为大家详细讲解有关centos7如何利用yum安装mysql8.0.12,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有 ... [详细]
  • 修改第二步中按TAB键出来的命令这里注意了:网上很多文章都说这一步改成“>vmlinuzinitrdinitrd.imginst.stage2hd:devsdbquiet”什么的, ... [详细]
  • 基于CentOS7的服务器环境搭建(LAMP环境)一、安装MySQL组件  1.由于在CentOS7中,默认yum安装库中不含有mysql,我们可以下载mysql的分支Mari ... [详细]
  • 怎么在Centos7环境中安装Docker
    这期内容当中小编将会给大家带来有关怎么在Centos7环境中安装Docker,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有 ... [详细]
author-avatar
妩媚天天想我
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有