提示:以下是基于centos的Hadoop伪分布式搭建(Ubuntu相同流程,但是方法也可能不同)
一、准备Linux环境
1、
(1)windows–>打开网络和共享中心–>更改适配器设置–>右键VMnet1–>属性–>双击IPv4–>设置windows的IP:192.168.1.110 子网掩码 255.255.255.0–>点击确定
(2)在虚拟机软件上–>My computer–>选择虚拟机–>右键–>settings–>network adapter–>host only–>ok
2、修改主机名
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=zhou1 ###
3、修改IP
总共两种方式:
第一种:通过Linux图形界面进行修改
进入Linux图形界面–>右键点击右上方的两个小电脑–>点击Edit connection -->选中当前网络System eth0–>点击edit按钮–>选择IPV4–>method选择为manual–>点击add按钮–>添加Ip:192.168.8.118 子网掩码:255.255.255.0 网关:192.168.1.1–>apply
第二种:修改配置文件方式(程序猿专用)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static" ###
HWADDR="00:0C:29:3C:BF:E7"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.8.118" ###
NETMASK="255.255.255.0" ###
GATEWAY="192.168.1.1" ###
4、修改主机名和Ip的映射关系
vim /etc/hosts
192.168.1.44 zhou1 ###
5、关闭防火墙
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off
6、重启Linux
reboot
注意:
1、使用host only方式,是因为在没有网的时候主机和虚拟机也可以进行通信,只需要两个IP在同一个的网段
2、Vmware有三种网络模式:桥接、nat、host-only
二、安装jdk
1、上传jdk包(使用secureCRT软件)
2、解压jdk
#创建文件夹
mkdir /usr/java
#解压
tar -zxvf jdk-7u55-linux-i586.tar.gz -C /usr/java/
3、将java添加到环境变量中
vim /etc/profile
#在文件最后添加
export JAVA_HOME=/usr/java/jdk1.7.0_55
export PATH=$PATH:$JAVA_HOME/bin
#刷新配置
source /etc/profile
三、安装hadoop2.4.1
注意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop伪分布式需要修改5个配置文件
1、上传hadoop安装包
2、解压hadoop安装包
mkdir /cloud
#解压到/cloud/目录下
tar -zxvf hadoop-2.4.1.tar.gz -C /cloud/
3、修改配置文件(5个)
3/1:hadoop-env.sh(修改的是关于Javahome的信息)
export JAVA_HOME=/usr/java/jdk1.7.0_55
3/2:core-site.xml
fs.defaultFS
hdfs://zhou1:9000
hadoop.tmp.dir
/cloud/hadoop-2.4.1/tmp
3/3:hdfs-site.xml
dfs.replication
1
3/4:mapred-site.xml
mapreduce.framework.name
yarn
3/5:yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.resourcemanager.hostname
zhou1
4、将hadoop添加到环境变量
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_55
export HADOOP_HOME=/cloud/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
source /etc/profile
5、格式化hdfs(NameNode)第一次使用时要格式化
hdfs namenode -format
#hadoop namenode -format
6、启动hadoop
./start-all.sh ---启动全部,过时了(需要输入好几次密码)
#先启动hdfs
sbin/start-dfs.sh
#在启动YRAN
sbin/start-yarn.sh
7、验证是否启动成功
使用jps命令验证–(jps是Java的命令)
jps
***** NameNode
***** Jps
***** SecondaryNameNode
***** NodeManager
***** ResourceManager
***** DataNode
验证页面方式:
http://192.168.8.118:50070 #(HDFS管理界面)
#HDFS的老大是NameNode,小弟是DataNode,SecondaryNameNode是NameNode助理
http://192.168.8.118:8088 #(YRAN管理界面)
#YARN的老大是ResourceManager(资源分配),YRAN的小弟是NodeManager(干活)
扩展:
在登录http://192.168.8.118:50070之后点击,点击Brows the filesystem找不到,以为url地址换掉了,需要修改window的
配置文件,C:\Windows\System32\drivers\etc找到hosts文件,添加linux主机名和ip映射关系
192.168.8.118 zhou1
hdfs使用:
上传
hadoop fs -put /root/jdk-12.gz hdfs://zhou1:9000/jdk(这样就上传到了hdfs文件系统环境,/root/jdk-12是linux的文件系统)
下载
hadoop fs -get hdfs://zhou1:9000/jdk /home/jdk1.7 (下载)
暂时认为hdfs是一个网盘
测试mr和yarn:
cd /cloud/hadoop-2.2.0/share/hadoop/mapreduce(里面好多jar包,是一些例子,比如计算wordcount)
vim words
hello tom
hello jerry
hello kitty
hello world
hello tom
wc words--统计字符 5(行) 10(单词数) 56(字符) --这是linux的语句
计算都是计算在hdfs系统的文件
hadoop fs -put words hdfs://zhou1:9000/wrods
查看
hadoop fs -ls hdfs://zhou1:9000/
hadoop jar hadoop-mapreduce-examples-2.4.1.jar wordcount hdfs://zhou1:9000/wrods hdfs://zhou1:9000/wcout
cd /cloud/hadoop-2.2.0/logs --查看hadoop运行时产生的日志