详解搭建ubuntu版hadoop集群

用到的工具:VMware、hadoop-2.7.2.tar、jdk-8u65-linux-x64.tar、ubuntu-16.04-desktop-amd64.iso

1、  在VMware上安装ubuntu-16.04-desktop-amd64.iso

单击“创建虚拟机”è选择“典型(推荐安装)”è单击“下一步”

è点击完成

修改/etc/hostname

vim hostname

保存退出

修改etc/hosts

127.0.0.1  localhost
192.168.1.100  s100
192.168.1.101  s101
192.168.1.102  s102
192.168.1.103  s103
192.168.1.104  s104
192.168.1.105  s105

配置NAT网络

查看window10下的ip地址及网关

配置/etc/network/interfaces

#interfaces(5) file used by ifup(8) and ifdown(8)
#The loopback network interface
auto lo
iface lo inet loopback

#iface eth0 inet static
iface eth0 inet static
address 192.168.1.105
netmask 255.255.255.0
gateway 192.168.1.2
dns-nameservers 192.168.1.2
auto eth0

也可以通过图形化界面配置

配置好后执行ping www.baidu.com看网络是不是已经起作用

当网络通了之后,要想客户机宿主机之前进行Ping通,只需要做以下配置

修改宿主机c:\windows\system32\drivers\etc\hosts文件

文件内容

127.0.0.1    localhost
192.168.1.100 s100
192.168.1.101 s101
192.168.1.102 s102
192.168.1.103 s103
192.168.1.104 s104
192.168.1.105 s105

安装ubuntu 163 14.04 源

$>cd /etc/apt/

$>gedit sources.list

切记在配置之前做好备份

deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse

更新

$>apt-get update

在家根目录下新建soft文件夹    mkdir soft

但是建立完成后,该文件属于root用户,修改权限  chown enmoedu:enmoedu soft/

安装共享文件夹

将该文件放到桌面,右键,点击“Extract here”

切换到enmoedu用户的家目录,cd /Desktop/vmware-tools-distrib

执行./vmware-install.pl文件

Enter键执行

安装完成

拷贝hadoop-2.7.2.tar、jdk-8u65-linux-x64.tar到enmoedu家目录下的/Downloads

$> sudo cp hadoop-2.7.2.tar.gz jdk-8u65-linux-x64.tar.gz ~/Downloads/

分别解压hadoop-2.7.2.tar、jdk-8u65-linux-x64.tar到当前目录

$> tar -zxvf hadoop-2.7.2.tar.gz

$>tar -zxvf jdk-8u65-linux-x64.tar.gz

$>cp -r hadoop-2.7.2 /soft

$>cp -r jdk1.8.0_65/ /soft

建立链接文件

$>ln -s hadoop-2.7.2/ hadoop

$>ln -s jdk1.8.0_65/ jdk

$>ls -ll

配置环境变量

$>vim /etc/environment
JAVA_HOME=/soft/jdk
HADOOP_HOME=/soft/hadoop
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/soft/jdk/bin:/soft/hadoop/bin:/soft/hadoop/sbin"

让环境变量生效

$>source environment

检验安装是否成功

$>java –version

$>hadoop version

配置/soft/hadoop/etc/hadoop/  下的配置文件

[core-site.xml]

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://s100/</value>
  </property>
  <property>
     <name>hadoop.tmp.dir</name>
     <value>/home/enmoedu/hadoop</value>
  </property>
</configuration>

[hdfs-site.xml]

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>3</value>
  </property>
  <property>
     <name>dfs.namenode.secondary.http-address</name>
      <value>s104:50090</value>
   <description>
    The secondary namenode http server address and port.
   </description>
</property>
</configuration>

[mapred-site.xml]

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

[yarn-site.xml]

<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>s100</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
</configuration>

配置ssh无密码登录

安装ssh

$>sudo apt-get install ssh

生成秘钥对

在enmoedu家目录下执行

$>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

导入公钥数据到授权库中

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

测试localhost成功后,将master节点上的供钥拷贝到授权库中

其中root一样执行即可

$>ssh localhost

从master节点上测试是否成功。

修改slaves文件

[/soft/hadoop/etc/hadoop/slaves]

s101
s102
s103
s105

其余机器,通过克隆,修改hostname和网络配置即可

塔建完成后

格式化hdfs文件系统

$>hadoop namenode –format

启动所有进程

start-all.sh

最终结果:

自定义脚本xsync(在集群中分发文件)

[/usr/local/bin]

循环复制文件到所有节点的相同目录下。

[usr/local/bin/xsync]

#!/bin/bash
pcount=$#
if (( pcount<1 ));then
  echo no args;
  exit;
fi
p1=$1;
fname=`basename $p1`
#echo $fname=$fname;

pdir=`cd -P $(dirname $p1) ; pwd`
#echo pdir=$pdir

cuser=`whoami`
for (( host=101;host<106;host=host+1 )); do
  echo ------------s$host----------------
  rsync -rvl $pdir/$fname $cuser@s$host:$pdir
done

测试

xsync hello.txt

自定义脚本xcall(在所有主机上执行相同的命令)

[usr/local/bin]

#!/bin/bash
pcount=$#
if (( pcount<1 ));then
  echo no args;
  exit;
fi
echo -----------localhost----------------
$@
for (( host=101;host<106;host=host+1 )); do
  echo ------------s$host-------------
  ssh s$host $@

done

测试 xcall rm –rf hello.txt

集群搭建完成后,测试次运行以下命令

touch a.txt
gedit a.txt
hadoop fs -mkdir -p /user/enmoedu/data
hadoop fs -put a.txt /user/enmoedu/data
hadoop fs -lsr /

也可以进入浏览器查看

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java执行hadoop的基本操作实例代码

    Java执行hadoop的基本操作实例代码 向HDFS上传本地文件 public static void uploadInputFile(String localFile) throws IOException{ Configuration conf = new Configuration(); String hdfsPath = "hdfs://localhost:9000/"; String hdfsInput = "hdfs://localhost:9000/user/

  • Linux中安装配置hadoop集群详细步骤

    一. 简介 参考了网上许多教程,最终把hadoop在ubuntu14.04中安装配置成功.下面就把详细的安装步骤叙述一下.我所使用的环境:两台ubuntu 14.04 64位的台式机,hadoop选择2.7.1版本.(前边主要介绍单机版的配置,集群版是在单机版的基础上,主要是配置文件有所不同,后边会有详细说明) 二. 准备工作 2.1 创建用户 创建用户,并为其添加root权限,经过亲自验证下面这种方法比较好. sudo adduser hadoop sudo vim /etc/sudoers

  • hadoop动态增加和删除节点方法介绍

    上一篇文章中我们介绍了Hadoop编程基于MR程序实现倒排索引示例的有关内容,这里我们看看如何在Hadoop中动态地增加和删除节点(DataNode). 假设集群操作系统均为:CentOS 6.7 x64 Hadoop版本为:2.6.3 一.动态增加DataNode 1.准备新的DataNode节点机器,配置SSH互信,可以直接复制已有DataNode中.ssh目录中的authorized_keys和id_rsa 2.复制Hadoop运行目录.hdfs目录及tmp目录至新的DataNode 3.

  • 详解从 0 开始使用 Docker 快速搭建 Hadoop 集群环境

    Linux Info: Ubuntu 16.10 x64 Docker 本身就是基于 Linux 的,所以首先以我的一台服务器做实验.虽然最后跑 wordcount 已经由于内存不足而崩掉,但是之前的过程还是可以参考的. 连接服务器 使用 ssh 命令连接远程服务器. ssh root@[Your IP Address] 更新软件列表 apt-get update 更新完成. 安装 Docker sudo apt-get install docker.io 当遇到输入是否继续时,输入「Y/y」继

  • 详解VMware12使用三台虚拟机Ubuntu16.04系统搭建hadoop-2.7.1+hbase-1.2.4(完全分布式)

    初衷 首先说明一下既然网上有那么多教程为什么要还要写这样一个安装教程呢?网上教程虽然多,但是有些教程比较老,许多教程忽略许多安装过程中的细节,比如添加用户的权限,文件权限,小编在安装过程遇到许多这样的问题所以想写一篇完整的教程,希望对初学Hadoop的人有一个直观的了解,我们接触真集群的机会比较少,虚拟机是个不错的选择,可以基本完全模拟真实的情况,前提是你的电脑要配置相对较好不然跑起来都想死,废话不多说. 环境说明 本文使用VMware® Workstation 12 Pro虚拟机创建并安装三台

  • 详解搭建ubuntu版hadoop集群

    用到的工具:VMware.hadoop-2.7.2.tar.jdk-8u65-linux-x64.tar.ubuntu-16.04-desktop-amd64.iso 1.  在VMware上安装ubuntu-16.04-desktop-amd64.iso 单击"创建虚拟机"è选择"典型(推荐安装)"è单击"下一步" è点击完成 修改/etc/hostname vim hostname 保存退出 修改etc/hosts 127.0.0.1 loc

  • 详解Spring boot使用Redis集群替换mybatis二级缓存

    1 . pom.xml添加相关依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.1.RELEASE</version> </parent> <!-- 依赖 --> <dependencies> &l

  • 详解SpringBoot2 使用Spring Session集群

    有几种办法: 1.扩展指定server 利用Servlet容器提供的插件功能,自定义HttpSession的创建和管理策略,并通过配置的方式替换掉默认的策略.缺点:耦合Tomcat/Jetty等Servlet容器,不能随意更换容器. 2.利用Filter 利用HttpServletRequestWrapper,实现自己的 getSession()方法,接管创建和管理Session数据的工作.spring-session就是通过这样的思路实现的. 3 利用spring session Spring

  • ubuntu docker搭建Hadoop集群环境的方法

    spark要配合Hadoop的hdfs使用,然而Hadoop的特点就是分布式,在一台主机上搭建集群有点困难,百度后发现可以使用docker构建搭建,于是开搞: github项目:https://github.com/kiwenlau/hadoop-cluster-docker 参考文章://www.jb51.net/article/109698.htm docker安装 文章中安装的是docker.io 但是我推荐安装docker-ce,docker.io版本太老了,步骤如下: 1.国际惯例更新

  • SpringCloud搭建netflix-eureka微服务集群的过程详解

    1.打开官网稍微学习一下,了解一下spring cloud是个什么东西,大概有哪些组件等 https://spring.io/projects/spring-cloud https://docs.spring.io/spring-cloud-netflix/docs/current/reference/html/ 2.新建项目 打开网址:https://start.spring.io/ 选择需要引入的组件,然后下载下来即可 3.更改项目结构 为了测试的方便,需将项目结构更改为多模块的项目. 步骤

  • VMware + Ubuntu18.04 搭建Hadoop集群环境的图文教程

    目录 前言 VMware克隆虚拟机(准备工作,克隆3台虚拟机,一台master,两台node) 1.创建Hadoop用户(在master,node1,node2执行) 2.更新apt下载源(在master,node1,node2执行) 3. 安装SSH.配置SSH免密登录 (在master,node1,node2执行) 4.安装Java环境 (在master,node1,node2执行) 修改主机名(在master,node1,node2执行) 修改IP映射(在master,node1,node

  • 基于mysql+mycat搭建稳定高可用集群负载均衡主备复制读写分离操作

    数据库性能优化普遍采用集群方式,oracle集群软硬件投入昂贵,今天花了一天时间搭建基于mysql的集群环境. 主要思路 简单说,实现mysql主备复制-->利用mycat实现负载均衡. 比较了常用的读写分离方式,推荐mycat,社区活跃,性能稳定. 测试环境 MYSQL版本:Server version: 5.5.53,到官网可以下载WINDWOS安装包. 注意:确保mysql版本为5.5以后,以前版本主备同步配置方式不同. linux实现思路类似,修改my.cnf即可. A主mysql.19

  • 手把手教你在腾讯云上搭建hadoop3.x伪集群的方法

    一.环境准备 CentOS Linux release 7.5.1804 (Core) 系统下 安装 创建文件夹 $ cd /home/centos $ mkdir software $ mkdir module 将安装包导入software文件夹 $ cd software # 然后把文件拖进去即可 这里使用的安装包是 /home/centos/software/hadoop-3.1.3.tar.gz /home/centos/software/jdk-8u212-linux-x64.tar.

随机推荐