美文网首页我爱编程
hadoop学习笔记(2.1)Hadoop基本环境搭建

hadoop学习笔记(2.1)Hadoop基本环境搭建

作者: 桐间纱路 | 来源:发表于2018-03-05 16:15 被阅读0次

以5台服务器为例(node1-node5)

node1为namenode,node2为SecondaryNameNode,其余为datanode

步骤

    修改每台服务器hostname:vi /etc/hostname 分别改为 node1、node2、node3、node4、node5

    修改每台服务器的hosts映射:vi /etc/hosts 增加

            192.168.1.200    node1

            192.168.1.201    node2

            192.168.1.202    node3

            192.168.1.203    node4

            192.168.1.204    node5

    修改之后重启

    1.时间同步:ntpdate -u edu.ntp.org.cn

        关闭网络hosts防火墙

    2.安装jdk

    3.上传hadoop安装文件并解压

    4.免密钥登录:node1到node1-5

    5.修改配置文件

        hadoop_env.sh中的JAVA_HOME

        core-site.xml

        hdfs-site.xml

        slaves 指定datanode

        手动创建masters 指定SecondaryNameNode

    6.同步配置文件

    7.格式化namenode:hdfs namenode -format

    8.启动 start-dfs.sh

 配置 /etc/profile :增加

    export HADOOP_HOME=/home/gaojz/hadoop/hadoop-2.7.5(hadoop文件目录)

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

免密钥登录:

    进入node1执行命令:ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

                                     cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

    这两行指令实现node1对node1的免密钥登录,如果仍需密码可以尝试修改/home下用户文件的权限。命令是:

                    chmod g-w /home/xxx  (xxx为用户名)

                    chmod 700 /home/xxx/.ssh  (xxx为用户名)

                    chmod 600 /home/xxx/.ssh/authorized_keys (xxx为用户名)

        node1对node1成功之后,将~/.ssh/路径的下公钥文件id_rsa利用scp命令拷贝到另外几台服务器中(不要放在~/.ssh目录下,会覆盖掉本身的公钥文件),然后在其他服务器用cat xxx/id_rsa.pub >> ~/.ssh/authorized_keys命令将公钥写入authorized_keys中(xxx为id_rsa.pub存放路径)。

配置文件修改(在hadoop目录下的etc目录或者etc/hadoop目录中)

修改hadoop_env.sh中的JAVA_HOME为jdk安装目录

core-site.xml配置

    <configuration>

        <property>

            <name>fs.defaultFS</name> (hdfs访问入口,node1为namenode,设为node1的9000端口)

            <value>hdfs://node1:9000</value>

        </property>

        <property>

            <name>hadoop.tmp.dir</name>(数据存放目录,建议修改,默认为临时目录)

            <value>/home/gaojz/opt/hadoop</value>(必须是一个空的或者不存在的文件夹)

        </property>

    </configuration>

hdfs-site.xml配置

    <configuration>

        <property>

            <name>dfs.replication</name>(配置副本数量,默认为3)

            <value>3</value>

        </property>

        <property>

            <name>dfs.namenode.secondary.http-address</name>(SecondaryNameNode的http访问路径)

            <value>node2:50090</value>(node2为secongarynamenode,所以为node2的50090端口)

        </property>

        <property>

            <name>dfs.namenode.secondary.https-address</name>

            <value>node2:50091</value>(secondarynamenode的https访问路径)

        </property>

    </configuration>

slaves文件配置

    slaves用来配置所有datanode,打开slaves添加如下配置:

        node3

        node4

        node5

创建masters文件,以指定secondarynamenode,添加:

    node2

在node1上

    格式化namenode:hdfs namenode -format( 首次启动格式化)

    启动 start-dfs.sh

之后可以访问192.168.1.200:50070以访问namenode或者192.168.1.201:50090访问secondarynamenode

相关文章

网友评论

    本文标题:hadoop学习笔记(2.1)Hadoop基本环境搭建

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