Linux环境设置
/*安装Hadoop集群时要确保以下几个方面
1.本机与虚拟机之间是否可以通信(Ping)。如果不行检查下面
1.1本机防火墙关闭(开启情况是本机可以ping虚拟机,虚拟机不能ping本机)
1.2虚拟机是克隆的情况(按照Linux文档中,修改ip地址等方法)
1.3虚拟机设置--网卡是否是仅主机模式或者桥接模式:仅主机模式需要检查VMware1网卡设置与虚拟机网卡设置是否匹配。桥接模式是为了让虚拟机可以连接外网,只需要改该虚拟机网卡信息即可(网关)

2.虚拟机与虚拟机之间是否可以通信(Ping)。
*/

//关闭本机网络管理
# /etc/init.d/NetworkManager stop
# chkconfig NetworkManager off

//清空和关闭防火墙
# iptables -F
# chkconfig iptables off
# service iptables save

//更改主机名称
# vi /etc/sysconfig/network

//更改主机与ip映射
# vi /etc/hosts

//安装JDK
# tar -xvf jdk-7u79-linux-x64.tar.gz
# mv jdk1.7.0_79/ jdk

//修改系统环境变量
# vi /etc/profile
export JAVA_HOME=/home/bigdata/jdk/
export HADOOP_HOME=/home/bigdata/hadoop/
export HIVE_HOME=/home/bigdata/hive/
export ZOOKEEPER_HOME=/home/bigdata/zookeeper/
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:
export PATH=$PATH:$JAVA_HOME/bin:/home/bigdata/protoc/bin:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:

//使修改后的系统生效
# source /etc/profile

//设置免密码ssh 方式一 选其一
# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
# scp ~/.ssh/authorized_keys slave1:/root/.ssh/
# scp ~/.ssh/authorized_keys slave2:/root/.ssh/

//设置免密码ssh 方式二 选其一
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub master@root
ssh-copy-id -i ~/.ssh/id_rsa.pub slave1@root
ssh-copy-id -i ~/.ssh/id_rsa.pub slave2@root

//设置免密码ssh 方式三 选其一 (推荐)
ssh-keygen -t rsa
ssh-copy-id hadoop01
ssh-copy-id hadoop02
ssh-copy-id hadoop03

Hadoop单机安装
单机不需要启动任何服务即可使用,一般只用于调试
# mkdir input
# cp etc/hadoop/*.xml input
# bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar grep input output 'dfs[a-z.]+'
# cat output/*

Hadoop集群下的伪分布式的安装
00:0C:29:67:88:5E
//修改core-site.xml文件
#etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/bigdata/tmp</value>
</property>
</configuration>

//修改hdfs-site.xml文件
#etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.block.size</name>
<value>512000</value>
</property>
<property>
<name>dfs.http.address</name>
<value>hadoop02:50070</value>
</property>
<property>
<name>dfs.secondary.http.address</name>
<value>hadoop02:50090</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/hadoopdata/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/hadoopdata/dfs/data</value>
</property>
<property>
<name>fs.checkpoint.dir</name>
<value>file:///home/hadoopdata/checkpoint/dfs/cname</value>
</property>
<property>
<name>fs.checkpoint.edits.dir</name>
<value>file:///home/hadoopdata/checkpoint/dfs/cname</value>
</property>
<property>
<name>dfs.permissions</name>
<value>true</value>
</property>
</configuration>

//格式化文件系统(安装Hadoop后只需执行一次格式化)
bin/hdfs namenode -format

//开启NameNode进程和DataNode进程
sbin/start-dfs.sh

//检查Hadoop进程
#jps

//通过浏览页面查看NameNode和Datanode
http://192.168.10.11:50070/

//创建运行MapReduce job所需的HDFS目录:
#bin/hdfs dfs -mkdir /user

//拷贝输入文件到分布式文件系统(上传)
# bin/hdfs dfs -put etc/hadoop input

//运行一些提供的示例:
#bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar grep /input /output 'dfs[a-z.]+'

//检查输出文件(下载): 从分布式文件系统拷贝输出文件到本地文件系统并检查它们:
# bin/hdfs dfs -get output output
# cat output/*

//在分布式系统上查看输出文件的内容:
# bin/hdfs dfs -cat output/*

//当你完成操作后,使用下列命令关闭进程:
#sbin/stop-dfs.sh

单节点YARN
//编辑mapred-site.xml文件
#etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

//编辑yarn-site.xml文件
#etc/hadoop/
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

//开启ResourceManager进程和NodeManager进程
#sbin/start-yarn.sh

//检查ResourceManager进程和NodeManager进程是否正常运行
#jps

//在页面上浏览ResourceManager
http://192.168.10.11:8088/

//运行一个MapReduce任务
# yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar grep /input /output2 'dfs[a-z.]+'

写出hadoop案例都是干什么用的 作为伪分布式的操作案例

//当你完成操作后,使用下列命令关闭进程:
# sbin/stop-yarn.sh

Hadoop集群下的全分布式的安装

主机名称 IP地址 功能
master 192.168.10.11 NameNode、DataNode
slave1 192.168.10.12 DataNode
slave2 192.168.10.13 DataNode
所有机子都需要配置
1.JDK 2.SSH免登陆 3.Hadoop集群

SSH免登陆
计算机A每次SSH远程连接计算机B时,都需要输入密码。当有些软件需要频繁使用SSH连接其他计算机时,这个时候需要人工填写计算机B的密码,这个会造成大量无用操作,不利于程序的使用。
在为了避免这类问题的发生,而且也要兼顾安全问题(设置SSH免密码登陆后,SSH这台计算就不需要密码即可登陆,存在安全隐患),使用公钥和私钥方式解决SSH免密码登陆问题,而且只在一边做,另一边不做,这样也达到了安全的问题。一般是那台机器需要SSH远程其他机器,就在这台机器上设置SSH免登陆操作。
"公私钥"认证方式简单的解释:首先在客户端上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa)。然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥.在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了。
ssh 无密码登录要使用公钥与私钥。linux下可以用ssh-keygen生成公钥/私钥对.
//在master机下生成公钥/私钥对。
# ssh-keygen -t rsa
//追加到key文件当中
# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
//将master机子上的key给其他机子上发送一份
# scp ~/.ssh/authorized_keys slave1:/root/.ssh/
# scp ~/.ssh/authorized_keys slave2:/root/.ssh/

Hadoop集群搭建
修改hadoop-env.sh文件
将hadoop-env.sh文件中的
export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME="/home/bigdata/jdk"

修改core-site.xml文件
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/bigdata/tmp</value>
</property>

修改hdfs-site.xml文件
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.block.size</name>
<value>134217728</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/hadoopdata/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/hadoopdata/dfs/data</value>
</property>
<property>
<name>fs.checkpoint.dir</name>
<value>file:///home/hadoopdata/checkpoint/dfs/cname</value>
</property>
<property>
<name>fs.checkpoint.edits.dir</name>
<value>file:///home/hadoopdata/checkpoint/dfs/cname</value>
</property>
<property>
<name>dfs.http.address</name>
<value>master:50070</value>
</property>
<property>
<name>dfs.secondary.http.address</name>
<value>slave1:50090</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

修改mapred-site.xml文件
命令如下:
# mv mapred-site.xml.template mapred-site.xml
#vi mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>

修改yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master </value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</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>

#vi /etc/hadoop/slaves
将所有需要配置成slave类型的机器的机器名写在其内部即可.
注意:每个机器名占一行。
master
slave1
slave2

启动历史服务:mr-jobhistory-daemon.sh start historyserver
#vi /etc/hadoop/master
**********
Master文件存的是的secondarynamenode列表
slave1
********* 不用
//将配置好的jdk文件夹和Hadoop文件夹发送给slave1和slave2机子
# scp -r jdk/ slave1:/home/bigdata/
# scp -r jdk/ slave2:/home/bigdata/
# scp -r /home/bigdata/hadoop slave1:/home/bigdata/
# scp -r /home/bigdata/hadoop slave2:/home/bigdata/

//启动Hadoop集群
//启动之前先格式化,只需要一次即可
#hadoop namenode -format
//启动namenode、datanode、ResourceManager、NodeManager节点
# start-dfs.sh
# start-yarn.sh

hadoop2.6虚拟机安装的更多相关文章

  1. Apache Hadoop2.x 边安装边入门

    完整PDF版本:<Apache Hadoop2.x边安装边入门> 目录 第一部分:Linux环境安装 第一步.配置Vmware NAT网络 一. Vmware网络模式介绍 二. NAT模式 ...

  2. Hadoop2.6.0安装 — 集群

    文 / vincentzh 原文连接:http://www.cnblogs.com/vincentzh/p/6034187.html 这里写点 Hadoop2.6.0集群的安装和简单配置,一方面是为自 ...

  3. Hadoop第3周练习--Hadoop2.X编译安装和实验

    作业题目 位系统下进行本地编译的安装方式 选2 (1) 能否给web监控界面加上安全机制,怎样实现?抓图过程 (2)模拟namenode崩溃,例如将name目录的内容全部删除,然后通过secondar ...

  4. 联想ThinkPad S3-S440虚拟机安装,ubuntu安装,Hadoop(2.7.1)详解及WordCount运行,spark集群搭建

    下载ubuntu操作系统版本 ubuntu-14.10-desktop-amd64.iso(64位) 安装过程出现错误: This kernel requires an X86-64 CPU,but ...

  5. 虚拟机安装CentOS7 Minimal、jdk和hadoop

    虚拟机安装CentOS7 Minimal.jdk和hadoop Table of Contents 1. 安装版本 2. PD安装 3. vim安装和配置 4. 主机名变为bogon的解决办法 5. ...

  6. hadoop2 Ubuntu 下安装部署

    搭建Hadoop环境( 我以hadoop 2.7.3 为例, 系统为 64bit Ubuntu14.04 ) hadoop 2.7.3 官网下载 , 选择自己要安装的版本.注意每个版本对应两个下载选项 ...

  7. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  8. Linux Hadoop2.7.3 安装(单机模式) 一

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 java环境安装 http://www.cnblogs.com/zeze/p/590 ...

  9. Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016

    Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016 0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Att ...

随机推荐

  1. Python之threading初探

    threading库主要用于基于线程的并行,核心就是Thread类   class threading.Thread(group=None, target=None, name=None, args= ...

  2. Python实现初始化不同的变量类型为空值

    常见的数字,字符,很简单,不多解释. 列表List的其值是[x,y,z]的形式 字典Dictionary的值是{x:a, y:b, z:c}的形式 元组Tuple的值是(a,b,c)的形式 所以,这些 ...

  3. 2020最新全栈必备 Redis,你还不了解么

    什么是Redis Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如字符串, 散列, 列表, 集合, 有序集合与范围查 ...

  4. 常用CSS颜色表

    1.16进制的CSS颜色代码 > http://www.jsjtt.com/webkaifa/HTML/65.html

  5. iOS倒计时button闪烁

    v _button.titleLabel.text = [NSString stringWithFormat:@"%d后重发",t]; [_button setTitle:[NSS ...

  6. .Net Core 项目开发中的Errors,Exceptions

    这个错误是在连接数据库的时候,没有找到对应的表, namespace TodoApi.Models { public class TodoContext : DbContext { public To ...

  7. Shell分析服务器日志,解锁各种新姿势

    1.查看有多少个IP访问: awk '{print $1}' log_file|sort|uniq|wc -l 2.查看某一个页面被访问的次数: grep "/index.php" ...

  8. Android蓝牙读取短信调研

    对“直接通过蓝牙来获取连接手机的短信信息”这个需求做了一些技术调研,如下是调研过程中的一些记录. 1.无法得到BluetoothMasClient类 在文章https://blog.csdn.net/ ...

  9. 转载——完整的ASCII码表

    完整的ASCII码表,转载自下面的博主: http://www.cnblogs.com/xmxu/archive/2012/07/10/2584032.html

  10. KMP,HASH,Trie,AC自动机

    我做个总结算了下午看了一下AC自动机和学习我的大生物(当然是多谢鑫神了)..完了要崩.. 1 KMP 只要是学过的人都觉得比较简单吧 但是学不会的人就感觉很难了,我是那种顿悟的然后感觉非常简单的人过程 ...