一、 Hadoop介绍
** HDFS:分布式存储文件 //用来存数据
角色:NameNode和DataNode
** YARN:分布式资源调度框架(Hadoop2.x以上才引用) //调用计算机资源来进行操作
角色:ResourceManager和NodeManager
** MapReduce:分布式数据处理框架 //用来对数据分析
** 解压Hadoop
tar -zxf xxx.tar.gz -C xxxx
** Hadoop完全分布式配置
** 准备部署的环境:
linux01 linux02 linux03
namenode resourcemanager
datanode datanode datanode
nodemanager nodemanager nodemanager
** 进入到hadoop的etc/hadoop目录下
删除windows脚本:
$ rm -rf *.cmd
** 重命名文件:
$ mv mapred-site.xml.template mapred-site.xml
配置文件:
evn文件:只需要修改JAVA_HOME,我的机器:/home/admin/modules/jdk1.8.0_181
//查看java_home的路径 echo $JAVA_HOME
hadoop-env.sh
yarn-env.sh
mapred-env.sh
site文件:
core-site.xml
hdfs-site.xml
** yarn-site.xml
** mapred-site.xml
slaves文件:从节点
node1
node2
node3
/export/server/hadoop-2.7.4
** 分发安装配置完成的hadoop到linux02以及linux03
$ scp -r hadoop-2.7.4/ node2:/export/server
$ scp -r hadoop-2.7.4/ node3:/export/server
scp -r /etc/profile node2:/etc/profile
** 格式化namenode(尖叫提示:在hadoop的根目录下执行)
$ bin/hdfs namenode -format
** 启动服务
HDFS:
$ sbin/start-dfs.sh
YARN:(尖叫提示:一定要在ResourceManager所在机器启动 linux02)
$ sbin/start-yarn.sh
JobHistoryServer:
$ sbin/mr-jobhistory-daemon.sh start historyserver
三、常用工具脚本
** 概念梳理
** 系统变量与用户变量
** 使用CRT开启一个远程会话的时候,计算机默认加载:
/etc/profile //系统变量
/home/admin/.bash_profile //用户变量
/home/admin/.bashrc //用户变量
** 使用SSH访问另一台机器的时候,不加载系统变量
** 操作
** 将系统变量追加到用户变量中(3台机器都要操作)
$ cat /etc/profile >> .bashrc //两个大于号是追加的意思
** 编写脚本
#!/bin/bash
for i in admin@linux01 admin@linux02 admin@linux03
do
echo "==================$i==================="
ssh $i 'jps'
done