zoukankan      html  css  js  c++  java
  • 搭建Hadoop集群框架

    准备工作:
    1.root用户下添加用户,设置密码
    2.修改主机名,vi /etc/sysconfig/network,重启
    3.修改虚拟机的网络设备选项,仅主机模式
    4.切换到root用户,添加权限,vi /etc/sudoers, root ALL=(ALL) ALL
    5.切换会普通用户,修改ifcfg-eth0,sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
    service network restart重启服务 查看ifconfig

    DEVICE=eth0
    HWADDR=08:00:27:A3:67:AE
    TYPE=Ethernet
    UUID=dbf06565-ac4c-4441-9813-a2cb06e01e66
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=static
    IPADDR=192.168.56.125
    GATEWAY=192.168.56.2
    NETMASK=255.255.255.0
    DNS1=8.8.8.8

    6.修改/etc/hosts文件,sudo vi /etc/hosts
    7.关闭防火墙,service iptables stop,sudo chkconfig iptables off,
    8.检查SSH是否已经安装成功 ,rpm -qa | grep openssh,rpm -qa | grep rsync
    9.启动SSH服务,sudo service sshd restart
    10.生成公钥,cd .ssh/,ssh-keygen -t rsa 如果发现ssh目录找不到,原因是因为没有用root用户ssh登录过,执行一下ssh操作就会自动生成了 ssh localhost
    11.公钥拷贝到本机的authorized_keys列表,ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@master (即主机名)
    12.进行SSH免密验证,对于单节点伪分布模式,在主节点(master)进行验证,ssh master (即主机名)

    正式开始:
    1.ssh连接xshell
    2.ssh连接Xftp,用户名,密码
    3.上传jdk,如果是root用户,传到/opt下;如果是普通用户,传到/home/lpy(普通用户名)
    4.解压jdk tar -zxvf jdk... -C ~/app/ ,或者 ~/opt/ ,
    5.查询已有的JDK rpm -qa |grep -i jdk
    6.删除jdk rpm -e --nodeps 包名
    7.配置环境变量 sudo vi /etc/profile
    加入 export JAVA_HOME=/home/lpy/app/jdk1.7.0_79
    export PATH=$PATH:$JAVA_HOME/bin

    生效 source /etc/profile
    8.校验 java -version
    9.解压hadoop sudo tar -zxvf hadoop... -C ~/app/
    10.cd到hadoop-2.6.0-cdh5.7.0包中,再cd到etc/hadoop(etc前面没有/,相对路径),因为hadoop的配置文件都在etc/hadoop目录下
    11.修改3个配置文件
    sudo vi hadoop-env.sh #export JAVA_HOME=${JAVA_HOME}
    export JAVA_HOME=/home/lpy/app/jdk1.7.0_79
    export HADOOP_HOME=/home/lpy/app/hadoop-2.6.0-cdh5.7.0


    core-site.xml (改主机名) <configuration>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:8020</value>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/opt/hdfs/tmp</value>
    </property>
    </configuration>

    hdfs-site.xml <property>
    <name>dfs.replication</name>
    <value>3</value>
    </property>
    <property>
    <name>dfs.name.dir</name>
    <value>/opt/hdfs/tmp/dfs/name</value>
    </property>
    <property>
    <name>dfs.data.dir</name>
    <value>/opt/hdfs/tmp/dfs/data</value>
    </property>
    slaves ->hostname改为master
    12.修改环境变量,追加HADOOP_HOME到/etc/profile中
    sudo vi /etc/profile

    export JAVA_HOME=/home/lpy/app/jdk1.7.0_79
    export PATH=$PATH:$JAVA_HOME/bin
    export HADOOP_HOME=/home/lpy/app/hadoop-2.6.0-cdh5.7.0
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

    source /etc/profile
    13.格式化HDFS
    如果出现java.io.IOException: Cannot create directory /opt/hdfs/tmp/dfs/name/current
    表示目录操作权限不够,需要现在/opt/hdfs/tmp/dfs/name和/opt/hdfs/tmp/dfs/data目录下窗口current目录并设置权限:

    [lpy@master bin]$ cd /opt/
    [lpy@master opt]$ sudo chmod -R a+w /opt/hdfs
    [lpy@master ~]$ cd app/hadoop-2.6.0-cdh5.7.0/bin
    [lpy@master bin]$ hadoop namenode -format

    进入bin目录执行命令 hadoop namenode -format

    13.启动Hadoop并验证安装 进入sbin目录执行命令 sudo ./start-dfs.sh
    [root@master ~]# cd app/hadoop-2.6.0-cdh5.7.0/
    [root@master hadoop-2.6.0-cdh5.7.0]# cd sbin/
    [root@master sbin]# ./start-dfs.sh


    14.检验是否启动成功有两种方法:
    1.通过查看进程
    [lpy@master sbin]$ jps
    3176 DataNode
    3783 Jps
    3089 NameNode
    3664 SecondaryNameNode
    2.通使用浏览器查看
    本机端口号:50070 192.168.56.125:50070
    15.如果想要停止Hadoop可以,进入sbin目录执行命令./stop-dfs.sh


    解决问题:
    Commod not found---》环境变量配置错误或者没有生效
    格式化失败--》进入opt下 rm -rf hdfs目录 重新格式化(检查 core-site.xml hdfs-site.xml)
    少Node 1.先关闭服务再开启 ./stop-dfs.sh ./start-dfs.sh
    2.关闭服务 删除opt下的hdfs 重新格式化

  • 相关阅读:
    Nim or not Nim? hdu3032 SG值打表找规律
    Maximum 贪心
    The Super Powers
    LCM Cardinality 暴力
    Longge's problem poj2480 欧拉函数,gcd
    GCD hdu2588
    Perfect Pth Powers poj1730
    6656 Watching the Kangaroo
    yield 小用
    wpf DropDownButton 源码
  • 原文地址:https://www.cnblogs.com/LEPENGYANG/p/13898712.html
Copyright © 2011-2022 走看看