一、基础服务环境(虚拟机自己学习配置)
1、检查ip,hostname
2、host映射
3、关闭防火墙
4、时间同步
5、ssh免密登录
6、jdk配置
二、hadoop 搭建
1、环境变量配置
vim /etc/profile
export HADOOP_HOME=/export/server/hadoop-3.3.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinsource /etc/profile
2、拷贝到其他设备
scp -r hadoop-3.3.0 root@node2:$PWD
scp /etc/profile root@node2:/etc/profile
2.1 hadoop-env.sh (etc/hadoop/..)
#java home
export JAVA_HOME=/export/server/jdk1.8.0_241#Hadoop各个组件启动运行身份
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
2.2 core-site.xml (etc/hadoop/..)
<!-- 设置默认使用的文件系统 Hadoop支持file、HDFS、GFS、ali|Amazon云等文件系统 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://node1:8020</value>
</property><!-- 设置Hadoop本地保存数据路径 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/export/data/hadoop-3.3.0</value>
</property><!-- 设置HDFS web UI用户身份 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property><!-- 整合hive 用户代理设置 -->
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property><property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
<!-- 文件系统垃圾桶保存时间 单位:分 -->
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
2.3 hdfs-site.xml (etc/hadoop/..)
<!-- 设置SNN进程运行机器位置信息 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node2:9868</value>
</property>
2.4 mapred-site.xml (etc/hadoop/..)
<!-- 设置MR程序默认运行模式: yarn集群模式 local本地模式 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property><!-- MR程序历史服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>node1:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>node1:19888</value>
</property><property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property><property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property><property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
2.5 yarn-site.xml (etc/hadoop/..)
<!-- 设置YARN集群主角色运行机器位置 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node1</value>
</property><property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property><!-- 是否将对容器实施物理内存限制 -->
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property><!-- 是否将对容器实施虚拟内存限制。 -->
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property><!-- 开启日志聚集 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property><!-- 设置yarn历史服务器地址 -->
<property>
<name>yarn.log.server.url</name>
<value>http://node1:19888/jobhistory/logs</value>
</property><!-- 日志保存的时间 7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
2.6 workers (etc/hadoop/..)
node1.itcast.cn
node2.itcast.cn
node3.itcast.cn
三、hadoop 的启动 及 操作
3.1.1 初始化
namenode节点所在机器首次启动
hadoop namenode -formathdfs集群启动
单个启动:hdfs --daemon strat|stop namenode|secondarynamenode|datanode
统一启动:start-dfs.sh | stop-dfs.shyarn集群启动
单个启动:yarn --daemon start|stop resourcemanager|nodemanager
统一启动:start-yarn.sh | stop-yarn.shhadoop集群整体启动:start-all.sh | stop-all.sh
3.1.2 web 页面
- HDFS集群 http://node1:9870
- YARN集群 http://node1:80883.2 操作(当没有hdfs web页面的访问权限,还可以通过命令去查看数据)
hadoop hdfs 命令 参数 # eq: hadoop fs -ls /