当前位置: 首页 > news >正文

大数据学习之 Hadoop部署

Hadoop部署

  • Linux桌面模式关闭

    # 设置
    systemctl set-default multi-user.target
    # 重启
    reboot
    
  • 防火墙关闭

    systemctl status firewalld
    systemctl stop firewalld
    # 关闭开机自启
    systemctl disable firewalld
    
  • 配置Java环境

    echo $JAVA_HOME
    java -version
    # Java配置
    # 上传jar包并解压
    tar -zxvf ...jdk.jar
    # 配置环境变量
    vim /etc/profile
    JAVA_HOME=/usr/local/soft/jdk1.8.0_171
    export PATH=$JAVA_HOME/bin:$PATH
    
  • 网络环境

    # 查看IP
    ifconfig
    # 修改网络IP
    vim /etc/sysconfig/network-scripts/ifcfg-ens331 TYPE=Ethernet2 PROXY_METHOD=none3 BROWSER_ONLY=no4 BOOTPROTO=static5 DEFROUTE=yes6 IPV4_FAILURE_FATAL=no7 IPV6INIT=yes8 IPV6_AUTOCONF=yes9 IPV6_DEFROUTE=yes10 IPV6_FAILURE_FATAL=no11 IPV6_ADDR_GEN_MODE=stable-privacy12 NAME=ens3213 UUID=9d8db489-1d03-49dd-9a72-c106b667af6a14 DEVICE=ens3215 ONBOOT=yes16 IPADDR=192.168.44.10017 netmask=255.255.255.018 GATEWAY=192.168.44.2# 关闭网络管理器
    systemctl status NetworkManager
    systemctl stop NetworkManager
    systemctl disable NetworkManager
    
  • 修改主机名称

    vim /etc/hostname
    在当前虚拟机中设置Master
    之后克隆的三个节点需要设置node1 node2
    
  • 克隆另外两台从节点 node1 node2

    选中当前节点 关机 -> 右键 ->管理 -> 克隆 -> 当前状态 -> 创建完整克隆 -> 选择路径修改名称 -> 完成

    注意:选中的路径最好是 SSD 固态 同时磁盘空间三个节点最少保证大于70G

  • 修改克隆主机 一定要修改

    先启动node1节点,配置好之后再启动node2

    1.修改网络

    2.修改主机名

  • 修改IP映射

    当node1 node2 配置完成后,再启动Master 修改IP映射

    vim /etc/hosts
    # 安装自己的IP修改映射关系 
    192.168.44.100 master
    192.168.44.110 node1
    192.168.44.120 node2
    
  • 配置主节点和其他节点之间的免密登录

    免密登录

    ​ 当在Master节点中需要控制node1 和 node2 节点启动相关的一些命令任务

    需要使用 ssh root@ip/hostname ctrl+D:退出

    后续Hadoop启动会切换到从节点启动任务,需要密码非常麻烦,所以需要配置免密登录

    # 在Masetr节点中执行如下命令:
    # > 需要三次回车
    ssh-keygen -t rsa    
    # 将密码复制到 master node1 node2 > 需要输入密码  
    ssh-copy-id master  
    ssh-copy-id node1
    ssh-copy-id node2
    # 验证:ssh node1  ctrl + d 退出登录
    
  • 校验时间是否同步

    使用xshell对当前所有会话同时发送命令 date 查看系统时间 如果时间不同步 ,那么需要配置

    yum install ntp  
    ntpdate time.windows.com
    
  • 正式开始配置Hadoop

    上传Hadoop并解压

    tar -zxvf hadoop-3.1.3.tar.gz
    
  • 配置环境变量

    vim /etc/profile
    HADOOP_HOME=/usr/local/soft/hadoop-3.1.3
    export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
    source /etc/profile
    
  • 修改配置文件

    core-site.xml

    <property><name>fs.defaultFS</name><value>hdfs://master:9000</value>
    </property>
    <!-- 指定hadoop数据的存储目录 -->
    <property><name>hadoop.tmp.dir</name><value>/usr/local/soft/hadoop-3.1.3/data</value>
    </property>
    

    hdfs-site.xml

    dfs.namenode.http-address master:50070

    该配置项设置网页的访问端口 对于3.x版本的Hadoop其端口为9870

    <!-- 2nn web端访问地址-->
    <property><name>dfs.namenode.secondary.http-address</name><value>master:9868</value>
    </property>
    <property><name>dfs.replication</name><value>1</value>
    </property><property><name>dfs.permissions</name><value>false</value>
    </property>
    

    yarn-site.xml

    <!-- 指定MR走shuffle -->
    <property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value>
    </property>
    <!-- 指定ResourceManager的地址-->
    <property><name>yarn.resourcemanager.hostname</name><value>master</value>
    </property>
    <!-- 环境变量的继承 -->
    <property><name>yarn.nodemanager.env-whitelist</name><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
    <!-- yarn容器允许分配的最大最小内存 -->
    <property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>512</value>
    </property>
    <property>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>4096</value>
    </property>
    <!-- yarn容器允许管理的物理内存大小 -->
    <property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>4096</value>
    </property>
    <!-- 关闭yarn对物理内存和虚拟内存的限制检查 -->
    <property>
    <name>yarn.nodemanager.pmem-check-enabled</name>
    <value>false</value>
    </property>
    <property>
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
    </property>
    

    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> 
    

    workers

    在该文件中主要是对从节点的名称进行配置

    node1
    node2

    hadoop-env.sh

    Hadoop的执行环境

    # 在最后加入以下配置
    export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
    export HDFS_NAMENODE_USER=root
    export HDFS_DATANODE_USER=root
    export HDFS_SECONDARYNAMENODE_USER=root
    export YARN_RESOURCEMANAGER_USER=root
    export YARN_NODEMANAGER_USER=root
    
  • 分发Hadoop到node1、node2

    scp表示远程复制

    -r 表示复制的为目录

    root@node1 表示用户及IP 由于配置了免密登录所以不需要密码

    :pwd pwd 表示当前所在的目录路径 :需要指定目标位置的路径

    scp -r hadoop-3.1.3 root@node1:`pwd`
    scp -r hadoop-3.1.3 root@node2:`pwd`
    
  • 初始化Hadoop

    # 初始化 
    hdfs namenode -format
    

    只能在Master中执行一次

    # 启动集群
    start-all.sh
    # 停止
    stop-all.sh
    
  • 检查

    • 页面

      HDFS的访问页面 http://IP:9870/

      Yarn的访问页面http://master:8088/

    • 查看进程

      jps(查看所有Java启动的进程)
      # Master节点
      3273 NameNode
      3548 SecondaryNameNode
      3807 ResourceManager# node1节点
      2977 NodeManager
      2862 DataNode# node2节点
      2977 NodeManager
      2862 DataNode
      
  • Hadoop安装或运行过程出现问题

    • 1.查看日志

      在当前安装目录中找到logs 并分析哪个进程宕机,可以查看进程对应的日志文件

    • 2.重新安装

      1.删除所有节点中的data目录

      2.寻找正确的配置文件,进行替换,并将所有节点进行同步

      3.重新格式化

Hadoop存储

在Hadoop中数据存储是由HDFS组件决定的,可以通过9870端口进行访问,在Hadoop2.x版本中端口为50070

相关文章:

大数据学习之 Hadoop部署

Hadoop部署 Linux桌面模式关闭 # 设置 systemctl set-default multi-user.target # 重启 reboot防火墙关闭 systemctl status firewalld systemctl stop firewalld # 关闭开机自启 systemctl disable firewalld配置Java环境 echo $JAVA_HOME java -version # Java配置 # 上传ja…...

xxe漏洞--xml外部实体注入漏洞

1.xxe漏洞介绍 XXE&#xff08;XML External Entity Injection&#xff09;是一种攻击技术&#xff0c;它允许攻击者注入恶意的外部实体到XML文档中。如果应用程序处理XML输入时未正确配置&#xff0c;攻击者可以利用这个漏洞访问受影响系统上的敏感文件、执行远程代码、探测内…...

Nginx反向代理与负载均衡:让网站像海豚一样灵活

引言&#xff1a;"当网站遇上海豚&#xff1a;Nginx让数据流动更流畅&#xff01;"想象一下&#xff0c;你的网站是一片繁忙的海域&#xff0c;而Nginx就像一群聪明的海豚&#xff0c;它们不仅能够迅速地找到最佳的捕食路线&#xff08;反向代理&#xff09;&#xf…...

企业应考虑的优秀云安全措施

作为云客户&#xff0c;企业有责任确保正确使用他们提供的工具来保证数据和应用程序的安全。让德迅云安全来跟大家一起研究一些典型企业应该考虑的优秀云安全措施。 在数据安全和隐私方面&#xff0c;企业是否在努力跟上疫情的发展?企业不是一个人。就像多年以前&#xff0c;C…...

如何将老板的游戏机接入阿里云自建K8S跑大模型(下)- 安装nvidia/gpu-operator支持GPU在容器中共享

文章目录 安装nvidia/gpu-operator支持GPU在容器中共享 安装nvidia/gpu-operator支持GPU在容器中共享 安装 nvidia/gpu-operator遇到两个问题&#xff1a; 由于我们都懂的某个原因&#xff0c;导致某些镜像一直现在不成功。 解决办法&#xff0c;准备一个&#x1fa9c;&#…...

代码随想录-Day16

104. 二叉树的最大深度 方法一&#xff1a;深度优先搜索 class Solution {public int maxDepth(TreeNode root) {if (root null) {return 0;} else {int leftHeight maxDepth(root.left);int rightHeight maxDepth(root.right);return Math.max(leftHeight, rightHeight) …...

31.@Anonymous

1►@Anonymous原理 大家应该已经习惯我的教学套路,很多时候都是先使用,然后讲述原理。 上节课我们使用了注解@Anonymous,然后接口就可以直接被访问到了,不用token!不用token!不用token!。 我们一般知道,注解是给程序看的,给机器看的,当然也是给程序员看的。注解如果…...

oracle 表同一列只取最新一条数据写法

select * from (select t.*,row_number() over(partition by 去重列名 order by 排序列名 desc) as rnfrom 表名)where rn1 1.row_number() over(....): 为每条数据分配一个行号,1.2.3....这样的 2.partition by : 以某列作为分组&#xff0c;每个分组行号从1开始&#xf…...

C语言游戏实战(12):植物大战僵尸(坤版)

植物大战僵尸 前言&#xff1a; 本游戏使用C语言和easyx图形库编写&#xff0c;通过这个项目我们可以深度的掌握C语言的各种语言特性和高级开发技巧&#xff0c;以及锻炼我们独立的项目开发能力&#xff0c; 在开始编写代码之前&#xff0c;我们需要先了解一下游戏的基本规则…...

提权方式及原理汇总

一、Linux提权 1、SUID提权 SUID&#xff08;设置用户ID&#xff09;是赋予文件的一种权限&#xff0c;它会出现在文件拥有者权限的执行位上&#xff0c;具有这种权限的文件会在其执行时&#xff0c;使调用者暂时获得该文件拥有者的权限。 为可执行文件添加suid权限的目的是简…...

【leetcode----二叉树中的最大路径和】

二叉树中的 路径 被定义为一条节点序列&#xff0c;序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点&#xff0c;且不一定经过根节点。 路径和 是路径中各节点值的总和。 给你一个二叉树的根节点 root &#xff0c…...

Rust: 编译过程中链接器 `cc` 没有找到

这个错误信息表明在编译过程中链接器 cc 没有找到。cc 通常是 C 编译器的符号链接&#xff0c;它指向系统上的实际 C 编译器&#xff0c;如 gcc 或 clang。这个错误通常意味着你的系统缺少必要的编译工具链。 要解决这个问题&#xff0c;你需要确保你的系统上安装了 C 编译器。…...

【vue-3】动态属性绑定v-bind

1、文本动态绑定&#xff1a; <input type"text" v-bind:value"web.url"> 简写&#xff1a; <input type"text" :value"web.url"> 2、文字样式动态绑定 <b :class"{textColor:web.fontStatus}">vue学…...

Rust:多线程环境下使用 Mutex<T> 还是 Arc<Mutex<T>> ?

在 Rust 中&#xff0c;Mutex 本身不是线程不安全的&#xff1b;它提供了内部的线程同步机制。然而&#xff0c;如果你想在多线程环境中共享同一个 Mutex&#xff0c;你需要确保这个 Mutex 可以被多个线程访问。为此&#xff0c;你通常需要使用 Arc<Mutex<T>>。Arc…...

关于如何创建一个可配置的 SpringBoot Web 项目的全局异常处理

前情概要 这个问题其实困扰了我一周时间&#xff0c;一周都在 Google 上旅游&#xff0c;我要如何动态的设置 RestControllerAdvice 里面的 basePackages 以及 baseClasses 的值呢&#xff1f;经过一周的时间寻求无果之后打算决定放弃的我终于找到了一些关键的线索。 当然在此…...

docker三种自定义网络(虚拟网络) overlay实现原理

docker提供了三种自定义网络驱动&#xff1a;bridge、overlay、macvlan。 bridge驱动类似默认的bridge网络模式。 overlay和macvlan是用于创建跨主机网络。 支持自定义网段、网关&#xff0c;docker network create --subnet 172.77.0.0/24 --gateway 172.77.0.1 my_n…...

C#上位机1ms级高精度定时任务

precisiontimer 安装扩展包 添加引用 完整代码 using PrecisionTiming;using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; us…...

盘点28个免费域名申请大全

盘点28个免费域名申请大全 免费域名推荐学习使用&#xff0c;免费就意味着没任何保障。 名称稳定时间支持解析模式后缀格式说明地址EU.org28 年NS.eu.org/. 国家简写.eu.org需要审核&#xff0c;稳定性高&#xff0c;限制少&#xff0c;国内访问有问题&#xff0c;可 CFeu.orgp…...

【vue】封装的天气展示卡片,在线获取天气信息

源码 <template><div class"sen_weather_wrapper"><div class"sen_top_box"><div class"sen_left_box"><div class"sen_top"><div class"sen_city">山东</div><qctc-time cl…...

【MySQL】库的操作和表的操作

库的操作和表的操作 一、库的操作1、创建数据库(create)2、字符集和校验规则&#xff08;1&#xff09;查看系统默认字符集以及校验规则&#xff08;2&#xff09;查看数据库支持的字符集&#xff08;3&#xff09;查看数据库支持的字符集校验规则&#xff08;4&#xff09;校验…...

探索DeepCAD:基于深度学习的CAD模型生成技术入门

探索DeepCAD&#xff1a;基于深度学习的CAD模型生成技术入门 【免费下载链接】DeepCAD code for our ICCV 2021 paper "DeepCAD: A Deep Generative Network for Computer-Aided Design Models" 项目地址: https://gitcode.com/gh_mirrors/de/DeepCAD 副标题&…...

别再死磕英文手册了!手把手带你用Lisflood-FP跑通第一个洪水模拟案例(附T001_buscot实战)

从零到一&#xff1a;Lisflood-FP洪水模拟实战指南&#xff08;T001_buscot案例详解&#xff09; 刚接触水文模型的研究者常被英文手册劝退——密密麻麻的公式、晦涩的术语、复杂的参数配置让人望而生畏。其实&#xff0c;掌握Lisflood-FP的关键不在于死磕理论&#xff0c;而在…...

告别‘夜盲症’:用Python+OpenCV手把手教你实现红外与可见光图像融合(附完整代码)

实战指南&#xff1a;PythonOpenCV实现红外与可见光图像融合技术 夜间监控画面总是模糊不清&#xff1f;自动驾驶系统在低光照环境下识别率骤降&#xff1f;这些问题本质上都是"视觉夜盲症"的表现。今天我们将用最实用的方式&#xff0c;带你用Python和OpenCV构建一个…...

ProfControl V8的介绍 组合成为模板

作者&#xff1a;刘凌波链接&#xff1a;环野电子, profcontrolhttp://oa.profcontrol.cn/teaching_V8-7926f783c6.html来源&#xff1a;ProfControl组合为模版1、按下SHIFT键&#xff0c;在地图区域空白处按下鼠标左键不松开&#xff0c;移动鼠标则进入框选模式&#xff0c;让…...

实战指南:基于快马平台与Playwright打造自动化的网站内容监测应用

今天想和大家分享一个非常实用的自动化监测方案——基于Playwright和InsCode(快马)平台搭建的新闻网站更新监测系统。这个项目特别适合需要追踪行业动态或竞品资讯的朋友&#xff0c;整个过程不需要复杂的服务器配置&#xff0c;用快马平台就能轻松实现部署和定时运行。 项目背…...

颠覆式突破:多模态模型的3大技术跃迁与跨模态理解革命

颠覆式突破&#xff1a;多模态模型的3大技术跃迁与跨模态理解革命 【免费下载链接】Emu3 Next-Token Prediction is All You Need 项目地址: https://gitcode.com/gh_mirrors/em/Emu3 多模态模型作为人工智能领域的前沿方向&#xff0c;正在深刻改变机器理解世界的方式。…...

无人机飞控实战:四元数微分方程在PX4中的实现与调参技巧

无人机飞控实战&#xff1a;四元数微分方程在PX4中的实现与调参技巧 当无人机在复杂环境中执行高速机动时&#xff0c;传统欧拉角描述姿态会出现万向节锁死现象。去年调试一台行业级六旋翼时&#xff0c;就曾遇到俯仰角接近90时控制器突然发散的情况——这正是欧拉角奇异点的典…...

SDXL 1.0工坊应用场景:短视频团队低成本制作分镜概念图

SDXL 1.0工坊应用场景&#xff1a;短视频团队低成本制作分镜概念图 1. 引言&#xff1a;短视频创作的痛点与新解法 对于短视频团队来说&#xff0c;创意是灵魂&#xff0c;但将创意快速、低成本地可视化&#xff0c;却常常是个难题。尤其是在前期策划阶段&#xff0c;制作分镜…...

开源工具Cursor Free VIP:突破开发效率瓶颈的技术突破

开源工具Cursor Free VIP&#xff1a;突破开发效率瓶颈的技术突破 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your tri…...

从‘带不动’到‘跑满帧’:游戏玩家必懂的显示器带宽与接口选择避坑指南

从‘带不动’到‘跑满帧’&#xff1a;游戏玩家必懂的显示器带宽与接口选择避坑指南 刚入手一台2K 170Hz电竞显示器&#xff0c;却发现刷新率死活上不去&#xff1f;画面时不时出现撕裂或闪烁&#xff1f;别急着怀疑显卡性能&#xff0c;问题可能出在那根被你忽视的连接线上。…...