Hadoop安装与部署

  1. 虚拟机配置
    配置网络
vi /etc/sysconfig/network-scripts/ifcfg-ens33

重启网络

service network restart

关闭防火墙

sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
systemctl status firewalld

关闭selinux

sudo vim /etc/selinux/config
修改为 SELINUX=disabled

配置域名解析(3个节点都需要添加)

vi /etc/hosts
192.168.25.10 node1
192.168.25.11 node2
192.168.25.12 node3
  1. 软件工具安装
sudo yum install net-tools
sudo yum install vim
  1. 安装主节点JDK
# 卸载之前的原因,主要是需要保证安装的JDK版本的正确性。
[root@Node1 ~]# rpm -qa | grep jdk # 如果有,请卸载
[root@Node1 ~]# rpm -e xxxxxxxx --nodeps # 将查询到的内置jdk强制卸载

上传JDK安装包到指定的路径

使用FinalShell直接上传即可,上传到 /root/softwares 下

解压JDK到指定安装路径

[root@Node1 ~]# cd /root/softwares && tar -zxvf jdk-8u212-linux-x64.tar.gz -C
/usr/local

配置环境变量

[root@Node1 local]# vim /etc/profile
...上述内容省略,在末尾添加即可...
# Java Environment
export JAVA_HOME=/usr/local/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin

重新引导,使得环境变量生效

[root@Node1 local]# source /etc/profile

验证JDK是否配置完成

[root@Node1 local]# java -version
  1. 安装主节点Hadoop

解压Hadoop

tar -zxvf hadoop-3.1.3.tar.gz -C /opt/

在这里插入图片描述
配置hadoop环境变量

[root@Node1 ~]# vim /etc/profile
export HADOOP_HOME=/opt/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

重新引导,使得环境变量生效

[root@Node1 ~]# source /etc/profile

验证是否配置成功

[root@Node1 ~]# hadoop version

创建HDFS的NN和DN 主目录

mkdir /var/big_data

配置文件修改
core-site.xml

<property>
<name>fs.defaultFS</name>
<value>hdfs://node1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/var/big_data</value>
</property>

hdfs-site.xml

<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node3:50090</value>
</property>
</configuration>

yarn-site.xml

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node1</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>8192</value>
<discription>每个节点可用内存,单位MB</discription>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>1500</value>
<discription>单个任务可申请最少内存,默认1024MB</discription>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>8192</value>
<discription>单个任务可申请最大内存,默认8192MB</discription>
</property>
</configuration>

hadoop-env.sh

export JAVA_HOME=/usr/local/jdk1.8.0_321
# Hadoop3中,需要添加如下配置,设置启动集群角色的用户是谁
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
  1. 格式化集群
hdfs namenode -format
  1. List item
vi /opt/hadoop-3.1.3/etc/hadoop/workers
node1
node2
node3
  1. 启动集群
[root@Node1 hadoop]# start-dfs.sh
Starting namenodes on
Starting datanodes
Starting secondary namenodes
[root@Node1 hadoop]# jps
11090 Jps
10595 NameNode
10938 SecondaryNameNode
10763 DataNode
注:如果启动报错 Permission denied (publickey,gssapi-keyex,gssapi-with-
mic,password).
1.ssh-keygen -t rsa 然后一路回车
2.cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3.chmod 600 ~/.ssh/authorized_keys
4.测试是否能无密码登录 ssh node1 #node1是自己的主机名
5.如果不需要密码登录:start-dfs.sh
  1. 关闭机器,准备克隆
    在这里插入图片描述

  2. 修改其他两台节点IP和主机名

sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33
sudo vim /etc/hostname 或者执行 hostnamectl set-hostname node3
  1. 产生公钥
ssh-keygen -t rsa
ssh-copy-id Node1 三台节点都要执行
ssh-copy-id Node2 三台节点都要执行
ssh-copy-id Node3 三台节点都要执行
ssh Node2 测试是否免密成功
  1. 启动集群命令
start-all.sh 启动命令
stop-all.sh 停止命令
  1. 重新初始化(如果出现无法启动就重新格式化
[root@node1 ~]# rm -rf /var/big_data/
[root@node1 ~]# rm -rf /opt/hadoop-3.1.3/logs/
[root@node1 ~]# mkdir /var/big_data
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小苹果牛肉包·

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值