配置Hadoop集群

来源:互联网 发布:js给下拉列表赋值 编辑:程序博客网 时间:2024/05/29 16:14

一 Centos7安装

这里写图片描述
我选择的是最小安装,如果你想安装别的版本可以去也可以,安装位置我是默认,你有特别的需求可以视自己情况而定
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

选择虚拟机-编辑-虚拟网络编辑器-Nat模式-Nat设置

这里写图片描述

**这里写图片描述**

这里写图片描述

之后等待安装程序完成,重启 即可

二配置Centos
创建hadoop用户并把用户添加到root用户组,创建完成后,使用passwd hadoop,给hadoop用户设置密码
这里写图片描述

使用命令visudo,使用户hadoop拥有临时root权限,注意:中间用Tab隔开,然后保存退出
这里写图片描述
使用命令vi /etc/hostname,修改主机名,修改完成后,使用命令reboot重启,使用命令hostname就可以看到主机名了
这里写图片描述
使用 vi /etc/sysconfig/network-scripts/ifcfg-ens33,修改网络配置(IP地址等 获取:选择虚拟机-编辑-虚拟网络编辑器-Nat模式-Nat设置)。
这里写图片描述
使用vi /etc/hosts,修改hosts
这里写图片描述
以上步骤是主机的,丛机和主机步骤一样,ip地址、主机名不能一样

这一步是window和虚拟机centos连通
这里写图片描述

先设置Vmnet8
这里写图片描述

设置ip地址,网关,子网掩码
这里写图片描述

在window电脑C:\Windows\System32\drivers\etc中的hosts文件中
这里写图片描述

作完以上的步骤,主机和丛机就可以连通了,同时主机和丛机也能ping通外网,window也能和主机丛机互相ping通了(可以使用这个命令systemctl restart network重启网络服务,主机和丛机互相ping)

关闭防火墙和selinux(都是临时的,重启要重新关闭,主机和丛机都要关闭)
使用systemctl stop firewalld关闭防火墙,使用systemctl status firewalld查看防火墙状态
selinux关闭:setenforce 0关闭 getenforce查看状态
这里写图片描述

以上操作实在root下操作的,主机和丛机都是

三SSH无密码登录
首先主机和丛机都切换到到hadoop用户
1.使用ssh localhost登录hadoop用户,然后使用exit退出
2.使用ls -a 看到.ssh目录,使用cd .ssh/进入到.ssh中,执行ssh-keygen -t rsa生成公钥(一路回车)
这里写图片描述
3.执行cat id_rsa.pub >> authorized_keys,使用chmod 600 authorized_keys改变权限
4.执行scp authorized_keys hadoop@slave:~/.ssh把master的公钥传到从机上去
这里写图片描述
5.使用ssh slave,这时候就可以无密码登录到slave了

1-5步是主机操作步骤,丛机只需执行第1步,然后执行ls -a,有.ssh文件夹就可以了

四.配置环境变量
1配置JDK(主机和丛机都配置)
首先要把jdk传上去,我用的是Xshell工具传上去的
(1).先执行sudo yum install -y jdk*安装jdk (*号是你的版本号,你自己安装什么版本,换成什么版本),然后cd~。
这里写图片描述
(2).执行vi .bashrc开始配置jdk环境变量
这里写图片描述

2.配置hadoop(主机和丛机都配置)

(1).首先要把hadoop-2.7.3.tar.gz传上去,自己可以去官网下一个(我用的是Xshell工具传上去的)
(2).执行tar -xzvf hadoop-2.7.3.tar.gz 解压hadoop,执行vi .bashrc开始配置hadoop环境变量

# Hadoop Environment Variablesexport HADOOP_HOME=/home/hadoop/hadoop-2.7.3(这个是我的地址)export HADOOP_INSTALL=$HADOOP_HOMEexport HADOOP_MAPRED_HOME=$HADOOP_HOMEexport HADOOP_COMMON_HOME=$HADOOP_HOMEexport HADOOP_HDFS_HOME=$HADOOP_HOMEexport YARN_HOME=$HADOOP_HOMEexport HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/nativeexport PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

(3).执行source .bashrc重新加载环境变量
(4).在centos中进入/home/hadoop/hadoop-2.7.3/etc/hadoop把:core-site.xml,hdfs-site.xml,mapred-site.xml,template,slaves,yarn-site.xml这五个文件放到window下修改,修改完毕之后从哪来的放回哪去。(这五个文件主机和丛机都的修改)

文件core-site.xml修改成:

<configuration>    <property>            <name>fs.defaultFS</name>            <value>hdfs://master:9000</value>(这里是master是主机名)    </property>    <property>            <name>hadoop.tmp.dir</name>            <value>file:/home/hadoop/hadoop-2.7.3/tmp</value>    </property></configuration>

文件mapred.xml修改成 (这里在原文件夹下它的名字是mapred.xml.template,要把.template去掉):

<configuration>     <property>            <name>mapreduce.framework.name</name>            <value>yarn</value>    </property>    <property>            <name>mapreduce.jobhistory.address</name>            <value>master:10020</value>    </property>    <property>            <name>mapreduce.jobhistory.webapp.address</name>            <value>master:19888</value>    </property></configuration>

文件hdfs.xml修改成:

<configuration>    <property>            <name>dfs.namenode.secondary.http-address</name>            <value>master:50090</value>    </property>    <property>            <name>dfs.replication</name>            <value>1</value>    </property>    <!--临时目录文件位置-->    <property>            <name>dfs.namenode.name.dir</name>            <value>file:/home/hadoop/hadoop-2.7.3/tmp/dfs/name</value>    </property>    <property>            <name>dfs.datanode.data.dir</name>            <value>file:/home/hadoop/hadoop-2.7.3/tmp/dfs/data</value>    </property></configuration>

文件yarn.xml修改成:

    <configuration>    <!-- Site specific YARN configuration properties -->        <property>            <name>yarn.resourcemanager.hostname</name>            <value>master</value>        </property>        <property>            <name>yarn.nodemanager.aux-services</name>            <value>mapreduce_shuffle</value>        </property>    </configuration>

文件slave:这里面是所有丛机的主机名
(5).执行hdfs namenode -format格式化所有节点(在主机上执行)
这里写图片描述

五 启动hadoop

1.在Master节点启动 按顺序启动(jps查看)
jps查看所有进程
(1)执行start-dfs.sh(如果需要关闭执行stop-dfs.sh)
这里写图片描述
(2)执行start-yarn.sh(如果需要关闭执行stop-yarn.sh)
这里写图片描述
(3)执行mr-jobhistory-daemon.sh start historyserver(如果需要关闭执行mr-jobhistory-daemon.sh stop historyserver)
这里写图片描述

六外部网络查看日志
查看之前要确定防火墙和selinux关闭了
查看本机的端口状态:netstat -an(产看是否有8088 , 9000 50070等)

(1)在浏览器执行master:8088
这里写图片描述
(2)在浏览器执行master:50070
这里写图片描述
到这里一个基本的集群就配置好了!!
如果过程中有不足之处,还请大家见谅!!

原创粉丝点击