• hadoop3.3.1单机版环境搭建详细流程记录


    1、在centos7中创建必要的目录;

    2、上传JDK安装包到tools目录;

    3、解压JDK到/opt/server/目录;

    tar -zxvf jdk-8u221-linux-x64.tar.gz -C /opt/server/

    4、“vim:未找到命令”的解决办法;

    安装vim即可;

    yum install -y vim

    5、JDK配置环境变量;

    vim /etc/profile

    按“o”进入编辑模式;

    1. #JDK环境变量
    2. export JAVA_HOME=/opt/server/jdk1.8.0_221
    3. export PATH=${JAVA_HOME}/bin:$PATH

    编辑完内容后,“esc”-->“:”-->"wq"-->回车,执行保存并退出。

    6、刷新环境变量,使其生效;

    source /etc/profile

    7、配置hosts;

    vim /etc/hosts

    点"i"或者"o"进入编辑模式;

    编辑完后,点"Esc"-->":"-->"wq",回车,保存退出。

    8、配置免密;

    生成公钥和私钥;(一直点下去即可)

    ssh-keygen -t rsa

    授权是单向的;

    8.1、方法一:

    进入 ~/.ssh 目录下,查看生成的公匙和私匙,并将公匙写入到授权文件;
    1. cd ~/.ssh
    2. cat id_rsa.pub >> authorized_keys
    3. chmod 600 authorized_keys

    8.2、方法二:

    1. # 本机公钥拷贝到102服务器
    2. ssh-copy-id hadoop102
    3. # 回车,确认102密码后生效
    方法二注意:切换用户后,需要重新配置免密。

    9、上传hadoop3.3.1并解压;

    10、配置hadoop;

    进入/opt/server/hadoop-3.3.1/etc/hadoop/目录下,

    (1)、修改hadoop-env.sh文件,设置JDK的安装路径;

    vim hadoop-env.sh

    (2)、修改core-site.xml文件,分别指定hdfs 协议文件系统的通信地址及hadoop 存储临时文件的目录 (此目录不需要手动创建);

    vim core-site.xml

    1.        
    2.        fs.defaultFS
    3.        hdfs://server:8020
    4.    
    5.    
    6.        
    7.        hadoop.tmp.dir
    8.        /home/hadoop/data
    9.    

    (3)、修改hdfs-site.xml,指定 dfs 的副本系数

    vim hdfs-site.xml

    1.    
    2.        
    3.        dfs.replication
    4.        1
    5.    

    (4)、修改workers文件,配置所有从属节点;

    vim workers

    server

    11、关闭防火墙;

    如果不关闭防火墙,可能导致无法访问 Hadoop Web UI 界面;

    1. # 查看防火墙状态
    2. sudo firewall-cmd --state
    3. # 关闭防火墙:
    4. sudo systemctl stop firewalld
    5. # 禁止开机启动
    6. sudo systemctl disable firewalld

    12、格式化namenode;

    初始化, 第一次启动 Hadoop 时需要进行初始化,进入 /opt/server/hadoop-3.3.1/bin 目录下,执
    行以下命令:

    13、Hadoop 3中不允许使用root用户来一键启动集群,需要配置启动用户;

    进入目录“/opt/server/hadoop-3.3.1/sbin”,编辑start-dfs.sh、stop-dfs.sh,在顶部加入以下内容;

    1. HDFS_DATANODE_USER=root
    2. HDFS_DATANODE_SECURE_USER=hdfs
    3. HDFS_NAMENODE_USER=root
    4. HDFS_SECONDARYNAMENODE_USER=root

    start-dfs.sh如下:

    stop-dfs.sh如下:

    14、启动hdfs;

    进入/opt/server/hadoop-3.3.1/sbin/目录下,
    ./start-dfs.sh

    启动成功;

    15、查看 Web UI 界面,端口为 9870;

    http://192.168.12.100:9870/

    16、配置hadoop环境变量,方便启动;

    1. #Hadoop环境变量
    2. export HADOOP_HOME=/opt/server/hadoop-3.3.1
    3. export PATH=$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin;

    执行“source /etc/profile”刷新,使其生效。 

    17、yarn环境搭建;

    (1)、配置mapred-site.xml;

    进入/opt/server/hadoop-3.3.1/etc/hadoop/目录;

    vim mapred-site.xml

    1.    
    2.        mapreduce.framework.name
    3.        yarn
    4.    
    5.    
    6.        yarn.app.mapreduce.am.env
    7.        HADOOP_MAPRED_HOME=${HADOOP_HOME}
    8.    
    9.    
    10.        mapreduce.map.env
    11.        HADOOP_MAPRED_HOME=${HADOOP_HOME}
    12.    
    13.    
    14.        mapreduce.reduce.env
    15.        HADOOP_MAPRED_HOME=${HADOOP_HOME}
    16.    

    (2)、配置yarn-site.xml;

    vim yarn-site.xml

    1.    
    2.        
    3.        yarn.nodemanager.aux-services
    4.        mapreduce_shuffle
    5.    

    18、hadoop3配置root启动yarn权限;

    进入“/opt/server/hadoop-3.3.1/sbin/”目录;

    1. # start-yarn.sh stop-yarn.sh在两个文件顶部添加以下内容
    2. YARN_RESOURCEMANAGER_USER=root
    3. HADOOP_SECURE_DN_USER=yarn
    4. YARN_NODEMANAGER_USER=root

    vim start-yarn.sh

    vim stop-yarn.sh

    19、启动yarn;

    进入“/opt/server/hadoop-3.3.1/sbin/”目录;

    ./start-yarn.sh

    20、访问yarn的web管理界面;

    http://192.168.12.100:8088/

    21、“Permission denied: user=dr.who, access=WRITE, inode="/":root:supergroup:drwxr-xr-x”;

    创建目录、上传文件失败。

    这里“dr.who”表示的是在网页端访问hdfs时的默认用户名,而真实是不存在的,它的权限很小,为了保证数据安全,无法访问其他用户的数据。修改默认登录用户就可解决此处权限问题。

    修改“/opt/server/hadoop-3.3.1/etc/hadoop/”目录下的core-site.xml;

    添加下面属性;

    1.        
    2.        hadoop.http.staticuser.user
    3.        root
    4.    

    重启hdfs服务即可。

    创建目录成功;

    22、hdfs上传文件失败,“Couldn't upload the file xxxxxxxxxxx.csv.”;

    原因:客户端web无法解析server域名到指定ip引起的。

    解决方法:

    在本地win10配置host对虚拟机地址的访问;

    192.168.12.100 server

  • 相关阅读:
    UI自动化测试 | Jenkins配置优化
    深度学习:多层感知机和异或问题(Pytorch实现)
    MySQL篇---第三篇
    python多线程系列—Queue对象(五)
    pytorch深度学习实战lesson12
    qt hiRedis封装使用
    PMI-ACP练习题(19)
    网络安全(黑客)小白自学
    常用免费网站总结(自用)
    typing.Union` 标注一多种变量类型
  • 原文地址:https://blog.csdn.net/shanxiderenheni/article/details/132668528