这是我参与「第四届青训营 」笔记创作活动的第1天
Hadoop集群配置实战,干活满满,适合刚刚入门大数据的小伙伴以及对大数据集群搭建感兴趣的人群,欢迎大家一起来学习集群的搭建~
1.安装软件
-
1.首先安装好centOS的镜像文件,我选择的是centOS7镜像文件,在官网上下载即可。 官网下载链接:isoredirect.centos.org/centos/7/is… step1: 进入下载页,选择阿里云站点进行下载阿里云站点:mirrors.aliyun.com/centos/7/is… 每个链接都包括了镜像文件的地址、类型及版本号等信息。
-
2.在VaWarm的编辑中打开虚拟网络编辑器,选择NAT模式,查看自己的子网IP地址和子网掩码:
-
3.下载jdk-8u281-linux-x64.rpm(java的开发环境)和hadoop-3.3.3.tar.gz,给出下载地址Oracle JDK 8u281全平台安装包下载 - 码霸霸 (lupf.cn)下载较快(笔者自己搜索的资源,读者也可以自己查询)官网下载非常慢
关于Hadoop找到了清华大学的镜像站下载很快
清华大学镜像站:稳定版本的mirrors.tuna.tsinghua.edu.cn/[apache](so.csdn.net/so/search?q…
下载完成后可以利用Xftp进行文件的copy
2.安装虚拟机
在安装首先,对于大数据集群提前进行主机名、IP地址、主次服务的规划:
-
node01 :192.168.88.80 NN DN -
node02 :192.168.88.81 DN -
node03 :192.168.88.82 DN SN
其中安装第一台机器时(之后的两台机器克隆就好),建议在安装时就指定主机名,IP地址根据自己的局域网情况填写。
3.系统准备
1、常用软件工具的安装
- sudo yum install net-tools
- sudo yum install vim
- sudo vim /etc/vimrc //打开vim 修改vim编辑器中的TAb 的值为4
- set ts=4
2、系统准备:
2.1、关闭防火墙
sudo systemctl stop firewalld.service</p>
sudo systemctl disable firewalld.service</p>
2.2、关闭selinux
sudo vim /etc/selinux/config
修改为 SELINUX=disabled
2.3、源码环境准备
在家目录下,创建soft目录,拷贝jdk的rpm包和hadoop的tar包
2.3.1、解压环境包
sudo rpm -ivh jdk-8u281-linux-x64.rpm
sudo tar -zxvf hadoop-2.3.3.tar.gz -C /opt/
2.3.2、添加hadoop环境变量
sudo vim /etc/profile.d/hdfs.sh
export HADOOP_HOME=/opt/hadoop-3.3.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
2.3.3、改变hadoop文件权限
cd /opt
sudo chown -R (你的用户名):(你的用户名) /opt/hadoop-3.3.3
2.3.4、创建HDFS的NN和DN工作主目录
sudo mkdir /var/big_data
sudo chown -R huser:huser /var/big_data
3、hadoop系统配置
本内容主要针对Hadoop的配置文件进行修改,修改原则和最开始的服务搭建要一致
进入/opt/hadoop-2.7.1/etc/hadoop目录
3.1、为Hadoop提供JAVA解释器路径信息,主要目的是解决远程访问hadoop时候JAVA_HOME无法继承的问题
vim hadoop-env.sh
export JAVA_HOME=/usr/java/default
3.2、为Yarn任务、资源管理器提供Java运行环境
vim yarn-env.sh
export JAVA_HOME=/usr/java/default
3.3、配置HDFS主节点信息、持久化和数据文件的主目录
vim core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://node01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/var/big_data</value>
</property>
3.4、配置HDFS默认的数据存放策略
vim hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node03:50090</value>
</property>
3.5、配置mapreduce任务调度策略
vim mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
3.6、配置Yarn资源管理角色的信息
vim yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node01</value>
</property>
3.7、配置datanode节点信息
vim slaves
node01
node02
node03
4、提前准备主机名解析文件,为后面的克隆机器做好准备(可选,若不做,克隆后为每台机器重新添加亦可)
sudo vim /etc/hosts
192.168.88.80 node01
192.168.88.81 node02
192.168.88.82 node03
注意屏蔽或删除上面的127.0.0.1的信息
重启 :sudo reboot
5、克隆其他集群信息 关闭机器,准备克隆
克隆后,修改node02、node03的IP和主机名
sudo vim /etc/sysconfig/networ-scripts/ifcfg-ens33
sudo vim /etc/hostname
6、下面开始配置集群的ssh免密
在3台机器上执行产生自己的公钥:
ssh-keygen -t rsa
按照默认值回车确定
查看自己的公匙
将每台机器的公钥拷贝给每台机器,注意下面的指令要求3台机器都要执行:
ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03
通过使用命令ssh node02 可以查看node01和node03都可以远程无密码登陆其他服务器.
7、格式化hdfs
hdfs namenode -format
查看目录下的文件:ls /var/big_data/dfs/name/current/
开启集群:start-dfs.sh
恭喜你。到这里你的Hadoop集群就搭建完毕啦~由于笔者也是小白,经验不足,文章要是有什么错误的地方,请大家谅解,欢迎批评指正。最后耗时半天,终于搭建完成了自己的第一次集群,记录一下。