Hadoop集群搭建(Yarn集群搭建)
学习大数据首先要学习Hadoop,学习之前肯定要先把软件安装好。
环境:
Cenots7(3台), JDK1.8.0_144, Hadoop3.3.0
一、先准备软件包,下载Hadoop:(三台机器都操作)
1.1进入/opt/soft/目录。
1.2 wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
1.3 tar -zxvf hadoop-3.3.0.tar.gz
二、3台Centos7虚拟机器:
192.160.6.210 master
192.160.6.211 slaver1
192.160.6.212 slaver2
三、配置三台虚拟机的SSH免密登录(自行百度吧)
四、默认已经有jdk环境了(三台机器都操作)
我的jdk环境是: jdk1.8.0_144
五、配置Hadoop环境变量(三台机器都操作)
$ vim /etc/profile export HADOOP_HOME=/opt/software/hadoop-3.3.0 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
$ source /etc/profile
六、配置Hadoop集群环境(都在master机器上配置)
6.1 编辑hadoop-env.sh
vim /opt/software/hadoop-3.3.0/etc/hadoop/hadoop-env.sh #文件最后加 export JAVA_HOME=/opt/soft/jdk1.8.0_144 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
6.2 编辑yarn-env.sh
$ vim /opt/software/hadoop-3.3.0/etc/hadoop/yarn-env.sh #文件最后加 export JAVA_HOME=/opt/soft/jdk1.8.0_144
6.3 编辑 core-site.xml
$ vim /opt/software/hadoop-3.3.0/etc/hadoop/core-site.xml <configuration> <property> <name>hadoop.tmp.dir</name> <value>/home/look/hadoop-3.3.0/tmp</value> <description>Abase for other temporary directories.</description> </property> <!-- 设置默认文件系统Hadoop支持file、HDFS、GFS、ALI|Amazon云等文件系统--> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:8020</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> </configuration>
6.4 编辑hdfs-site.xml
$ vim /opt/software/hadoop-3.3.0/etc/hadoop/hdfs-site.xml
<configuration>
<!--设置SNN进程运行机器位置信息-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>192.168.6.211:9868</value>
</property>
</configuration>
6.5 编辑mapred-site.xml
$ vim /opt/software/hadoop-3.3.0/etc/hadoop/mapred-site.xml <configuration> <!--设置MR程序默认运行模式: yarn集群模式 local本地模式--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <!--MR程序历史服务地址--> <property> <name>mapreduce.jobhistory.address</name> <value>192.168.6.210: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> </configuration>
6.6 编辑yarn-site.xml
$ vim /opt/software/hadoop-3.3.0/etc/hadoop/yarn-site.xml <configuration> <!--设置YARN集群主角色运行机器位置--> <property> <name>yarn.resourcemanager.hostname</name> <value>192.168.6.210</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <!-- 关闭yarn内存检查 --> <!--是否将对容器实施物理内存限制--> <!-- 是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认为 true --> <!-- 因为对于 flink 使用 yarn 模式下,很容易内存超标,这个时候 yarn 会自动杀掉 job,因此需要关掉--> <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://192.168.6.210:19888/jobhistory/logs</value> </property> <!-- yarn -->资源配置 <property> <name>yarn.scheduler.minimum-allocation-mb</name> <value>1024</value> </property> <property> <name>yarn.scheduler.maximum-allocation-mb</name> <value>102400</value> </property> <property> <name>yarn.nodemanager.resource.cpu-vcores</name> <value>32</value> </property> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>51200</value> </property> <!-- 一台NodeManager的总可用(逻辑)cpu核数 --> <property> <name>yarn.nodemanager.resource.cpu-vcores</name> <value>2</value> </property> <!-- 容器的虚拟内存使用上限:与物理内存的比率 --> <property> <name>yarn.nodemanager.vmem-pmem-ratio</name> <value>2.1</value> </property> </configuration>
6.7 编辑 workers
$ vim /opt/software/hadoop-3.3.0/etc/hadoop/workers 192.168.6.210 192.168.6.211 192.168.6.212
七、把配置好的hadoop目录分发到其他机器
scp -r hadoop-3.3.0 root@192.168.6.211:/opt/software/ scp -r hadoop-3.3.0 root@192.168.6.212:/opt/software/
八、格式化HDFS
$ hdfs namenode -format
九、启动HDFS集群和Yarn集群
#启动HDFS $ start-dfs.sh #启动Yarn $ start-yarn.sh
十、WEB界面查看启动结果
web查看hdfs http://name_node_server_ip:9870
web查看yarn http://resourcemanager_host:8088
遇到的问题:
1、启动hdfs的时候 start-hdfs.sh 报错:Permission denied
解决:执行命令: cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
参考:
https://blog.csdn.net/qq_36318271/article/details/88796706