Hadoop分布式环境搭建

来源:互联网 发布:centos owncloud 安装 编辑:程序博客网 时间:2024/05/21 16:54

一、搭建分布式集群

三台主机:Master   Worker1     Worker2   1.克隆虚拟机,至少3台达到分布式的效果    克隆完后,需分别配置网络和映射2.新建一个目录搭建集群    mkdir app3.解压Hadoop安装包和安装JDK     *-env.sh文件配置:        export JAVA_HOME=/opt/modules/jdk1.7.0_674.创建目录$ mkdir -p data/tmp    设置目录权限 sudo chown -R hadoop:hadoop app/5.配置core-site.xml      <property>            <name>fs.defaultFS</name>            <value>hdfs://Master:8020</value>        </property>        <property>            <name>hadoop.tmp.dir</name>            <value>/opt/app/hadoop-2.5.0/data/tmp</value>        </property>6.配置hdfs-site.xml     <property>            <name>dfs.namenode.secondary.http-address</name>            <value>Worker2:50090</value>        </property>7.配置slaves        IP地址 Master        IP地址 Worker1        IP地址 Worker28.配置yarn-site.xml    <property>            <name>yarn.nodemanager.aux-services</name>            <value>mapreduce_shuffle</value>        </property>        <property>            <name>yarn.resourcemanager.hostname</name>            <value>Worker1</value>        </property>        <property>            <name>yarn.log-aggregation-enable</name>            <value>true</value>        </property>        <property>            <name>yarn.log-aggregation.retain-seconds</name>            <value>106800</value>        </property>9.配置mapred-site.xml    <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>10.删除Hadoop安装包下的share/doc目录,减少拷贝过程的时间11.通过远程拷贝将安装主目录的配置文件信息分发到各个节点上去,分发前要在各个节点创建目录    scp -r hadoop-2.5.0/ Worker1:/opt/app/    scp -r hadoop-2.5.0/ Worker1:/opt/app/    在分发之前要在相应的主机上创建相应的目录,并设置权限12.格式化namenode    $ bin/hdfs namenode -format13.启动HDFS模块:    $ sbin/hadoop-daemon.sh start namenode   主节点启动    $ sbin/hadoop-daemon.sh start datanode   主节点启动、各个子节点启动    $ sbin/hadoop-daemon.sh start secondarynamenode   第二个子节点启动14.查看集群的ID,集群的ID是唯一的,需要都相同    more data/tmp/dfs/data/current/VERSION        clusterID=CID-4541b2fa-73b5-4dcc-b2f4-e71382c695f3        clusterID=CID-4541b2fa-73b5-4dcc-b2f4-e71382c695f3        clusterID=CID-4541b2fa-73b5-4dcc-b2f4-e71382c695f315.测试HDFS文件系统创建、上传、读取16.启动YARN模块        $ sbin/yarn-daemon.sh start resourcemanager  第一节点启动        $ sbin/yarn-daemon.sh start nodemanager    各个节点都启动17.启动历史服务器        $ sbin/mr-jobhistory-daemon.sh start historyserver   主节点启动

二、配置ssh无秘钥登录

cd /home/hadoop/.ssh  进入到ssh目录rm -rf ./*     删除目录下的所有文件ssh-keygen -t rsa    生成公钥和私钥ssh-copy-id Master   将公钥分发到各个节点ssh Master    测试是否配置成功

三、集群时间同步

1、集群节点之间要求时间同步2、在内网中,无法连接互联网,所以在集群中找一台机器作为时间服务器3、集群中的其他所有机器都跟这台时间服务器进行时间同步4、$ sudo rpm -qa | grep ntp5、查看时间服务的服务    $ sudo service ntpd status    启动:$ sudo service ntpd start6、设置开机启动时间服务器服务    $ sudo chkconfig ntpd on7.修改配置文件    sudo vi /etc/ntp.conf    修改为自己的网段:     # Hosts on local network are less restricted.    #restrict IP地址 mask 255.255.255.0 nomodify notrap    将这三行打上#注释掉    #server 0.centos.pool.ntp.org    #server 1.centos.pool.ntp.org    #server 2.centos.pool.ntp.org    将前面的注释去掉    server  127.127.1.0     # local clock    fudge   127.127.1.0 stratum 10    修改完后重启服务:    $ sudo service ntpd restart    8.写Linux定时任务:每十分钟执行同步一次    crontab -e    ##sync time    0-59/10 * * * * /usr/sbin/ntpdate Master9.重启服务    service crond restart10.执行时间同步    $ sudo /usr/sbin/ntpdate Master11.同步系统与BIOS系统时间同步    $ sudo vi /etc/sysconfig/ntpd    添加: SYNC_HWCLOCK=yes12.在启动服务之后的3-5分钟才能使用时间同步命令
2 0
原创粉丝点击