zoukankan      html  css  js  c++  java
  • Hadoop详细安装步骤

    hadoop安装:(分布式模式)
    参考地址:http://dblab.xmu.edu.cn/blog/install-hadoop/
    http://dblab.xmu.edu.cn/blog/install-hadoop-cluster/
    1、安装包准备, Ubuntu 14.04 64位 作为系统环境;hadoop2版本:hadoop2.6.0
    2、虚拟机完毕后,nat模式下设置静态ip
    --此时如果你的虚拟机没有网时,注意在虚拟机的虚拟网络编辑器里面,将联网模式改成nat或者桥接模式(速度较快)
    先更新ubantu:sudo apt-get update
    先安装vim编辑器:sudo apt-get install vim
    Ubantu设置ip:

    1、sudo vim /etc/NetworkManager/NetworkManager.conf

       将false改成true

    2、修改配置文件/etc/network/interfaces
    sudo vim /etc/network/interfaces
    添加以下内容:(具体ip根据nat下面的地址来配喔)
    auto eth0 //设置自动启动eth0接口
    iface eth0 inet static //配置静态IP
    address 192.168.66.106 //IP地址
    netmask 255.255.255.128 //子网掩码
    gateway 192.168.66.2  //网关和nat配置中要一致,下面的dns也得这样

    dns-nameservers 192.168.66.2

    3、重启网络,使配置生效:sudo /etc/init.d/networking restart
    4、重启机器:sudo shutdown -r now
    3、查看有无ssh ①.ssh localhost ②.没有则安装ssh:sudo apt-get install ssh
    4、ssh 互信生产密钥:进入.ssh目录下;执行命令: ssh-keygen -t rsa ;cat ./id_rsa.pub >> ./authorized_keys
    并将authorized_keys scp给下面的datanode节点的机器
    5、安装Java环境
    sudo apt-get install openjdk-7-jre openjdk-7-jdk
    6、配置环境变量$JAVA_HOME
    ①、查询java_home目录:
    dpkg -L openjdk-7-jdk | grep '/bin/javac' 结果 /bin/javac 之前为JAVA_HOME路径
    ②、在 ~/.bashrc 中进行设置$JAVA_HOME环境变量:export JAVA_HOME=JDK安装路径
    7、创建hadoop用户
    sudo useradd -m hadoop -s /bin/bash #创建了可以登陆的 hadoop 用户,并使用 /bin/bash 作为 shell。
    sudo passwd hadoop #设置密码
    sudo adduser hadoop sudo #hadoop 用户增加管理员权限
    8、安装Hadoop2
    ①、sudo tar -zxf ~/下载/hadoop-2.6.0.tar.gz -C /usr/local # 解压到/usr/local中
    ②、cd /usr/local/ # 就安装到/usr/local中
    ③、sudo mv ./hadoop-2.6.0/ ./hadoop # 将文件夹名改为hadoop
    ④、sudo chown -R hadoop ./hadoop # 修改文件权限
    9、Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:
    cd /usr/local/hadoop
    ./bin/hadoop version
    10、因为要使用命令更加方便不再使用"./"命令来执行,故配置环境变量 $PATH
    ①、在 ~/.bashrc 中进行设置$PATH环境变量:export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin
    注释:/etc/usr/local/hadoop/bin 此目录为hadoop操作命令
    /etc/usr/local/hadoop/bin 此目录为hadoop开启关闭命令
    11、此时如果运行hadoop时会报错,说$JAVA_HOME未配置
    原因在于还需更改配置文件:
    sudo vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
    需要将里面配置的$JAVA_HOME的环境变量改为绝对路径: export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
    12、Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:
    cd /usr/local/hadoop
    ./bin/hadoop version
    13、节点机器名称和ip映射关系配置
    节点机器名配置:sudo vim /etc/hostname
    namenode ----Master
    datenode ----Slave1
    节点机器映射关系配置:/etc/sysconfig/network
    192.168.1.121 Master
    192.168.1.122 Slave1
    13、分布式模式还需配置:
    ①、/usr/local/hadoop/etc/hadoop/ 路径下hadoop的配置文件,用于配置namenode,datanode等
    一, 文件 slaves,将作为 DataNode 的主机名写入该文件,每行一个,默认为 localhost,所以在伪分布式配置时,节点即作为 NameNode 也作为 DataNode。分布式配置可以保留 localhost,也可以删掉,让 Master 节点仅作为 NameNode 使用。
    本教程让 Master 节点仅作为 NameNode 使用,因此将文件中原来的 localhost 删除,只添加一行内容:Slave1。
    二、文件 core-site.xml 改为下面的配置:
    <configuration>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://Master:9000</value>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/hadoop/tmp</value>
    <description>Abase for other temporary directories.</description>
    </property>
    </configuration>
    三、文件 hdfs-site.xml,dfs.replication 一般设为 3,但我们只有一个 Slave 节点,所以 dfs.replication 的值还是设为 1:
    <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:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
    </configuration>
    四、文件 mapred-site.xml (可能需要先重命名,默认文件名为 mapred-site.xml.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>
    五、文件 yarn-site.xml:
    <configuration>
    <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>Master</value>
    </property>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    </configuration>
    六、Slave1 datanode节点同样配置如上。
    14、配置完后初始化配置:
    hdfs namenode -format
    15、启动 hadoop 了,启动需要在 Master 节点上进行:
    start-all.sh

    start-dfs.sh
    start-yarn.sh
    mr-jobhistory-daemon.sh start historyserver
    16、通过jps命令查看hadoop进程
    此时Msater有五个进程,Slave1 有三个进程
    另外还需要在 Master 节点上通过命令 hdfs dfsadmin -report 查看 DataNode 是否正常启动,如果 Live datanodes 不为 0 ,则说明集群启动成功。
    例如我这边一共有 1 个 Datanodes: 结果就为1
    也可以通过 Web 页面看到查看 DataNode 和 NameNode 的状态:http://master:50070/。

    17、首先创建 HDFS 上的用户目录:
    hadoop fs -mkdir -p /user/hadoop
    将 /usr/local/hadoop/etc/hadoop 中的配置文件作为输入文件复制到分布式文件系统中:
    hadoop fs -mkdir input
    hadoop fs -put /usr/local/hadoop/etc/hadoop/*.xml input
    接着就可以运行 MapReduce 作业了:(在hdfs上的input目录所有文件中,查询dfs开头;执行比较慢,大概6分钟)
    hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'
    可以通过 Web 界面查看任务进度 http://master:8088/cluster
    SUCCEEDED 表示完成
    18、关闭 Hadoop 集群也是在 Master 节点上执行的:
    stop-all.sh

    stop-yarn.sh
    stop-dfs.sh
    mr-jobhistory-daemon.sh stop historyserver

    欢迎对it热情的同学,加qq进行技术讨论; QQ:850922253
  • 相关阅读:
    java内存区域
    [POJ] John‘s trip | 欧拉回路 | 边序列字典序最小 + 建图
    [POJ | Nowcoder] Watchcow | 欧拉回路 点路径输出
    [UPC | 山东省赛] The Largest SCC | Tarjan强连通分量瞎搞 + 状态还原
    [Luogu] 炸铁路 | Tarjan 割边
    [HDU 4738] Caocao‘s Bridges | Tarjan 求割边
    [Codeforces 1586] Omkar and Determination | 思维前缀和
    [UVA 1599] Ideal Path | 细节最短路
    [North Central NA Contest 2018] Rational Ratio | 规律 细节模拟
    [HDU 7136] Jumping Monkey | 并查集 | 逆向思维
  • 原文地址:https://www.cnblogs.com/zhangwensi/p/6410708.html
Copyright © 2011-2022 走看看