1. 创建用户
创建hadoop用户组:sudo addgroup hadoop
创建hadoop用户:sudo adduser -ingroup hadoop hadoop
为hadoop用户分配root权限:sudo gedit /etc/sudoers
按回车键就能够打开sudoers文件
在root    ALL=(ALL:ALL) ALL以下加入hadoop ALL=(ALL:ALL) ALL 
2. 改动机器名
    系统安装之后默认的名称为"ubuntu"。为了在集群中可以分辨各台server,我们须要改动机器名,机器名由/etc/hostname文件决定。
打开/etc/hostname文件:sudo gedit /etc/hostname
将"ubuntu"改为规定的机器名。比方"master"
3. 安装JDK
将已经下载的jdk-7u79-linux-x64.tar.gz拷贝到ubuntu上。
复制到/usr/local路径:
解压:cd /usr/local进入到jdk压缩包所在路径;解压缩sudo tar -zxvf jdk-7u79-linux-x64.tar.gz。回车出现量的压缩信息。压缩完之后查看该文件夹下的文件,会发现多了个文件夹。如图
环境变量设置
打开/etc/profile文件,将下面内容拷贝进去。

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-sun/bin/java 300   
    sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-sun/bin/javac 300  
    sudo update-alternatives --config java sudo update-alternatives --remove-all 变量名 測试JDK
输入java -version測试环境
系统Java环境安装完成
4. 安装SSH服务
hdfs通过ssh控制节点之间的通讯,所以ssh一定要设置。
sudo apt-get install ssh openssh-server 
5. 设置SSH免password连接。在master节点上生成key

成功流程:

    hadoop@master 用户下 sudo gedit /home/sudoers    加入权限

hadoop@master 用户下 sudo gedit /etc/hosts   加入客户机/server

cd ~/.ssh

ssh-keygen -t rsa 然后无脑回车

cat id_rsa.pub >> authorized_keys    将密钥写入公钥

    cat authorized_keys             查看公钥

    sudo scp authorized_keys hadoop@slave03:/home/hadoop/.ssh             将公钥发给客户机/3号server

    ssh slave03  链接客户机/server



出现上图所看到的就说明能够连通,输入exit命令。推出ssh登陆状态。
再次输入ssh slave03就可以自己主动链接,否则没成功
二、 配置集群
1. 解压hadoop安装包
    与安装jdk的步骤一样,将hadoop-2.6.0.tar.gz移动到/usr/local下。解压后在/usr/local文件夹下多一个文件夹,如图
将hadoop-2.6.0.tar.gz文件重命名为hadoop
sudo mv hadoop-2.6.0.tar.gz  hadoop
2. 将hadoop文件的权限加入给hadoop组的hadoop用户
sudo chown -R hadoop:hadoop hadoop
3. 设置linux系统的hadoop环境变量

export JAVA_HOME=/opt/jdk1.7.0_79
export JRE_HOME=$JAVA_HOME/jre  
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib  
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$PATH

4. 改动/etc/hosts文件
打开/etc/hosts文件,将各个节点的机器名与IP相应
211.69.255.01 slave01
................
5. 配置/etc/hadoop/hadoop-env.sh文件
指定当中的jdk路径
/opt/jdk1.7.0_79
6. 配置/etc/hadoop/core-site.xml文件
打开core-site.xml文件,配置例如以下。

<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>    <property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-datastore/hadoop-hadoop</value>
</property>
(注:当中的hadoop.tmp.dir项不要按默认的设置。默认的设置会将这个文件夹指定到tmp文件夹下,一旦NameNode关机或者重新启动,集群中全部的存储文件将丢失)
7. 配置hdfs-site.xml文件
打开hdfs-site.xml文件,配置例如以下
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>    <name>dfs.permissions</name>    <value>false</value>  </property> 8。配置mapred-site.xml文件 <property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
9. 配置slaves文件
里面配置的都是集群中的机器名,与hosts文件形成映射。
打开etc/hadoop/slaves文件。配置例如以下
master
slave01
slave02
slave03
(注意这里必须增加master主机域名)

10. 将配置好的hadoop发给每个slave节点
scp -r /usr/local/hadoop hadoop@slave01:/usr/local 这个命令非常6哦,假设发现一台机子配置没配好,或者有更改,就用这样的命令将文件发给每一台机子
在slave节点上,分别把得到的hadoo文件的权限分配给hadoop用户组的hadoop用户,运行例如以下命令
sudo chown -R hadoop:hadoop hadoop
11. 启动hadoop
这里则要注意是在bin的上一层文件夹运行
第一次启动hadoop集群须要对namenode进行格式化,运行命令:bin/hdfs  namenode -format。
仅仅有第一次启动的时候须要格式化。以后都不须要。
格式化完毕后运行sbin/start-all.sh脚本启动所有服务。

三、 測试集群
    执行 bin/hdfs  dfsadmin -report在控制台查看dfs的状态
也可在浏览器訪问master节点的50070port
能够看到有3个活着的datanode。
注意:
(1)假设搭建不成功则sbin/stop-all.sh关闭服务。清除tmp和你配置的存储数据的目录,清空后,然后在配置

  恭喜你搭建成功

hadoop集群安装(多机,非伪集群)的更多相关文章

  1. CentOS---zookeeper安装(单机、伪集群、集群)

    一:单机安装: 可以参考下面的伪集群安装方式 不同点: 不需要在data目录下创建 myid 文件 不需要配置集群 配置好后的启动和状态查询命令相同!! 二:伪集群模式 伪集群模式就是在同一主机上启动 ...

  2. zookeeper安装和配置(单机+伪集群+集群)

    #单机模式 解压到合适目录. 进入zookeeper目录下的conf子目录, 复制zoo_sample.cfg-->zoo.cfg(如果没有data和logs就新建):tickTime=2000 ...

  3. 超详细,多图文介绍redis集群方式并搭建redis伪集群

    超详细,多图文介绍redis集群方式并搭建redis伪集群 超多图文,对新手友好度极好.敲命令的过程中,难免会敲错,但为了截好一张合适的图,一旦出现一点问题,为了好的演示效果,就要从头开始敲.且看且珍 ...

  4. 峰Redis学习(10)Redis 集群(单机多节点集群和多机多节点集群)

    单机多节点集群:参考博客:http://blog.java1234.com/blog/articles/326.html 多机多节点集群:参考博客:http://blog.java1234.com/b ...

  5. MongoDB ReplacaSet & Sharding集群安装 配置 和 非集群情况的安装 配置 -摘自网络

    单台机器做sharding --单机配置集群服务(Sharding) --shard1_1 mongod --install --serviceName MongoDBServerShard1 --s ...

  6. CDH集群安装配置(三)- 集群时间同步(主节点)和 免密码登录

    集群时间同步(主节点) 1. 查看是否安装ntp服务,如果没有安装 rpm -qa |grep ntpd查看命令 yum install ntp安装命令 2. 修改配置 vi /etc/ntp.con ...

  7. MongoDB集群搭建---副本和分片(伪集群)

    参考地址:https://blog.csdn.net/weixin_43622131/article/details/105984032 已配置好的所有的配置文件下载地址:https://files. ...

  8. CDH集群安装配置(一)-集群规划和NAT网络配置

    三台物理机或者虚拟机. cdh1,cdh2,cdh3. 内存要求大于8GB,cdh1的物理磁盘要求多余50G. 每台虚拟机安装centos 7 系统.

  9. 【分布式】Zookeeper伪集群安装部署

    zookeeper:伪集群安装部署 只有一台linux主机,但却想要模拟搭建一套zookeeper集群的环境.可以使用伪集群模式来搭建.伪集群模式本质上就是在一个linux操作系统里面启动多个zook ...

随机推荐

  1. Qt使用第三方库

    简述 在 Qt 中经常会用到第三方库,例如:FFmpeg.OpenCV 等.第三方库的使用比较简单,只需要一些基本的配置就可以搞定,一起来看看吧! 简述 第三方库 源代码 库文件 目标目录 第三方库 ...

  2. C#中流,字节,字符,字符串

    首先要明白它们本身是由什么组成的: 流:二进制 字节:无符号整数 字符:Unicode编码字符 字符串:多个Unicode编码字符 那么在.net下它们之间如何转化呢? 一般是遵守以下规则: 流-&g ...

  3. c#的中英文混合字符串截取 public static string SubString(string inputString, int byteLength)

    /// <summary>        /// c#的中英文混合字符串截取(区分中英文)        /// </summary>        /// <param ...

  4. 微信小程序实现一个简单的表格

    wxml <view class="table"> <view class="tr bg-w"> <view class=&quo ...

  5. 【hdu 1083】Courses

    [Link]:http://acm.hdu.edu.cn/showproblem.php?pid=1083 [Description] 有p门的课,每门课都有若干学生,现在要为每个课程分配一名课代表, ...

  6. ImportError: No module named tornado.ioloop 记录过程

    ImportError: No module named tornado.ioloop 记录过程 安装 pycurl    pip install pycurl 报错 'curl-config' no ...

  7. Matrix学习——基础知识

    以前在线性代数中学习了矩阵,对矩阵的基本运算有一些了解,前段时间在使用GDI+的时候再次学习如何使用矩阵来变化图像,看了之后在这里总结说明. 首先大家看看下面这个3 x 3的矩阵,这个矩阵被分割成4部 ...

  8. v-for一定要与v-bind:key="id"连用

    1. v-for: <div v-for="(item,index) in todolist" v-bind:key="item.id"> < ...

  9. 【河南省多校脸萌第六场 A】巴什博弈?

    [链接]http://acm.nyist.me/JudgeOnline/problem.php?cid=1013&pid=5 [题意] 在这里写题意 [题解] 0..a-1 YES a..a+ ...

  10. HTTP详解--请求、响应、缓存

    1. HTTP请求格式 做过Socket编程的人都知道,当我们设计一个通信协议时,“消息头/消息体”的分割方式是很常用的,消息头告诉对方这个消息是干什么的,消息体告诉对方怎么干.HTTP协议传输的消息 ...