赞
踩
一、
CentOS配置
1、CentOS下载
CentOS下载
链接:https://pan.baidu.com/s/19qYeyDHKaoVs1VTIBnJ33g
提取码:jl1l
2、VMware下载
链接:https://pan.baidu.com/s/1Y-rVMaFUT2E78rg6B4shvQ
提取码:ifjk
3、使用VMware打开CentOS配置
(1)基本配置
(2)网络配置edit→Virtual NetWork Editor
查看本地使用的虚拟网络ip
启动虚拟机
360可能会禁用这里要启动
4、CentOS网络配置几种方式
(1)图形化界面配置
在这里插入图片描述
切换到root下重启网络服务
Ifconfig
查看ip是否生效
(2)修改配置文件修改ip的方式
sudo vim /etc/sysconfig/network-scripts/ifcfg-eth0
i进入编辑
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.1.101" ### ip
NETMASK="255.255.255.0" ###掩码
GATEWAY="192.168.1.1" ###网关
Esc
:wq 保存并退出
改完配置文件不会自动生效,必须重启linux服务器(reboot)
或者重启network服务(sudo service network restart)
5、ContOS基本配置
(1)常用命令
vi 编辑文件
cd 打开目录
(2)让普通用户具备sudo执行权限
使用vi单行快捷键 yy 复制 p 粘贴 dd删除一行
Vim多行快捷键 v然后加上 “上下键” yy 复制 p 粘贴
切换到root
然后 vi /etc/sudoers
i 进入编辑
复制一行改成
root ALL=(ALL) ALL
hadoop ALL=(ALL) AL
Esc
:wq! 强制保存并退出
(3)服务器启动默认字符界面
sudo vi /etc/inittab
修改 字符界面
I 进入编辑
将启动级别改成3
id:3:initdefault:
Esc
:wq 保存并退出
(4)
修改主机名和ip的映射关系
sudo vi /etc/sysconfig/network
sudo hostname weelend110
配置映射关系
sudo vi /etc/hosts
192.168.131.100 weekend110
ping weekend110
验证一下
关闭防火墙
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off
Init3启动字符界面使用终端连接
SecureCRTPortable.exe下载
链接:https://pan.baidu.com/s/1v0zKf8gbs1cq2waT3qstqA
提取码:nh2f
上传文件软件
链接:https://pan.baidu.com/s/1D6xHCmGmOi3WT-3hOVNcuQ
提取码:owxt
二、hadoop安装
1、准备
创建文件夹
makdir app
递归删除文件夹及文件
rm -rf P* D* Music/ Videos/ Templates/
2、Jdk安装
(1)Jdk下载
链接:https://pan.baidu.com/s/1KVYy21a5Jw2afcaV4I-kxg
提取码:6bmd
(2)上传服务器
Alt + p
打开sftp
把jdk上传到服务器
put D:/hadoop/jdk-7u65-linux-i586.tar.gz
把jdk解压到 app/
tar -zxvf jdk-7u65-linux-i586.tar.gz -C app/
检查jdk是否能用
cd ~/app/jdk1.7.0_65/bin/
./java -version
(3)配置环境变量
sudo vi /etc/profile
不清楚路径可以有两种方法
a.直接在编辑器里面 esc :cd /home/hadoop/app/jdk1.7.0_65/
b.直接克隆一个窗口
最后面加上
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
export PATH=$PATH:$JAVA_HOME/bin
立即生效并验证
source /etc/profile
java -version
3、Hadoop安装
(1)Hadoop下载
链接:https://pan.baidu.com/s/1Cnrmkt26hlbiPtJ8oOFuSA
提取码:cuxz
(2)上传hadoop
put D:/hadoop/hadoop-2.4.1.tar.gz
(3)解压到app/
tar -zxvf hadoop-2.4.1.tar.gz -C app/
bin 可执行脚本
include 本地库
libexec
NOTICE.txt
sbin 系统执行脚本
etc 配置文件
lib 本地库
LICENSE.txt
README.txt
share jar包
(4)删除shar下的doc帮助文档减少内存占用
cd ~/app/hadoop-2.4.1/share/
rm -rf doc
cd ~/app/hadoop-2.4.1/share/hadoop/
common 公共组件
hdfs hdf.jars做存储
httpfs
mapreduce 编程模型运算模型
tools 工具类
yarn 资源调度
(5)修改配置文件
cd ~/app/hadoop-2.4.1/etc/hadoop/
(a)修改环境配置文件
vi hadoop-env.sh
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
(b)修改core-site公共相关的
TFS是
vi core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://weekend110:9000/</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/app/hadoop-2.4.1/data/</value>
</property>
</configuration>
(c)修改hdfs相关的
vi hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name><!--副本数-->
<value>1</value>
</property>
</configuration>
(d)修改 mapred框架运行相关的
首先重命名
mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
说明 mapreduce程序应该放到什么程序上去跑放到yarn上跑,如果不指定yarn他就只会在本地跑不会到集群上面跑,就变成单机版的了。
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
(e)修改yarn框架运行相关的
vi yarn-site.xml
<configuration>
<!--指定yarn集群里面的老大-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>weekend110</value>
</property>
<!--指定reduce获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
(f)关闭防火墙
sudo service iptables status #查看防火墙状态
sudo service iptables stop #关闭防火墙
sudo chkconfig iptables --list #查看防火墙自启状态
sudo chkconfig iptables off #关闭防火墙自启
4、验证启动hadoop
(1)增加环境变量
sudo vi /etc/profile
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
export HADOOP_HOME=/home/hadoop/app/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
source /etc/profile #应用并执行
(2)格式化hadoop
hadoop namenode -format
成功
(3)启动hadoop
sudo vi /etc/profile #增加hadoop sbin环境变量
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_65
export HADOOP_HOME=/home/hadoop/app/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile #立即执行
启动hadoop dfs
start-dfs.sh
Jps 查看启动项
启动DataNode
是在cd etc/hadoop/目录下的 slaves 默认是localhost
改成主机名
启动 yarn
出现以下服务则配置启动成功
(4)Hdfs测试
配置访问主机名
打开下面链接进入页面
http://weekend110:50070/
Configured Capacity: 17.46 GB Namenode 多大容量
Live Nodes 1 (Decommissioned: 0) 运行的datenode有几个
Dead Nodes 0 死掉datenode没有
Hdfs 文件系统
上传文件
hadoop fs -put jdk-7u65-linux-i586.tar.gz hdfs://weekend110:9000/
查看
从hdfs下载文件
hadoop fs -get hdfs://weekend110:9000/jdk-7u65-linux-i586.tar.gz
(5)Mapreduce测试
cd ~/app/hadoop-2.4.1/share/hadoop/mapreduce/ #mapreduce路径
在这个jar下
(a)计算圆周率
hadoop jar hadoop-mapreduce-examples-2.4.1.jar pi 5 5
结果
(b)统计每个单词出现的总次数
在当前目录下写一个文本
vi test.txt
创建一个目录
hadoop fs -mkdir /wordcount
hadoop fs -mkdir /wordcount/input
把刚才的文件上传到hdfs上
hadoop fs -put test.txt /wordcount/input
hadoop jar hadoop-mapreduce-examples-2.4.1.jar wordcount /wordcount/input /wordcount/output
查看目录下生成的结果文件
hadoop fs -ls /wordcount/output
hadoop fs -cat /wordcount/output/part-r-00000
也可以从图形界面下载看
5、HDFS的实现思想
1、hdfs是通过分布式集群来存储文件,为客户端提供了一个便捷的访问方式,就是一个虚拟的目录结构。
2、文件存储到hdfs集群中去的时候是被切分成block的
3、文件的block存放到若干台DataNode节点上
4、Hdfs文件系统中的文件与真实的block之间有映射关系,由namenode管理。
5、每一个block在集群中会存储多个副本,好处是可以提高数据的可靠性,还可以提高访问的吞吐量。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。