由于要近期使用hadoop等进行相关任务执行,操作linux时候就多了

以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上去

看下进程,复制粘贴删除等基本操作,很多东西久了不用就忘了,所有写个demo巩固下曾经的linux知识

后续会有hadoop等主流的大数据相关环境的搭建及使用

---------------------------------------------------------------------------------------------------------------------------------------------------------

这次讲hadoop 2.7.4环境搭建

本次需要三个节点 操作用户均为root

192.168.0.80 master
192.168.0.81 slave1
192.168.0.82 slave2

1.按照 Linux巩固记录(1) J2EE开发环境搭建及网络配置  配置好三台虚拟机的网络和jdk 并能互通(都关掉防火墙)

2.更改80虚拟机hostname为master,81为slave1,82为slave2

 vi /etc/sysconfig/network

 以80为例:删除localhost  增加  HOSTNAME=master

3.修改三台虚拟机的hosts, 三台虚拟机一样

 vi /etc/hosts

192.168.0.80 master
192.168.0.81 slave1
192.168.0.82 slave2

4.修改sshd配置

vi /etc/ssh/sshd_config

#放开注释
RSAAuthentication yes
PubkeyAuthentication yes

5.三台虚拟机全部重启   shutdown -r now

--------------------------------------------------------------

6.ssh key配置,

cd ~/.ssh #(.ssh是目录,如果没有,执行$ ssh xxxxxx)

#master
ssh master
ssh-keygen –t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys scp -r root@slave1:~/.ssh/id_rsa.pub slave1.pub
scp -r root@slave2:~/.ssh/id_rsa.pub slave2.pub
cat ~/.ssh/slave2.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/slave1.pub >> ~/.ssh/authorized_keys #slave1
ssh slave1
ssh-keygen –t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp -r root@master:~/.ssh/id_rsa.pub master.pub
scp -r root@slave2:~/.ssh/id_rsa.pub slave2.pub
cat ~/.ssh/slave2.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/master.pub >> ~/.ssh/authorized_keys #slave2
ssh slave2
ssh-keygen –t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
scp -r root@master:~/.ssh/id_rsa.pub master.pub
scp -r root@slave1:~/.ssh/id_rsa.pub slave1.pub
cat ~/.ssh/slave1.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/master.pub >> ~/.ssh/authorized_keys

配置完毕后可以无密码登录   如master中到salve1  ssh slave1

[root@master /]# ssh slave1
Last login: Wed Aug 30 21:34:51 2017 from slave2
[root@slave1 ~]#

hadoop配置只需要在master上进行,配置完成后复制到slave上即可

7. 下载hadoop 2.7.4压缩包到master /home下并解压 重命名为 hadoop-2.7.4   tar -xzvf   xxxxxx  /home/hadoop-2.7.4

并设置hadoop环境变量

vi /etc/profile

export HADOOP_HOME=/home/hadoop-2.7.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop

8.

vi /home/hadoop-2.7.4/etc/hadoop/hadoop-env.sh 设置JAVA_HOME
vi /home/hadoop-2.7.4/etc/hadoop/mapred-env.sh 设置JAVA_HOME

9 修改 /home/hadoop-2.7.4/etc/hadoop/core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
     <description>设定namenode的主机名及端口(建议不要更改端口号)</description>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
<description> 设置缓存大小 </description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop-2.7.4/tmp</value>
<description> 存放临时文件的目录 </description>
</property> <property>
<name>hadoop.security.authorization</name>
<value>false</value>
</property>
</configuration>

10 修改 /home/hadoop-2.7.4/etc/hadoop/hdfs-site.xml

<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop-2.7.4/hdfs/name</value>
<description> namenode 用来持续存放命名空间和交换日志的本地文件系统路径 </description>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop-2.7.4/hdfs/data</value>
<description> DataNode 在本地存放块文件的目录列表,用逗号分隔 </description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
<description> 设定 HDFS 存储文件的副本个数,默认为3 </description>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>

11 修改 /home/hadoop-2.7.4/etc/hadoop/mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>master:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>http://master:9001</value>
</property>
</configuration>

12 修改 /home/hadoop-2.7.4/etc/hadoop/yarn-site.xml

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
</configuration>

13 创建对应的文件夹   mkdir -p logs (其实可以先创建好了文件夹再复制,文件夹多了不影响)

在每个节点上创建数据存储目录/home/hadoop-2.7.4/hdfs 用来存放集群数据。
在主节点node上创建目录/home/hadoop-2.7.4/hdfs/name 用来存放文件系统元数据。
在每个从节点上创建目录/home/hadoop-2.7.4/hdfs/data 用来存放真正的数据。
所有节点上的日志目录为/home/hadoop-2.7.4/logs
所有节点上的临时目录为/home/hadoop-2.7.4/tmp

14复制配置好的配置到slave节点

scp -r /home/hadoop-2.7.4 root@slave1:/home/hadoop-2.7.4
scp -r /home/hadoop-2.7.4 root@slave2:/home/hadoop-2.7.4

15 在master节点上配置hadoop salve配置文件 增加节点

vi /home/hadoop-2.7.4/etc/hadoop/slaves

增加

salve1

slave2

16格式化namenode和datanode并启动,(在master上执行就可以了 不需要在slave上执行)

/home/hadoop-2.7.4/bin/hadoop namenode -format
/home/hadoop-2.7.4/bin/hadoop datanode -format
/home/hadoop-2.7.4/sbin/start-all.sh

17 通过jps命令查看是否启动成功

[root@master ~]# ssh master
Last login: Sat Sep 2 00:47:50 2017 from slave1
[root@master ~]# jps
9187 Jps
3221 ResourceManager
3062 SecondaryNameNode
2856 NameNode
[root@master ~]# ssh slave1
Last login: Sat Sep 2 00:25:55 2017 from master
[root@slave1 ~]# jps
6044 Jps
2685 NodeManager
2590 DataNode
[root@slave1 ~]# ssh slave2
Last login: Wed Aug 30 21:34:38 2017 from master
j[root@slave2 ~]# jps
2679 NodeManager
5994 Jps
2590 DataNode
[root@slave2 ~]#

如果启动异常,一定要仔细看log并修正配置

Linux巩固记录(3) hadoop 2.7.4 环境搭建的更多相关文章

  1. Linux巩固记录(1) J2EE开发环境搭建及网络配置

    由于要近期使用hadoop等进行相关任务执行,操作linux时候就多了 以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上 ...

  2. Samsung_tiny4412(驱动笔记01)----linux 3.5,U-Boot,Busybox,SD卡启动环境搭建

    /*********************************************************************************** * * linux 3.5,U ...

  3. Hadoop源码阅读环境搭建(IDEA)

    拿到一份Hadoop源码之后,经常关注的两件事情就是 1.怎么阅读?涉及IDEA和Eclipse工程搭建.IDEA搭建,选择源码,逐步导入即可:Eclipse可以选择后台生成工程,也可以选择IDE导入 ...

  4. 【Hadoop基础教程】4、Hadoop之完全分布式环境搭建

    上一篇blog我们完成了Hadoop伪分布式环境的搭建,伪分布式模式也叫单节点集群模式, NameNode.SecondaryNameNode.DataNode.JobTracker.TaskTrac ...

  5. Windows10系统下Hadoop和Hive开发环境搭建填坑指南

    前提 笔者目前需要搭建数据平台,发现了Windows系统下,Hadoop和Hive等组件的安装和运行存在大量的坑,而本着有坑必填的目标,笔者还是花了几个晚上的下班时候在多个互联网参考资料的帮助下完成了 ...

  6. Hadoop+Spark:集群环境搭建

    环境准备: 在虚拟机下,大家三台Linux ubuntu 14.04 server x64 系统(下载地址:http://releases.ubuntu.com/14.04.2/ubuntu-14.0 ...

  7. Hadoop基础教程-运行环境搭建

    一.Hadoop是什么 一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储. Hadoop实现了一个分布式 ...

  8. [转载] Hadoop和Hive单机环境搭建

    转载自http://blog.csdn.net/yfkiss/article/details/7715476和http://blog.csdn.net/yfkiss/article/details/7 ...

  9. Hadoop系列003-Hadoop运行环境搭建

    本人微信公众号,欢迎扫码关注! Hadoop运行环境搭建 1.虚拟机网络模式设置为NAT 2.克隆虚拟机 3.修改为静态ip 4. 修改主机名 5.关闭防火墙 1)查看防火墙开机启动状态 chkcon ...

随机推荐

  1. [bzoj1805][SCOI2005]骑士精神 [启发式搜索]

    Description 在一个5×5的棋盘上有12个白色的骑士和12个黑色的骑士, 且有一个空位.在任何时候一个骑士都能按照骑士的走法(它可以走到和它横坐标相差为1,纵坐标相差为2或者横坐标相差为2, ...

  2. Maven安装及使用-超级图文初级篇-

    针对新手刚接触maven,并且不知道如何去搭建和使用maven,那么我来写一篇浅显易懂的初级篇教程吧. 不同的是,别人会先将概念再安装,我来帮大家先搭建好以后再去看概念,不然概念会变的很模糊. 安装: ...

  3. (转)springMVC框架下JQuery传递并解析Json数据

    springMVC框架下JQuery传递并解析Json数据 json作为一种轻量级的数据交换格式,在前后台数据交换中占据着非常重要的地位.Json的语法非常简单,采用的是键值对表示形式.JSON 可以 ...

  4. 从零自学Hadoop(24):Impala相关操作上

    阅读目录 序 数据库相关 表相关 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  5. 百度地图api将可视区域定位到当前所在位置

    1.前言 开头不说点什么,总是有点不习惯.还是说点什么吧,关于百度地图,我用的次数还是比较多的,没办法,需求呀.好吧,在用百度地图的时候,确实有过很多需求,不过好在百度地图很强大,每次需求在探索后都能 ...

  6. python-冒泡排序,升序、降序

    冒泡排序 这个算法的名字由来是因为越大的元素会经交换慢慢浮'到数列的顶端. 冒泡排序的基本思想:重复走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,直到没有再需要交换,完成排序 ...

  7. 如何在Linux上使用VIM进行.Net Core开发

    对于在Linux上开发.Net Core的程序员来说, 似乎都缺少一个好的IDE. Windows上有Visual Studio, Mac上有Visual Studio for Mac, 难道Linu ...

  8. PyCharm 去掉自动保存功能

    PyCharm 4.5.4 环境配置 1.去掉"自动保存功能" pycharm默认是自动保存的,习惯自己按 ctrl + s 的可以进行如下设置: 菜单File -> Set ...

  9. nginx的平滑升级

    一:解释nginx的平滑升级 随着nginx越来越流行,并且nginx的优势也越来越明显,nginx的版本迭代也来时加速模式,1.9.0版本的nginx更新了许多新功能,例如stream四层代理功能, ...

  10. mysql 查询性能优化第一章 为什么查询速度会慢

    一 为什么查询速度会慢 在尝试编写快速的查询之前,咱们需要清除一点,真正重要的是响应时间.如果把查询看成是一个任务,那么它由一系列子任务组成,每个子任务都会消耗一定的时间.如果要有 优化查询,实际上要 ...