• 企业级大数据hadoop的安装


    一.准备装备
      1.centOS7镜像
      2.jdk1.8
      3.hadoop2.7.4

    二.配置虚拟机环境 (使用root)
      1.给虚拟机添加hadoop用户

    useradd -m hadoop -G root -s /bin/bash    #创建用户
    passwd    #设置密码

      2.修改虚拟机网络配置,在虚拟机中编辑----编辑虚拟机网络---设置vmware8NAT模式---ip地址与本机的ip在同一网段
                                                      备注:克隆虚拟机之后
      3.修改当前虚拟机ip

    vi /etc/sysconfig/network-scripts/ifcfg-ens33

    插入如下内容:

    BOOTPROTO=none
    ONBOOT=yes
    IPADDR=192.168.189.150# 备注:修改此处ip地址为自己的ip
    PREFIX=24
    GATEWAY=192.168.189.2#自己的网关
    DNS1=202.103.0.20


      (修改完ip,按esc键,执行:wq 回车保存退出,执行systemctl restart network命令,上二是默认的网关,具体子网段根据你的配置)
    重新加载网络配置,修改ip之后需要重启网络,

    执行命令:

    systemctl restart network

    4.设置windows系统中ip地址
    5.修改hostname

    vi /etc/hostname 

    删除原有内容添加master
    6.修改hosts

    vi /etc/hosts 

    添加如下内容

    192.168.189.150    主机1名称
    192.168.189.151     主机2名称

    !!!!保证两台机器可以ping通.
    备注:后期不能用root用户登录,使用hadoop用户
    在xshell中,新建会话属性---用户身份登录----固定登录用户hadoop


    三.配置ssh无密码登陆 (使用hadoop)

    备注:首先,ssh 主机名    命令,登录提示yes/no?,选择yes,输入密码hadoop
    登录进去之后,ls -a 命令,列出hadoop用户所有文件,包括 .ssh文件,
    执行以下命令:

    1.cd .ssh
    2.ssh-keygen -t rsa #遇到提示一路回车就行,共三次回车
    3.||     #会看到 id_rsa id_rsa.pub 两文件前为私钥,后为公钥
    4.cp id_rsa.pub authorized_keys #把公钥复制成一个新的文件(名字不可变)
    5.chmod 600 authorized_keys #修改文件权限,重要不要忽略
    6.将hadoop-master的公钥传送到所有的slave上,实现hadoop-master无密码登陆到所有slave上
    scp authorized_keys hadoop@slave:~/.ssh/
    7.在每个slave的服务上输入
    cd .ssh
    chmod 600 authorized_keys

    四.安装jdk,首先解压jdk

    tar -zxvf jdk-8u144-linux-x64.tar.gz,

    解压之后
    执行下面操作:

      安装jdk
    1.jdk环境变量

    vi /home/hadoop/.bashrc

    添加:

    export JAVA_HOME=/home/hadoop/jdk
    export PATH=$PATH:$JAVA_HOME/bin

    2.重新加载配置文件

    source /home/hadoop/.bashrc

      .安装hadoop
    1.hadoop环境变量

    vi /home/hadoop/.bashrc

    输入:

    # Hadoop Environment Variables
    export HADOOP_HOME=/home/hadoop/hadoop
    export HADOOP_INSTALL=$HADOOP_HOME
    export HADOOP_MAPRED_HOME=$HADOOP_HOME
    export HADOOP_COMMON_HOME=$HADOOP_HOME
    export HADOOP_HDFS_HOME=$HADOOP_HOME
    export YARN_HOME=$HADOOP_HOME
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
    export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

    配置hadoop里的各种文件:

    cd 主机名/etc/hadoop
    1.core-site.xml
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/home/hadoop/hadoop/tmp</value>
    </property>
    2.hdfs-site.xml
    <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>master:50090</value>
    </property>
    <property>
    <name>dfs.replication</name>
    <value>2</value>
    </property>
    <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/home/hadoop/hadoop/tmp/dfs/name</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/home/hadoop/hadoop/tmp/dfs/data</value>
    </property>
    3.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>
    4.yarn-site.xml
    <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
    </property>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    5.slaves
    主机1
    主机2
    。。。

    2.关闭防火墙 (使用root)

    1.systemctl stop firewalld.service #停止firewall
    2.systemctl disable firewalld.service #禁止firewall开机启动
    3.firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running

    3.启动hadoop集群 (在master用户上启动,使用hadoop用户)

    hdfs namenode -format #第一次启动要执行格式化,之后启动不用执行这个
    start-dfs.sh
    start-yarn.sh
    mr-jobhistory-daemon.sh start historyserver

    4.测试hadoop

    1.先在集群上创建hello目录 
    hdfs dfs -mkdir /hello
    2.讲写好的文件上传到创建好的hello目录 
    hdfs dfs -put /home/hadoop/hello.txt /hello
    3.执行hadoop自带的案例,统计dfs开头的信息 
    hadoop -jar hadoop-mapreduce-examples-2.7.4.jar 
    wordcount 
    /hello/hello.txt 
    /hello/output
    4.查看执行结果,wordcount可以分辨出使用空格隔开的单词.
    hdfs dfs -cat /hello/output/*

    5.关闭hadoop集群

    1.stop-dfs.sh
    2.stop-yarn.sh
    3.mr-jobhistory-daemon.sh stop historyserver

    至此,hadoop的环境安装和测试已经结束,如果有问题,欢迎留言讨论,看到第一时间回复。














  • 相关阅读:
    web.py的input获取问题
    python unicode和 utf8字符串比较
    python default encoding
    linux flash player的问题
    centos 支持 ntfs格式
    学习jqueryjquery中的show()和hide()
    字符串等长分割
    类加载器分类
    类加载器子系统
    70道HR的面试题
  • 原文地址:https://www.cnblogs.com/qianshuixianyu/p/9306079.html
Copyright © 2020-2023  润新知