Hadoop,master和slave简单的分布式搭建
搭建过程中配置免密钥登录为了以后方便使用
【提醒】安装Hadoop中会遇到新建文件夹,配置路径等问题,这个不能生搬硬套,要使用自己配置的路径,灵活使用。
Hadoop的部署配置文件在http://blog.csdn.net/beeman_xia/article/details/53391479
当初我练习这个不下十遍,熟能生巧,各位加油!
1新建master和slave两台虚拟机
2测试能否上网(浏览器登录)
3修改主机名,原始名都为localhost,为了方便区分,改名为master和slave
命令:vim /etc/sysconfig/network ,将第二行等号后面改为主机名
4查看ip地址,用命令ifconfig,如果没有则执行 ifconfig eth1 ip 自己设置ip,机子上的是eth0或者是eth1,不知道的话执行 cat /etc/sysconfig/network-scripts/ifcfg-eth1,执行不了就换成eth0.//用Tab键自动补齐也会显示自己的网卡
5修改hosts文件。执行vim /etc/hosts,在后面添加两行,格式:ip master 例如第一行192.168.5.123 master,第二行192.168.5.134 slave,如果有多台主机就继续写,ip是自己设的
6做好上述工作就可以检验是否配置好了,我们用命令ping 来检验,在master端执行ping slave ,在slave端执行ping master ,都能通就ok了。
【注】:前几步在两台机子上都要执行,不然怎么Ping?
接下来我们开始安装JDK也是两台机子都要做的
1将JDK解压,放到/usr/java目录下,我用的是JDK1.7版本的,解压的操作是 tar -zxvf jdk***
【注】,在普通用户下会遇到不能建立目录的情况,su到root用户下,然后在/usr下建立Java/目录,再修改目录的权限:chown xia:xia /usr/java,把属主和属组改成普通用户。
2配置环境变量。在家目录(xia@master~)下执行vim .bash_profile ,在后面添加两行,第一行:export JAVA_HOME=/usr/java/jdk**.第二行:export PATH=$JAVA_HOME/bin:$PATH,保存退出,执行source .bash_profile,然后测试JDK是否安装成功,执行Java -version,安装成功会有提示
接下来是免密钥登录
1在master端产生密钥,执行ssh-keygen -t rsa,然后一路回车!如果装过一次没成功有一步要输入yes。
2把密钥写进authorized_keys,执行cat .ssh/id_rsa.pub >>.ssh/authorized_keys
3修改authorized_keys的权限,执行chmod 600 .ssh/authorized_keys
4把authorized 复制到slave节点,执行scp .ssh/authorized_keys xia@slave:~/ 如果有提示输入yes/no,输入yes
6把复制过来的文件移动到.ssh目录下。执行mv quthorized_keys ~/.ssh/
7修改quthorized_keys文件的权限(第一次是在master中修改的),执行chmod 600 authorized_keys
8验证面密钥登录:直接在master执行 ssh slave。
可能还不会生效,执行ssh-add命令。
然后进行Hadoop配置部署,一共要配置7个文件
1在普通用户下,进入安装包的路径(建议放在用户目录下)
2解压Hadoop安装包:tar -zxvf ~/hadoop-2.5.2**
3进入解压后的目录 cd ~/hadoop-2.5.2
4执行ls -l 命令,看到/bin,/etc/...说明解压成功,进入配置文件目录:cd hadoop-2.5.2/etc/hadoop,hadoop的配置文件就在这里面
5配置hadoop-env.sh环境,找到export JAVA_HOME=${JAVA_HOME}; 把jdk的路径写在这里,我的是export JAVA_HOME=/usr/java/jdk1.7.0_71/
6千万不要写错,然后保存退出
7配置yarn-env.sh环境,和上一步一样,只要配置jdk路径就行了,这里注释了一行,找到后去掉注释然后修改路径,保存退出
8配置核心组件core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml。//文件放到另外的文章中,开头有地址
9配置slaves文件:在master中执行:vim hadoop-2.5.2/etc/hadoop/slaves,用slave代替里面的内容即可
10在slave也要配置这些,我们在这里直接远程复制,执行scp -r hadoop-2.5.2 xia@slave:~/,之前设置了免密钥登录,直接复制
配置hadoop启动系统环境变量
1在master中,执行vim .bash_profile,这个文件也是配置jdk的文件
2在后面加上两行,第一行:export HADOOP_HOME=/home/zkpk/hadoop-2.5.2
(要写自己Hadoop的路径)第二行:export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/shin:$PATH
3执行source.bash_profile,使文件生效
4 在用户目录下创建数据目录:mkdir hadoopdata //配置文件里面有配置目录名称,我设置的是hadoopdata
5格式化文件系统,这个操作在master上执行:hdfs namenode -format
6启动Hadoop 执行start-all.sh(停止是stop-all.sh)
7启动成功输入jps,master会显示4个进程,slave有3个进程
8启动虚拟机的浏览器,输入http://master:50070/检查namenode和datanode是否正常
输入http://master:18088/检查yarn是否成功
Hadoop,master和slave简单的分布式搭建的更多相关文章
- 2.hadoop基本配置,本地模式,伪分布式搭建
2. Hadoop三种集群方式 1. 三种集群方式 本地模式 hdfs dfs -ls / 不需要启动任何进程 伪分布式 所有进程跑在一个机器上 完全分布式 每个机器运行不同的进程 2. 服务器基本配 ...
- Hadoop 笔记1 (原理和HDFS分布式搭建)
1. hadoop 是什么 以及解决的问题 (自行百度) 2.基本概念的讲解 1. NodeName master 节点(NN) 主节点 保存了metaData(元数据信息) 包括文件的owener ...
- Hadoop完全分布式搭建过程中遇到的问题小结
前一段时间,终于抽出了点时间,在自己本地机器上尝试搭建完全分布式Hadoop集群环境,也是借助网络上虾皮的Hadoop开发指南系列书籍一步步搭建起来的,在这里仅代表hadoop初学者向虾皮表示衷心的感 ...
- hadoop分布式搭建
1.新建三台机器,分别为: hadoop分布式搭建至少需要三台机器: master extension1 extension2 本文利用在VMware Workstation下安装Linux cent ...
- hadoop 伪分布式搭建
下载hadoop1.0.4版本,和jdk1.6版本或更高版本:1. 安装JDK,安装目录大家可以自定义,下面是我的安装目录: /usr/jdk1.6.0_22 配置环境变量: [root@hadoop ...
- hadoop完全分布式搭建HA(高可用)
2018年03月25日 16:25:26 D调的Stanley 阅读数:2725 标签: hadoop HAssh免密登录hdfs HA配置hadoop完全分布式搭建zookeeper 配置 更多 个 ...
- 超详细解说Hadoop伪分布式搭建--实战验证【转】
超详细解说Hadoop伪分布式搭建 原文http://www.tuicool.com/articles/NBvMv2原原文 http://wojiaobaoshanyinong.iteye.com/b ...
- Hadoop完全分布式搭建
---记于2015年11月6日星期五 准备工作 软硬件环境 主机操作系统:处理器:i5,主频:3.2G,内存:8G,Windows64 虚拟机软件:VMware Workstation 10 虚拟操作 ...
- Hadoop简介与伪分布式搭建—DAY01
一. Hadoop的一些相关概念及思想 1.hadoop的核心组成: (1)hdfs分布式文件系统 (2)mapreduce 分布式批处理运算框架 (3)yarn 分布式资源调度系统 2.hadoo ...
随机推荐
- oracle pl/sql 函数
函数用于返回特定的数据,当建立函数时,在函数头部必须包含return子句.而在函数体内必须包含return语句返回的数据.我们可以使用create function来建立函数. 1).接下来通过一个案 ...
- 第5章 不要让线程成为脱缰的野马(Keeping your Threads on Leash) ----初始化一个线程
使用线程的一个常见问题就是如何能够在一个线程开始运行之前,适当地将它初始化.初始化最常见的理由就是为了调整优先权.另一个理由是为了在SMP 系统中设定线程比较喜欢的 CPU.第10 章谈到 MFC 时 ...
- css3换行的三方式的对比(整理)
CSS3 文本换行 (转载..) 作者 张歆琳 关注 2016.06.20 10:49* 字数 1101 阅读 676评论 1喜欢 6 文本换行其实是个非常常用但并不起眼的特性.你什么都不用设,浏览器 ...
- Codeforces 858A. k-rounding 数论
题目: 题意:输入n和k,找到一个最小的数,满足末尾有至少k个0和是n的倍数. 最小的情况 ans = n,最大的情况 ans = n*pow(10,k). 令 k = pow(10,k); 我们发现 ...
- 《深入理解Java虚拟机》读书笔记-垃圾收集器与内存分配策略
在堆里存放着java世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前需要知道哪些对象还存活,哪些对象已经死去.那怎么样去判断对象是否存活呢? 一.判断对象是否存活算法 1.引用计数法 实现思路:给 ...
- 用ESP8266+android,制作自己的WIFI小车(Android 软件)
先说一下这篇文章里面的内容:TCP 客户端, 自定义对话框, 自定义按钮, ProgressBar竖直显示, 重力感应传感器,手机返回键新开启界面的问题(返回上次的界面),数据保存 软件的通信是配合 ...
- 使用svn控制系统的优缺点和注意事项
1.当无法连接到中央版本库的环境下,你无法提交代码,将代码加入版本控制.公司一般是局域网,所以使用环境问题不大. 2.svn的备份要备份所有代码数据以及所有更改的版本记录. 3.svn服务端运行方式: ...
- IIS7中JS、CSS、Image无法显示和加载解决方案
前两天把机器从Windows7升级到Windows10,IIS也跟着升级了,在获取项目搭载IIS上发现原有的页面中所有的JS.CSS.Image都无法访问,提示500错误,起初以为是IIS没有装好 重 ...
- webpack2使用ch5-多页面设置 内部js和引入js
1 当前目录 2 webpack.config.js 配置 const webpack = require('webpack'), htmlWebpackPlugin = require('html- ...
- ch1-使用路由-静态资源-404页面-ejs模板
1 package.json 项目文件夹根目录创建这个文件 //要依赖的模块 "dependencies": { //dependency 依赖的复数形式 "expres ...