大数据系统应用——Hadoop集群的搭建及配置
❗❗❗本文最后更新于 329 天前,其中的信息可能已经过时;如有错误请在文章下方评论✅,欢迎纠错🥰!

一、安装JDK和Hadoop

1.安装JDK

【第1步】卸载镜像自带JDK

###使用管理员账户
su root
### 查询出系统自带的jdk
rpm -qa|grep java

### 删除系统自带的jdk
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64

【第2步】安装JDK1.8

### 创建java目录存放自己的jdk
cd /usr/local
mkdir java
cd java

### 安装在线导入安装包的插件
yum -y install lrzsz
rz
tar -zxvf [名]

【第3步】配置环境变量

### 配置环境变量
vim /etc/profile
#JAVA_HOME
export JAVA_HOME=/usr/local/java/jdk1.8.0_361
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

【第4步】验证环境变量,并查看JDK版本

### 使刚才配置的环境变量生效
source /etc/profile
javac
### 查看你安装的jdk信息
java -version

2.安装Hadoop

【第1步】上传新的hadoop-2.7.5.tar.gz软件到/usr/local/

### 安装Hadoop
### 【第1步】上传新的hadoop-2.7.5.tar.gz软件到/usr/local/
cd /usr/local
rz

【第2步】解压缩hadoop-2.7.5.tar.gz软件到/usr/local/

### 【第2步】解压缩hadoop-2.7.5.tar.gz软件到/usr/local/
tar -zxvf hadoop-2.7.5.tar.gz
mv hadoop-2.7.5 hadoop

【第3步】配置环境变量

### 【第3步】配置环境变量
vim /etc/profile
#HADOOP_HOME
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

### 使刚才配置的环境变量生效
source /etc/profile

二、修改Hadoop配置文件

【第4步】修改core-site.xml

### 【第4步】修改core-site.xml
cd /usr/local/hadoop/etc/hadoop
vim core-site.xml

<configuration>
    <!--指定HDFS中NameNode的地址, hadoop001为host中配置的主机名 -->
    <property>
        <name>fs.default.name</name>
        <value>hdfs://master:9000</value>
    </property>
    <!--指定hadoop运行产生文件(DataNode)的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/hdfs/tmp</value>
    </property>
</configuration>

【第5步】修改hadoop-env.sh

### 【第5步】修改hadoop-env.sh
vim hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_361

【第6步】修改yarn-env.sh

### 【第6步】修改yarn-env.sh
vim yarn-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_361

【第7步】修改mapred-site.xml

### 【第7步】修改mapred-site.xml
cp mapred-site.xml.template mapred-site.xml
vim 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>

【第8步】修改yarn-site.xml

### 【第8步】修改yarn-site.xml
hostnamectl set-hostname master  # 先修改主机名为master
vim yarn-site.xml
<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>${yarn.resourcemanager.hostname}:8032</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>${yarn.resourcemanager.hostname}:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>${yarn.resourcemanager.hostname}:8088</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.https.address</name>
        <value>${yarn.resourcemanager.hostname}:8090</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>${yarn.resourcemanager.hostname}:8031</value>
    </property>
    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>${yarn.resourcemanager.hostname}:8033</value>
    </property>
    <property>
        <name>yarn.nodemanager.local-dirs</name>
        <value>/data/hadoop/yarn/local</value>
    </property>
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    <property>
        <name>yarn.nodemanager.remote-app-log-dir</name>
        <value>/data/tmp/logs</value>
    </property>
    <property>
        <name>yarn.log.server.url</name>
        <value>http://master:19888/jobhistory/logs/</value>
        <description>URL for job history server</description>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>2048</value>
    </property>
    <property>
        <name>yarn.scheduler.minimum-allocation-mb</name>
        <value>512</value>
    </property>
    <property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>4096</value>
    </property>
    <property>
        <name>mapreduce.map.memory.mb</name>
        <value>2048</value>
    </property>
    <property>
        <name>mapreduce.reduce.memory.mb</name>
        <value>2048</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
        <value>1</value>
    </property>
</configuration>

【第9步】修改slaves文件

### 【第9步】修改slaves文件
vim slaves
slave1
slave2
slave3

【第10步】修改hdfs-site.xml

### 【第10步】修改hdfs-site.xml
vim hdfs-site.xml
<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:///usr/local/hadoop/hdfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:///usr/local/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>

【第11步】修改/etc/hosts文件

### 【第11步】修改/etc/hosts文件
ip addr
vim /etc/hosts
192.168.31.116 master master.localdomain
192.168.31.117 slave1 slave1.localdomain
192.168.31.118 slave2 slave2.localdomain
192.168.31.119 slave3 slave3.localdomain

三、克隆虚拟机

### 关闭master,克隆到slave1
rm –rf /etc/udev/rules.d/70-persistent-net.rules
cd /etc/udev/rules.d
ll
cp 70-persistent-ipoib.rules 70-persistent-ipoib.rules.bak
ll
rm 70-persistent-ipoib.rules
y
ll
ifconfig -a

四、配置SSH免密

ssh-keygen -t rsa
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
ssh slave1
ssh slave2
ssh slave3

五、配置时间同步

### (1)安装NTP服务。在各节点
yum -y install ntp
### (2)设置master节点为NTP服务主节点,
vim /etc/ntp.conf
注释掉以server开头的行 并添加:
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
server 127.127.1.0
fudge 127.127.1.0 stratum 10

### (3)在所有slave节点中配置NTP,同样修改/etc/ntp.conf文件,注释掉server开头的行,并添加:
server master
### (4)执行命令
systemctl stop firewalld.service
systemctl disable firewalld.service # 永久性关闭防火墙,主节点和从节点都要关闭。

### (5)启动NTP服务。
### ①在master节点执行命令
systemctl start ntpd.service
systemctl enable ntpd.service
### ②在slave1、slave2、slave3上执行命令
ntpdate master # 即可同步时间
### ③在slave1、slave2、slave3上分别执行
systemctl start ntpd.service
systemctl enable ntpd.service # 即可启动并永久启动NTP服务。

六、格式化hdfs

【第1步】查看防火墙状态并永久关闭(命令看配置时间同步的4)

【第2步】创建HDFS存储目录

cd /usr/local/hadoop
mkdir hdfs
cd hdfs
mkdir data name tmp

【第3步】复制hadoop和/etc/profile到其它节点,并使四台机器环境变量生效

scp -r /usr/local/hadoop slave1:/usr/local
scp -r /usr/local/hadoop slave2:/usr/local
scp -r /usr/local/hadoop slave3:/usr/local

scp  /etc/profile slave1:/etc
scp  /etc/profile slave2:/etc
scp  /etc/profile slave3:/etc
# source三个从节点
source /etc/profile

七、启动集群

【第1步】格式化namenode

hadoop namenode -format # 在此之前一定要查看/usr/local/hadoop/hdfs下的三个文件夹中有无内容,无内容才可格式化

【第2步】启动HDFS并使用jps查看进程

start-all.sh # 启动hdfs
jps

Master

Slave

八、查看HDFS管理页面

http://192.168.31.116:50070/dfshealth.html#tab-overview

九、HDFS Datenodes页面

http://192.168.31.116:50070/dfshealth.html#tab-datanode

十、访问Yarn管理页面

http://192.168.31.116:8088

十一、关闭集群

stop-all.sh

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇