Hadoop集群搭建 大数据

大数据hadoop集群搭建

环境:
centos7 1908 其他版本可以
JDK 1.7+
hadoop 版本2.8.5
写的简单些,希望能够帮助同学们。

1.配置网络并使用xshell链接

网络配置文件:/etc/sysconfig/network-scripts
修改并新增如下内容:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.10.200 #ip任意
NETMASK=255.255.255.0
GATEWAY=192.168.10.2 #要根据自己的vm设置
DNS1=114.114.114.114
【注】注意vm的网络不要和wifi等冲突

2.搭建Java环境

第一种:解压缩
(1)上传软件包–>建议/opt目录下 ,因为此目录下是空的
(2)解压:
$ tar -zxvf jdk-8u231-linux-x64.tar.gz #解压到任意目录即可
(3)配置环境变量:vi /etc/profile
export JAVA_HOME=/解压路径/jdk1.8.0_231
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH
(4)使环境变量生效: source /etc/profile
(5)验证 : java -version #如果出现版本信息则表示Java环境安装成功

第二种:rpm安装
rpm -ivh jdk-7u80-linux-x64.rpm #自己去官网下载即可

3.配置集群节点间的通信

(1)克隆从节点
【注】 手动创建虚拟机可以不执行此步骤,克隆可以将虚拟机的所有环境复制到新的克隆的虚拟机之中(建议搭建完克隆更优秀,只是考虑到多练练)
a.在虚拟关机状态下,鼠标右键–》管理–》克隆。。默认下一步 ,注意选择完整克隆即可
b.修改从节点IP(手动创建虚拟机的,此步骤不需要执行)
注释掉UUID,修改IP即可
(2) 设置机器名(主从节点都需要设置,名称任意)
$ hostnamectl set-hostname xxx
(3)设置机器名和IP的映射关系(主节点)
$ vi /etc/hosts
添加如下内容:
192.168.10.200 master
192.168.10.201 slave1
192.168.10.202 slave2
192.168.10.203 slave3
(4)通过网络复制,将主节点的hosts文件复制到从节点
$ scp 要复制的文件 目标机器名或者IP:复制到的位置

4.配置集群节点间免密登录(主节点)

(1)创建密钥
$ ssh-keygen -t rsa (默认三次回车即可,产生的密钥文件在/root/.ssh目录下)
(2) 将公有密钥复制到本身及从节点
ssh-copy-id -i /root/.ssh/id_rsa.pub master
ssh-copy-id -i /root/.ssh/id_rsa.pub slave1
ssh-copy-id -i /root/.ssh/id_rsa.pub slave2
ssh-copy-id -i /root/.ssh/id_rsa.pub slave3
(3) 验证
ssh slave1 是否成功
ssh slave2 是否成功
ssh slave3 是否成功

5.配置本地yum源:

【注意】(如果在线安装不成功,可以使用如下配置本地yum源)
(1)移走/etc/yum.repos.d/目录下所有文件
$ mv /etc/yum.repos.d/* /opt
(2)移回CentOS-Media.repo
$ mv /opt/CentOS-Media.repo /etc/yum.repos.d/
(3)修改CentOS-Media.repo
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///media
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
(4)挂载镜像到media目录
$ mount /dev/sr0 /media #建议永久挂载

6.配置集群节点间时间同步

(1)在主节点安装ntp服务
$ yum install ntp -y
$ systemctl enable ntpd
(2)从节点安装ntpdate服务
$ yum install ntpdate -y
$ systemctl enable ntpdate
(3)需要更改主节点ntp的配置
$ vi /etc/ntp.conf
修改内容如下:
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 127.127.1.0
fudge 127.127.1.0 stratum 10
(4)所有从节点同步主节点时间
ntpdate master # 防火墙有可能影响同步时间

7.hadoop搭建

主节点:::

1.上传hadoop压缩软件包

通过xftp上传至/opt目录下

2.解压hadoop

$ tar -zxvf /opt/hadoop-2.8.5.tar.gz  -C /usr/local/  

3.修改配置文件

路径: 解压路径/etc/hadoop

修改core-site.xml
<configuration>
	    <property>
	    <name>fs.defaultFS</name>  
	      <value>hdfs://master:8020</value>  
	      </property>  
	    <property>
	      <name>hadoop.tmp.dir</name>
	      <value>/var/log/hadoop/tmp</value>
	    </property>
	</configuration>
修改hadoop-env.sh

export JAVA_HOME=/opt/jdk1.8.0_231 #注意 ,根据自己解压的Java路径书写此处的值

hdfs-site.xml
<configuration>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///data/hadoop/hdfs/name</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:///data/hadoop/hdfs/data</value>
</property>
<property>
     <name>dfs.namenode.secondary.http-address</name>
     <value>master:50090</value>
</property>
<property>
     <name>dfs.replication</name>
     <value>3</value>
</property>
</configuration>
mapred-site.xml

【注意】此文件不存在,需要通过模板文件复制一份
$ cp mapred-site.xml.template mapred-site.xml
编辑添加如下内容:

<configuration>
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
<!-- jobhistory properties -->
<property>
    <name>mapreduce.jobhistory.address</name>
    <value>master:10020</value>
</property>
<property>
     <name>mapreduce.jobhistory.webapp.address</name>
     <value>master:19888</value>
</property>
</configuration>
yarn-site.xml
<property>
 <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> 
 </property>
yarn-env.sh

export JAVA_HOME=/opt/jdk1.8.0_231

slaves文件

添加如下内容
#localhost
slave1
slave2
slave3

【注】此处的值是指定从节点的机器名,注意真实集群的数量和机器名是否正确

4.将hadoop环境复制到从节点

$ scp -r hadoop的解压路径 从节点机器名:/usr/local

5.主节点配置hadoop的环境变量

vi /etc/profile
修改如下内容:
export JAVA_HOME=/opt/jdk1.8.0_231
export HADOOP_HOME=/usr/local/hadoop-2.8.5
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH:$HADOOP_HOME/bin
【注】此时克隆是最好的 可以节省很多步骤,所以要灵活掌握

6.格式化hadoop

hdfs namenode -format #注意:切记不可重复格式化,如果重复了联系我或者搜搜怎么解决

7.启动hadoop验证访问

进入脚本所在目录:
$ cd /usr/local/hadoop-2.8.5/sbin
启动hadoop :
$ sh start-all.sh
或者 分别启动
sh /usr/local/hadoop-2.8.5/sbin/start-dfs.sh
sh /usr/local/hadoop-2.8.5/sbin/start-yarn.sh
#可以启动jobhistory服务
sh /usr/local/hadoop-2.8.5/sbin/mr-jobhistory-daemon.sh start historyserver

关闭集群:
$ sh /usr/local/hadoop-2.8.5/sbin/stop-all.sh #注意此命令可以在任意目录下执行
或者分别关闭
sh /usr/local/hadoop-2.8.5/sbin/stop-dfs.sh
sh /usr/local/hadoop-2.8.5/sbin/stop-yarn.sh
#如果开启了jobhistory服务,那么需要关闭

访问路径:
yarn监控:IP地址:8088
HDFS监控: IP地址:50070

【注】如果需要在浏览器上使用机器名来访问,那么需要配置windows的hosts文件。
C:\Windows\System32\drivers\etc\hosts
添加内容如下:
192.168.10.200 master master.centos.com
192.168.10.201 slave1 slave1.centos.com
192.168.10.202 slave2 slave2.centos.com
192.168.10.203 slave3 slave3.centos.com

【注】:如有侵权 请联系删除 有什么不对的地方欢迎指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值