快照 ---还原点
克隆注意点
1.修改主机名 vi /etc/sysconfig/network
2.修改mac地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR=00:0C:29:CD:79:8C ---删掉
UUID=57d4.... --删掉
vi /etc/udev/rules.d/70-persistent-net.rules
-- 删除错误的mac地址所在的行
3.重启网络服务
# service network restart
Hadoop -----大数据基础平台
Lucene 开源的高性能全文检索工具包
Nutch 开源的Web搜索引擎
--Doug Couting
谷歌公司(三大论文):
MapReduce -- 计算框架模型(分而治之) ----->MapReduce
GFS --存储数据 -->HDFS(hadoop distributed file system)
BigTable --存储数据
---->MapReduce,HDFS加入apache 基金会 ,合并后也就是今天的Hadoop
大数据定义:海量数据里面挖掘/发现/采集/分析有价值的信息.
Hadoop 四个重要组成部分
common ---基础模块
HDFS --存储数据 (读-写) 一次写入,多次读取
--namenode 存储元数据(数据存储的位置)
--datanode 数据
Yarn -- 资源管理(CPU/内存/虚拟代码)(2.x版本新增)
--ResourceManager
--NodeManger
MapReduce --计算模型(分而治之) key/value
-- 分 map
--合 reduce
Hadoop 生态系统
单机模式
伪分布式模式 --用于开发测试
分布式模式
伪分布式模式搭建:
环境准备-----
1.系统的主机名(root用户)
#vi /etc/sysconfig/network
hadoop-senior.summer.com(不要用下划线)
2.创建普通用hadoop(后期都使用这个用户)
修改密码# echo 123456 | passwd --stdin hadoop
3.把ip地址设置成静态ip
#setup --console(虚拟机图形化界面)
或者
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=none
IPADDR=192.168.153.128
NETMASK=255.255.255.0
GATEWAY=192.168.153.2
DNS1=202.96.209.5
DNS2=8.8.8.8
4.关闭防火墙和selinux
service iptables stop
chkconfig iptables off
vi /etc/sysconfig/selinux
SELINUX=disabled (进去默认是enforing)
5 修改host
vi /etc/sysconfig/selinux
[root@localhost ~]# vi /etc/hosts
6.重启服务器
目录准备
[root@hadoop-senior ~]# mkdir /opt/modules(root用户才能执行)
[root@hadoop-senior ~]# mkdir /opt/softwares(root用户才能执行)
更改权限
[root@hadoop-senior ~]# chown -R hadoop:hadoop /opt/(hadoop用户能执行)
软件包准备
上传 到softwares
安装jdk 到modules
用root用户修改vi /etc/profile 配置java_
#JAVA HOME
JAVA_HOME=/opt/modules/jdk1.7.0_67
PATH=$PATH:$JAVA_HOME/bin
hadoop用户下 执行 $ source /etc/profile
用root用户删除之前本身自带的java 包
# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64 tzdata-java-2012j- 1.el6.noarch java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64
用hadoop用户安装hadoop
$ tar zxvf hadoop-2.5.0.tar.gz -C /opt/modules/
使用notepad++工具修改配置
配置HDFS 相关:
/opt/modules/hadoop-2.5.0/etc/hadoop
hadoop-env.sh :
-- export JAVA_HOME=/opt/modules/jdk1.7.0_67
yarn-env.sh:
--export JAVA_HOME=/opt/modules/jdk1.7.0_67
mapred-env.sh:
--export JAVA_HOME=/opt/modules/jdk1.7.0_67
core-site.xml:
fs.defaultFS
hdfs://hadoop-senior.summer.com:8020
hdfs-site.xml:
dfs.replication
1
启动hdfs --->>(第一次启动hdfs服务要格式化)format ---->start
bin/hdfs namenode -format
先启动namenode
$ sbin/hadoop-daemon.sh start namenode
在启动datanode
$ sbin/hadoop-daemon.sh start datanode
查看 jps (查看java进程命令 )
3379 Jps
3306 DataNode
3231 NameNode
测试上传文件
$ bin/hdfs -help (查看帮助)
步骤:
----bin/hdfs dfs -mkdir /input 在集群下创建input目录
bin/hdfs dfs -put /etc/yum.conf /input 上传/etc/yum.conf 到input目录下
bin/hdfs dfs -ls /input 列出input目录
bin/hdfs dfs -cat /input/yum.conf 查看input目录下的yun.conf
tips :可以通过浏览器查看
配置Yarn相关:
配置
yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
mapred-site.xml
mapreduce.framework.name
yarn
$ sbin/yarn-daemon.sh start resourcemanager
$ sbin/yarn-daemon.sh start nodemanager
[hadoop@hadoop-senior hadoop-2.5.0]$ jps
3855 NodeManager
3912 Jps
3788 ResourceManager
3306 DataNode
3231 NameNode
通过浏览器浏览 192.168.153.128:8088
简单的mapreduce 测试
创建一个 文件 vi sort.txt
上传到hdfs目录input下bin/hdfs dfs -put sort.txt /input
执行jar包中的命令bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar wordcount /input/sort.txt /output
总结
配置的所有文件:
hadoop-env.sh core-site.xml hdfs-site.xml
yarn-env.sh mapred-env.sh
yarn-site.xml mapred-site.xml
日志:
.log:通过log4j,记录大部分应用程序的日志信息
.out:记录标准输出和标准错误日志
Hadoop 常用shell命令:
$ bin/hdfs dfs
-put /ect/passwd / 上传文件passwd 到 /根目录
-ls
-cat -text 查看文件内容
-mkdir [-p] 创建目录
-mv 移动文件
-cp 复制
-du 统计
-chmod 修改权限
Hadoop 比较重要的配置选项:
namenode:元数据?
datanode: 数据存储目录?
系统默认:
文件名:core-default.xml /hdfs-default.xml /yarn-default.xml
位置存在/hadoop-2.5/share/hadoop/对应的模块的jar包中
自定义的:
位置:$HADOOP_HOME/etc/hadoop
文件名:core-site.xml /hdfs-site.xml/yarn-site.xml/
自定义namenode 节点 datanode 节点
hdfs-sitem.xml --声明namenode 节点所在的服务器
dfs.namenode.http-address
hdfs://hadoop-senior.summer.com:50070
core-sitem.xml-- 定义datanode 数据存放的目录
hadoop.temp.dir
/opt/modules/hadoop-2.5.0/data
yarn-sitem.xml -- 声明哪台服务器存resoucemanager
yarn.resourcemanager.hostname
hadoop-senior.summer.com
修改配置文件后停止服务,重新格式化namenode,,在重启
283 sbin/hadoop-daemon.sh stop namenode
284 sbin/hadoop-daemon.sh stop datanode
285 sbin/yarn-daemon.sh stop resourcemanager
286 sbin/yarn-daemon.sh stop nodemanager
287 jps
288 bin/hdfs dfs namenode -format
291 sbin/hadoop-daemon.sh start namenode
292 sbin/hadoop-daemon.sh start datanode
293 sbin/yarn-daemon.sh start resourcemanager
294 sbin/yarn-daemon.sh start nodemanager
日志聚合
--- 日志上传到HDFS
yarn-site.xml
yarn.log-aggregation-enable
true
yarn.log-aggregation.retain-seconds
8640
mapred-site.xml
mapreduce.jobhistory.webapp.address
hadoop-senior.summer.com:19888
启动服务 (查看job history服务)
$ sbin/mr-jobhistory-daemon.sh start historyserver
最后一共启动的服务
[hadoop@hadoop-senior hadoop-2.5.0]$ jps
5032 DataNode
6656 Jps
5571 ResourceManager
4949 NameNode
5820 NodeManager
5957 JobHistoryServer