1.配置核心文件
HDFS
1.配置:core-site.xml 192.168.200.16
<!-- 指定HDFS 中的 NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop2:9000</value>
</property>
<!-- 指定Hadoop运行时产生文件的储存目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/hadoop-2.10.0/data/tmp</value>
</property>
2.配置hdfs-site.xml
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!-- 指定Hadoop辅助名称节点主机配置-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop4:50090</value>
</property>
3.修改hadoop-env.sh
配置JAVA_HOME路径
export JAVA_HOME=/usr/local/java/jdk1.8.0_221
YARN
1.配置yarn-env.sh
配置JAVA_HOME路径
export JAVA_HOME=/usr/local/java/jdk1.8.0_221
2.配置yarn-site.xml
<!-- Reducer 获取数据的方式-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定Yarn的Resourcemanager的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop3</value>
</property>
2.集群单节点启动
1.jps ,查看进程是否关闭
2.删除 data 与 logs
3.格式化 bin/hdfs namenode -format
3.ssh配置
无需密码访问其他服务器
生成秘钥: ssh-keygen -t rsa
拷贝公钥到hadoop3: ssh-copy-id hadoop3
4.群起集群
-
1.配置slaves
-
2.启动HDFS集群:sbin/start-dfs.sh
-
3.启动YARN集群(必须在hadoop3启动):sbin/start-yarn.sh
-
4.注意:NameNode和 ResourceManger如果不是同一台机器、不能在NameNode上启动YARN、应该在ResourceManger所在的机器上启动YARN
5.集群基本测试
1.上传文件到集群
上传小文件:
6.集群启动/停止
1.各个服务组件逐一启动/停止
--分别启动/停止HDFS组件
hadoop-daemon.sh start/stop namenode/datanode/secondarynamenode
--分别启动/停止YARN
yarn-daemon.sh start/stop resourcemanager/nodemanager
2.各个模块分开启动/停止(配置ssh为前提)
--整体启动/停止HDFS
start-dfs.sh / stop-dfs.sh
--整体启动/停止YARN
start-yarn.sh / stop-yarn.sh
7.集群时间同步
时间同步的方式:找一个机器、作为时间服务器、所有的机器与这台集群时间进行定时的同步、比如每个十分钟、同步一次时间
1.检查ntp是否安装
安装:yum install -y ntp
查看:rpm -qa|grep ntp
2.修改ntp配置文件
2-1:授权192.168.10-192.168.1.255网段上的所有机器可以从这台机器上查询和同步时间
2-2:集群在局域网中、不使用其他互联网上的时间
2-3:当该节点丢失网络连接、依然可以采用本地时间作为时间服务器为集群中的其他节点提供时间同步
3.修改/etc/sysconfig/ntpd文件
#让硬件时间与系统时间一起同步
SYNC_HWCLOCK=yes
4.重启ntpd服务
查看状态:service ntpd status
启动:service ntpd start
5.设置ntpd服务开机启动
chkconfig ntpd on
其他服务器:
配置10分钟与时间服务器同步一次
*/1 * * * * /usr/sbin/ntpdate 192.168.200.16
8.crond 系统定时任务
1.选项说明:
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务
2.参数说明:
crontab -e 进入编辑页面
* 一个小时当中的第几分钟 0-59
* 一天当中的第几个小时 0-23
* 一个月当中的第几天 1-31
* 一年当中的第几月 1-12
* 一周当中的星期几 0-7
, 代表不连续的时间、 如 0 8,12,16 * * * 代表:每天的8点0分,12点0分,16点0分都执行一次
- 代表连续的时间范围 如 0 5 * * 1-6 代表:周一到周六的凌晨5点0分执行
*/n 代表每隔多久执行一次 如 */10 * * * * 代表每隔10分钟执行一次
3.测试每隔1分钟,向/root/joker.txt 文件添加一个11的数字
*/1 * * * * /bin/echo "11">>/root/joker.txt
4.重启服务 service crond restart
service crond restart