搭建Hadoop集群需要多少时间,5分钟够吗???

广告位

快速搭建Hadoop集群 1.环境准备 主机 从机 从机 主机名 hadoop201 hadoop202 ha…

快速搭建Hadoop集群
1.环境准备
主机 从机 从机
主机名 hadoop201 hadoop202 hadoop203
hostname hadoop201 hadoop202 hadoop203
IP地址 192.168.153.201 192.168.153.202 192.168.153.203
用户名 zhangyong zhangyong zhangyong
内存大小 /boot 200M
/swap 2048M
/ 剩余空间 /boot 200M
/swap 2048M
/ 剩余空间 /boot 200M
/swap 2048M
/ 剩余空间
防火墙 service iptables stop
chkconfig iptables off(开机关闭) service iptables stop
chkconfig iptables off service iptables stop
chkconfig iptables off
网路配置 ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.153.201
GATEWAY=192.168.153.2
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8 ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.153.202
GATEWAY=192.168.153.2
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8 ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.153.202
GATEWAY=192.168.153.2
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8
2.配置基本信息
配置/etc/hosts
 vim /etc/hosts
192.168.153.201   hadoop201
192.168.153.202   hadoop202
192.168.153.203   hadoop203
1
2
3
4
配置这个用户为sudoers
vim /etc/sudoers
在root    ALL=(ALL)       ALL
添加zhangyong    ALL=(ALL)       NOPASSWD:ALL
保存时wq!强制保存
1
2
3
4
在/opt目录下创建两个文件夹module和software,并把所有权赋给zhangyong
mkdir /opt/module /opt/software
chown zhangyong:zhangyong /opt/module /opt/software
1
2
文件分发脚本xsync
#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if ((pcount==0)); then
echo no args;
exit;
fi
#2 获取文件名称
p1=$1
fname=`basename $p1`
echo fname=$fname
#3 获取上级目录到绝对路径
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir
#4 获取当前用户名称
user=`whoami`
#5 循环
for((host=103; host<105; host++)); do
        echo ——————- hadoop$host ————–
        rsync -av $pdir/$fname $user@hadoop$host:$pdir
done
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
更改权限和拷贝
chmod +x xsync         更改执行权限
sudo cp xsync /bin     拷贝xsync到根目录的bin下
sudo xsync /bin/xsync  把脚本分发到其他机子上
1
2
3
如果没有rsync环境执行下面两句
yum -y install rsync
yum install openssh-clients -y
1
2
配置免密登陆
1. 生成密钥对
ssh-keygen -t rsa 三次回车
2. 发送公钥到本机
ssh-copy-id hadoop201 输入一次密码
3. 分别ssh登陆一下所有虚拟机
ssh hadoop202
exit
ssh hadoop203
exit
4. 把/home/zhangyong/.ssh 文件夹发送到集群所有服务器
xsync /home/zhangyong/.ssh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
在一台机器上安装Java和Hadoop,并配置环境变量,并分发到集群其他机器
拷贝文件到/opt/software,两个tar包,并且解压到/opt/module
tar -zxf hadoop-2.7.2.tar.gz -C /opt/module
tar -zxf jdk-8u144-linux-x64.tar.gz -C /opt/module
1
2
sudo vim /etc/profile 在文件末尾添加
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-2.7.2
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
1
2
3
4
5
6
更新配置文件,查看JDK和hadoop是否安装成功
source /etc/profile
java -version
hadoop version
1
2
3
分发软件和配置文件到hadoop202、203并在其他两个机子上更新配置文件
sudo xsync /etc/profile
sudo xsync /opt/module
在其他机器分别执行
source /etc/profile
1
2
3
4
3. 配置Hadoop文件
所有配置文件都在$HADOOP_HOME/etc/hadoop
配置hadoop-env.sh,yarn-env.sh,mapred-env.sh文件,配置Java_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144
1
配置Core-site.xml
<!– 指定HDFS中NameNode的地址 –>
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://hadoop201:9000</value>
</property>
<!– 指定Hadoop运行时产生文件的存储目录 –>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/opt/module/hadoop-2.7.2/data/tmp</value>
</property>
1
2
3
4
5
6
7
8
9
10
配置hdfs-site.xml
 <!– 数据的副本数量 –>
 <property>
     <name>dfs.replication</name>
     <value>3</value>
 </property>
 <!– 指定Hadoop辅助名称节点主机配置 –>
 <property>
     <name>dfs.namenode.secondary.http-address</name>
     <value>hadoop203:50090</value>
 </property>
1
2
3
4
5
6
7
8
9
10
配置yarn-site.xml
 <!– Reducer获取数据的方式 –>
 <property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
 </property>
<!– 指定YARN的ResourceManager的地址 –>
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop202</value>
</property>
<!– 日志聚集功能使能 –>
<property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<!– 日志保留时间设置7天 –>
<property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
</property>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
配置mapred-site.xml
 <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
 </property>
 <!– 历史服务器端地址 –>
 <property>
     <name>mapreduce.jobhistory.address</name>
     <value>hadoop203:10020</value>
 </property>
 <!– 历史服务器web端地址 –>
 <property>
     <name>mapreduce.jobhistory.webapp.address</name>
     <value>hadoop203:19888</value>
 </property>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
配置Slaves
hadoop201
hadoop202
hadoop203
1
2
3
分发配置文件
xsync /opt/module/hadoop-2.7.2/etc
1
格式化Namenode 在hadoop201(只能格式化一次,如需格式化第二次,删除data和logs包)
hdfs namenode -format
1
在hadoop201上启动hdfs
start-dfs.sh
1
在Hadoop202上启动yarn
start-yarn.sh
1
在Hadoop203启动历史服务器
mr-jobhistory-daemon.sh start historyserver
1
测试集群是否搭建成功
mkdir input  在hadoop的安装目录创建文件夹
vim input/input    在input/inout填写一下内容
abc
hadoop fs -put input /   上传到HDFS上
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /input /output
1
2
3
4
5
6
至此环境搭建完成,关闭服务
stop-dfs.sh  在hadoop201执行
stop-yarn.sh  在hadoop202执行
mr-jobhistory-daemon.sh start historyserver  在hadoop203执行
对大数据以及人工智能概念都是模糊不清的,该按照什么线路去学习,学完往哪方面发展,想深入了解,想学习的同学欢迎加入大数据学习qq群:458345782,有大量干货(零基础以及进阶的经典实战)分享给大家,并且有清华大学毕业的资深大数据讲师给大家免费授课,给大家分享目前国内最完整的大数据高端实战实用学习流程体系 。从java和linux入手,其后逐步的深入到HADOOP-hive-oozie-web-flume-python-hbase-kafka-scala-SPARK等相关知识一一分享!
大数据小光头

关于作者: 大数据小光头

为您推荐

广告位

发表评论