①:mapreduce(计算+资源调度)
②:hdfs(数据存储)
③:common(辅助工具)
①:mapreduce(计算)
②:yarn(资源调度)
③:hdfs(数据存储)
④:common(辅助工具)
1.克隆虚拟机(克隆三台,首先配置第一台,剩下两台由于篇幅有限,不再复述,步骤和第一台一样)
修改主机我与地坛赏析名,我设置为hadoop102
hostnamectl t-hostname 你要设置的主机名
关闭防火墙
systemctl stop firewalld.rvice # 关闭防火墙
systemctl disable firewalld.rvice # 禁止开机自启
配置虚拟机网络,可以连通外网和主机
①:修改虚拟机网络为nat模式
②:打开虚拟网络编辑器,将我框起来的ip地址和子网掩码记下来,继续点击nat配设置,同样记下来框起来的,后面要用。
③:从这里开始进入root模式,首先使用如下命令进入网络配置,然后按照我的图修改您的配置,请和我保持一致,没有的东西就自己写上,然后按照我的配置。
vim /etc/sysconfig/network-scripts/ifcfg-ens32 #电脑不同最后面的ens32可能不一样,但是就找差不多的就行
④:重启网络(配置到这里可以ping一下百度之类的,但是还没全部完成,完全按照我的做,应该没问题,我们还需要配置虚拟机之间的连通,所以另外两台虚拟机请按照上面的操作配置。)
systemctl start network.rvice
⑤:配置和另外两台的连通(我三台分别叫hadoop102、hadoop103、hadoop104)
vim /etc/hosts
⑥:测试连接,我们分别ping百度、主机、和另外两台虚拟机,如果如下图,则证明配置成功。
①:在/opt下面新建module和software,分别用来存放安装包和程序
②:使用连接工具将上面我提供的安装包放入software,然后开始安装jdk,首先卸载之前的jdk,命令如下
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64rpm -e --nodeps java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
③:然后解压jdk到module中
tar -zxvf jdk-8u144-linux-x64.tar.gz -c /opt/module/
④:然后配置jdk环境变量,首先获取jdk路径(在解压后的目录运行pwd命令,如下,将这个目录保存下来)
[root@hadoop102 jdk1.8.0_144]$ pwd/opt/module/jdk1.8.0_144
⑤:打开/etc/profile文件
vim /etc/profile
⑥:在profile文件末尾添加jdk路径,保存后退出
#java_homeexport java_home=/opt/module/jdk1.8.0_144export path=$path:$java_home/bin
⑦:安装hadoop,前面的步骤一样,将安装包解压到module中,然后使用pwd获取路径保存,然后打开/etc/profile文件,在profile文件末尾添加jdk路径,保存后退出。
##hadoop_homeexporthadoop_home=/opt/module/hadoop-2.7.2export path=$path:$hadoop_home/binexport path=$path:$hadoop_home/sbin
⑧:让修改后的文件生效
source/etc/profile
⑨:如下图所示,即生效
至此,一台机器的前期准备工作已完成,另外两台完全按照一样的步骤操作,按照我的一步一步来,肯定没问题,该踩的坑我都踩过了hh~
①:在/home/atguigu目录下创建bin目录,并在bin目录下创建xsync文件
mkdir bincd bin/touch xsyncvi xsync
②:文件内容如下
#!/bin/bash#1 获取输入参数个数,如果没有参数,直接退出pcount=$#if((pcount==0)); thenecho no args;exit;fi#2 获取文件名称p1=$1fname=`baname $p1`echo fname=$fname#3 获取上级目录到绝对路径pdir=`cd -p $(dirname $p1); pwd`echo pdir=$pdir#4 获取当前用户名称ur=`whoami`#5 循环for((host=103; host<105; host++)); doecho ------------------- hadoop$host -------------- rsync -rvl $pdir/$fname $ur@hadoop$host:$pdirdone
③:修改脚本 xsync 具有执行权限
chmod 777 xsync
④:调用脚本形式:xsync 文件名称
xsync /home/ironmanjay/bin
注:如果将xsync放到/home/atguigu/bin目录下仍然不能实现全局使用,可以将xsync移动到/usr/local/bin目录下。
这里我们首先配置hadoop102一个主机,配置好之后我们把配置文件使用上面的功能分发下去,这样就实现了集群的配置。
①:配置core-site.xml,在文件中编写如下配置(在hadoop目录下)
vim core-site.xml
<!-- 指定hdfs中namenode的地址--><property> <name>fs.defaultfs</name><value>hdfs://hadoop102:9000</value></property>
<!– 指定hadoop运行时产生文件的存储目录–>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop-2.7.2/data/tmp</value>
</property>
②:配置hadoop-env.sh
[root@hadoop102 hadoop]$ vim hadoop-env.shexport java_home=/opt/module/jdk1.8.0_144
③:配置hdfs-site.xml,在该文件中编写如下配置
vim hdfs-site.xml
<property> <name>dfs.replication</name> <value>3</value></property>
<!– 指定hadoop辅助名称节点主机配置 –>
<property>
<name>dfs.namenode.condary.http-address</name>
<value>hadoop104:50090</value>
</property>
④:配置yarn-env.sh
[root@hadoop102 hadoop]$ vim yarn-env.shexport java_home=/opt/module/jdk1.8.0_144
⑤:配置yarn-site.xml,在该文件中增加如下配置
vim yarn-site.xml
<!-- reducer获取数据的方式--><property> <name>yarn.nodemanager.aux-rvices</name> <value>mapreduce_shuffle</value></property>
<!– 指定yarn的resourcemanager的地址–>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop103</value>
</property>
⑥:配置mapred-env.sh
[root@hadoop102 hadoop]$ vim mapred-env.shexport java_home=/opt/module/jdk1.8.0_144
⑦:配置mapred-site.xml,在该文件中增加如下配置
[root@hadoop102 hadoop]$ cp mapred-site.xml.template mapred-site.xml[root@hadoop102 hadoop]$ vim mapred-site.xml
<!-- 指定mr运行在yarn上--><property> <name>mapreduce.framework.name</name> <value>yarn</value></property>
⑧:在集群上分发配置好的hadoop配置文件
xsync /opt/module/hadoop-2.7.2/
⑨:查看文件分发情况
cat /opt/module/hadoop-2.7.2/etc/hadoop/core-site.xml
①:生成公钥和私钥,然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
[root@hadoop102 .ssh]$ ssh-keygen -t rsa
②:将公钥拷贝到要免密登录的目标机器上
ssh-copy-id hadoop102ssh-copy-id 巧夺天工意思hadoop103ssh-copy-id hadoop104
注:还需要在hadoop102上采用root账号,配置一下无密登录到hadoop102、hadoop103、hadoop104;
还需要在hadoop103上采用atguigu账号配置一下无密登录到hadoop102、hadoop103、hadoop104服务器上。
①:配置slaves,向文件中增加如下内容,注意,严格按照我的格式,不允许有空格,文件中不允许有空行
cd /opt/module/hadoop-2.7.2/etc/hadoop/slavesvim slaveshadoop102hadoop103hadoop104
②:同步所有节点配置文件
xsync slaves
③:如果集群是第一次启动,需要格式化namenode(注意格式化之前,一定要先停止上次启动的所有namenode和datanode进程,然后再删除data和log数据)
[root@hadoop102 hadoop-2.7.2]$ bin/hdfs namenode -format
④:(hadoop102) 启动hdfs,终端输入jps出现下图即成功启动hdfs
[root@hadoop102 hadoop-2.7.2]$ sbin/start-dfs.sh
⑤:(hadoop103) 启动yarn,终端输入jps出现下图即成功启动yarn
[root@hadoop103 hadoop-2.7.2]$ sbin/start-yarn.sh
注意:namenode和resourcemanger如果不是同一台机器,不能在namenode上启动 yarn,应该在resoucemanager所在的机器上启动yarn。
⑥:web端查看condarynamenode
浏览器中输入:http://hadoop102:50090/status.html
查看overview信息,如下图所示,即配置成功
①:各个服务组件逐一启动/停止
# 分别启动/停止hdfs组件hadoop-daemon.sh start / stop nam五经指的是什么书enode / datanode /condarynamenode# 启动/停止yarnyarn-daemon.sh start / stop resourcemanager / nodemanager
②:各个模块分开启动/停止(配置ssh是前提)常用
# 整体启动/停止hdfsstart-dfs.sh / stop-dfs.sh# 整体启动/停止yarnstart-yarn.sh / stop-yarn.sh
①:检查ntp是否安装,如下图即安装
rpm -qa|grep ntp
②:修改ntp配置文件,修改内容如下
vim /etc/ntp.conf
a)修改1(授权192.168.1.0-192.168.1.255网段上的所有机器可以从这台机器上查询和同步时间)
#restrict 192.168.1四级英语听力分值.0mask 255.255.255.0 nomodify notrap为restrict 192.168.1.0 mask255.255.255.0 nomodify notrap
b)修改2(集群在局域网中,不使用其他互联网上的时间)
rver 0.centos.pool.ntp.org iburst
rver 1.centos.pool.ntp.org iburst
rver 2.centos.pool.ntp.org iburst
rver 3.centos.pool.ntp.org iburst为
#rver 0.centos.pool.ntp.org iburst
#rver 1.centos.pool.ntp.org iburst
#rver 2.centos.pool.ntp.org iburst
#rver 3.centos.pool.ntp.org iburst
c)添加3(当该节点丢失网络连接,依然可以采用本地时间作为时间服务器为集群中的其他节点提供时间同步)
rver 127.127.1.0
fudge 127.127.1.0 stratum 10
③:修改/etc/sysconfig/ntpd 文件,增加内容如下(让硬件时间与系统时间一起同步)
vim /etc/sysconfig/ntpdsync_hwclock=yes
④:重新启动ntpd服务
rvice ntpd restart
⑤:设置ntpd服务开机启动
chkconfig ntpd on
到此这篇关于浅析hadoop完全分布式集群搭建问题的文章就介绍到这了,更多相关hadoop集群搭建内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-03 23:22:08,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/46d032abedf7418e3e9b6240bcfc3158.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:浅析Hadoop完全分布式集群搭建问题.doc
本文 PDF 下载地址:浅析Hadoop完全分布式集群搭建问题.pdf
留言与评论(共有 0 条评论) |