美文网首页我爱编程
Hadoop读书笔记:CentOS装Hadoop集群

Hadoop读书笔记:CentOS装Hadoop集群

作者: 萝卜头_东契奇 | 来源:发表于2017-10-07 15:29 被阅读0次

    HADOOP集群搭建

    1.集群简介

    Hadoop集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起。

    HDFS集群:负责海量数据的存储,集群中的角色主要有   NameNode  / DataNode。

    YARN集群:负责海量数据运算时的资源调度,集群中的角色主要有ResourceManager / NodeManager。

    本集群搭建案例,以3节点为例进行搭建。

    2.服务器准备

    本案例使用虚拟机服务器搭建HADOOP集群,所用软件及版本:

    VMware® Workstation 12 Pro  12.5.6

    CentOS 6.5   64 bit

    JDK 1.8  linux  64bit

    Hadoop 2.8.1

    3.网络环境配置

    采用NAT方式联网、网关地址自定如:192.168.220.1、3个节点IP地址如(192.168.220.128, 192.168.220.129, 192.168.220.130)、子网掩码:255.255.255.0

    话不多说开始在VMware装CentOS系统

    先打开VMware,我之前已经装好了再重新装个CentOS系统

    图一

    在导航栏点击编辑    选择虚拟网络编辑器     就可以设置网段和网关

    图二:设置网络 图三:设置网络

    然后创建新的虚拟机(我之间已经创建了一个master虚拟器现在再建个master2)

    图四:创建虚拟机 图五:创建虚拟机 图六:创建虚拟机 图七:创建虚拟机 图八:创建虚拟机 图九:创建虚拟机 图十:创建虚拟机 图十一:创建虚拟机 图十二:创建虚拟机

    安装CentOS系统

    图一:安装CentOS系统 图二:安装CentOS系统 图三:安装CentOS系统 图四:安装CentOS系统 图五:安装CentOS系统 图六:安装CentOS系统 图七:安装CentOS系统 图八:安装CentOS系统 图九:安装CentOS系统 图十:安装CentOS系统 图十一:安装CentOS系统 图十二:安装CentOS系统 图十三:安装CentOS系统 图十四:安装CentOS系统 图十五:安装CentOS系统 图十六:安装CentOS系统 图十七:安装CentOS系统 图十八:安装CentOS系统 图十九:安装CentOS系统 图二十:安装CentOS系统 图二十一:安装CentOS系统 图二十二:安装CentOS系统 图二十三:安装CentOS系统 图二十四:安装CentOS系统 图二十五:安装CentOS系统 图二十六:安装CentOS系统 图二十七:安装CentOS系统

    恭喜你已经成功安装好CentOS系统!

    4.准备SSH连接工具

    Xshell  SecureCRT(我用着这个)

    SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。

    查看用户的IP地址:

    图一:IP地址

    用SecureCRT工具连接虚拟机只要配置下IP地址  用户名和密码就可以,具体细节就不介绍。

    SSH连接虚拟机

    修改主机名及其对应的IP地址

    sudo vi /etc/hosts(之前配过一次就把之前的master信息拿过来)

    需要在slave01和slave02机子上弄同样的配置

    (还需要ping一下看能不能同如:ping slave01)

    配置主机名及对应IP地址

    修改用户权限

    先切换到root用户 su root

    修改 /etc/sudoers 文件,找到下面两行

    ## Allow root to run any commands anywhere

    root    ALL=(ALL)      ALL

    加上一行比如我的用户是hadoop所以:hadoop    ALL=(ALL)     ALL

    每台机子关闭防火墙

    关闭虚拟机防火墙:

    关闭命令:  service iptables stop

    永久关闭防火墙:chkconfig iptables off

    两个命令同时运行,运行完成后查看防火墙关闭状态

    service iptables status

    1 关闭防火墙-----service iptables stop

    2 启动防火墙-----service iptables start

    3 重启防火墙-----service iptables restart

    4 查看防火墙状态--service iptables status

    5 永久关闭防火墙--chkconfig iptables off

    6 永久关闭后启用--chkconfig iptables on

    先查看防火墙状态

    service iptables status(需要换root用户或前面加上sudo)

    查看防火墙状态

    永久关闭selinux: vi /etc/selinux/config(普通用户前面加个sudo)

    找到SELINUX 行修改成为:SELINUX=disabled:

    永久关闭selinux

    关闭防火墙-----service iptables stop(普通用户加个sudo),sudo chkconfig iptables off  重启后生效

    重启后再查看状态sudo  service iptables status

    关闭防火墙 防火墙状态

    配置JDK

    下载jdk就不多说了我下的是(jdk-8u131-linux-x64.tar.gz)

    安装在哪个路径下可以自己定(我装下/home/hadoop(用户)  路径下  mkdir java  也可以装下别的路径下)

    SFTP传送JDK

    put(空) +文件路径    上传

    上传JDK 查看上传JDK包

    解压 tar -zxvf  jdk-8u131-linux-x64.tar.gz

    修改配置文件:sudo vi /etc/profile

    在这行下面加上:export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

    export JAVA_HOME=/home/hadoop/java/jdk1.8.0_131

    export PATH=$JAVA_HOME/bin:$PATH

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    配置文件

    重启:source /etc/profile    然后查看   java -version


    重启查看

    配置SSH免密登录

    进入.ssh目录 ( ll -a 才能看见)

    进入.ssh目录

    ssh-keygen -t rsa  一路回车 生成两个文件一个公钥一个私钥:cp id_rsa.pub authorized_keys

    生成公钥和私钥

    修改authorized_keys权限:chmod 644 authorized_keys

    此时重启ssh服务:sudo service sshd restart

    ssh master      第一次连接要输入yes

    本机实现无密登录

    与其它节点实现免密登录

    把master节点中把authorized_keys分发到各个结点上(会提示输入密码):

    scp /home/hadoop/.ssh/authorized_keys slave01:/home/hadoop/.ssh

    scp /home/hadoop/.ssh/authorized_keys slave02:/home/hadoop/.ssh

    然后在各个节点对authorized_keys执行(一定要执行该步,否则会报错):chmod 644 authorized_keys

    ssh slave01

    其它节点实现免密登录

    装Hadoop

    同样用sftp,先在/home/hadoop目录下创建hadoop文件

    解压

    修改配置文件:

    进入hadoop-2.8.1/etc/hadoop目录下

    hadoop-env.sh:

    export  JAVA_HOME=/home/hadoop/java/jdk1.8.0_131   (jdk安装的路径 如果不知道  echo $JAVA_HOME)


    配置hadoop-env.sh

    core-site.xml:

    <configuration>

    <property>

    <name>hadoop.tmp.dir</name>

    <value>file:/home/hadoop/hadoop/hadoop-2.8.1/tmp</value>

    </property>

    <property>

    <name>fs.defaultFS</name>

    <value>hdfs://master:9000</value>

    </property>

    </configuration>

    配置core-site.xml

    hdfs-site.xml:

    <configuration>

    <property>

    <name>dfs.namenode.secondary.http.address</name>

    <value>master:50090</value>

    </property>

    <property>

    <name>dfs.replication</name>

    <value>3</value>

    </property>

    <property>

    <name>dfs.namenode.name.dir</name>

    <value>file:/home/hadoop/hadoop/hadoop-2.8.1/tmp/dfs/name</value>

    </property>

    <property>

    <name>dfs.datanode.data.dir</name>

    <value>file:/home/hadoop/hadoop/hadoop-2.8.1/tmp/dfs/data</value>

    </property>

    </configuration>

    hdfs-site.xml配置

    mapred-site.xml:

    <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>

    <configuration>

    <property>

    <name>yarn.resourcemanager.hostname</name>

    <value>master</value>

    </property>

    <property>

    <name>yarn.nodemanager.aux-services</name>

    <value>mapreduce_shuffle</value>

    </property>

    </configuration>

    yarn-site.xml配置

    slaves:

    master

    slave01

    slave02

    系统配置文件:sudo vi /etc/profile    修改后 source /etc/profile

    export HADOOP_HOME=/home/hadoop/hadoop/hadoop-2.8.1

    export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

    系统配置修改

    将hadoop分发到各个节点

    scp -r /home/hadoop/hadoop slave01:/home/hadoop

    scp -r /home/hadoop/hadoop slave02:/home/hadoop

    (再配置系统配置,就是把HADOOP环境变量配下)

    在master节点格式化hdfs

    hdfs namenode -format

    格式化

    启动HDFS

    start-dfs.sh

    启动YARN

    start-yarn.sh

    分别在各个主机上执行 jps 查看服务情况

    master slave01 slave02

    web 访问页面

    http://master:50070/

    成功

    恭喜成功了!

    这是第二遍配置总结下第一遍配置遇到的一些坑:

    1.第一遍配置讲每个主机的普通用户都设置不一样SSH无密连接老是不成功,需要将每个主机普通用户设为一样

    2.防火墙忘记关掉

    3.生成秘钥的那个权限需要修改

    4.我第一次将hadoop目录放在/usr下 用户权限是root的 一些操作老是不成功 改放在/home目录下权限是普通用户的就成功了

    相关文章

      网友评论

        本文标题:Hadoop读书笔记:CentOS装Hadoop集群

        本文链接:https://www.haomeiwen.com/subject/sobgextx.html