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

集群环境安装与部署 Hadoop

安装 hadoop 与部署 hadoop

本文主要讲解如何在分布式集群上部署 hadoop,具体的操作如下所示。

安装 hadoop

  1. 第一步,在 usr 目录创建一个目录 cstor,具体的操作命令如下所示。

    cd /usr
    sudo mkdir cstor
    
  2. 第二部,进入到目录 /usr/cstor 下解压hadoop2.7.7.tar.gz文件,具体的操作命令如下所示。

    cd cstor
    sudo tar -zxvf /media/sf_vmshare/hadoop-2.7.7.tar.gz
    

    执行上述操作后,检查以下文件是否成功解压了 hadoop-2.7.7.tar.gz 文件,查询到的信息如下所示。

    leolei@leifenglin:/usr/cstor$ ls -l
    total 4
    drwxr-xr-x 9 leolei staff 4096 Jul 19  2018 hadoop-2.7.7
    

    若文件解压成功则将解压后的文件名系应该为 hadoop,修改完成之后再次查询文件名是否修改成功,查询到的信息如下所示。

    leolei@leifenglin:/usr/cstor$ sudo mv hadoop-2.7.7 hadoop
    leolei@leifenglin:/usr/cstor$ ls -l
    total 4
    drwxr-xr-x 9 leolei staff 4096 Jul 19  2018 hadoop
    

    notebook tip

    • 注意,上述的命令ls -l可以缩写为ll
    • mv 命令具有两种功能,分别是重命名和移动文件的位置。若文件在同一目录下且都不带 “/”符号,即为重命名。若 mv 的参数只要有一个带有符号“/”,则是移动文件。
  3. 文件解压完成和改名成功后,更改 hadoop 文件的权限,修改为普通用户的权限。具体的操作命令如下所示。

    sudo chown -R leolei:leolei hadoop
    

    修改完成之后查询 hadoop 文件及其子目录的权限,具体的操作命令如下所示。

    leolei@leifenglin:/usr/cstor$ ls -l
    total 4
    drwxr-xr-x 9 leolei leolei 4096 Jul 19  2018 hadoop
    leolei@leifenglin:/usr/cstor$ cd hadoop/
    leolei@leifenglin:/usr/cstor/hadoop$ ll
    total 144
    drwxr-xr-x 9 leolei leolei  4096 Jul 19  2018 ./
    drwxr-xr-x 3 root   root    4096 Oct 27 13:23 ../
    drwxr-xr-x 2 leolei leolei  4096 Jul 19  2018 bin/
    drwxr-xr-x 3 leolei leolei  4096 Jul 19  2018 etc/
    drwxr-xr-x 2 leolei leolei  4096 Jul 19  2018 include/
    drwxr-xr-x 3 leolei leolei  4096 Jul 19  2018 lib/
    drwxr-xr-x 2 leolei leolei  4096 Jul 19  2018 libexec/
    -rw-r--r-- 1 leolei leolei 86424 Jul 19  2018 LICENSE.txt
    -rw-r--r-- 1 leolei leolei 14978 Jul 19  2018 NOTICE.txt
    -rw-r--r-- 1 leolei leolei  1366 Jul 19  2018 README.txt
    drwxr-xr-x 2 leolei leolei  4096 Jul 19  2018 sbin/
    drwxr-xr-x 4 leolei leolei  4096 Jul 19  2018 share/
    

    如上述的输出信息可以知道文件 hadoop 及其子目录的权限都修改为普通用户 leolei 的权限。

    注意:命令 sudo chown -R leolei:leolei hadoop的参数 R 就是将整个文件及其子目录的所有文件权限都修改为普通用户。

部署HDFS

  1. 部署 HDFS ,在其指定文件中添加 JDK 安装目录。

    首先查看 JDK 的安装目录,具体的操作命令如下所示。

    leolei@leifenglin:/$ java -version
    openjdk version "1.8.0_362"
    OpenJDK Runtime Environment (build 1.8.0_362-8u372-ga~us1-0ubuntu1~18.04-b09)
    OpenJDK 64-Bit Server VM (build 25.362-b09, mixed mode)leolei@leifenglin:/$ echo $JAVA_HOME
    /usr/lib/jvm/java-8-openjdk-amd64
    

    如上述的输出信息所示,可以知道 JDK 的版本为 1.8.0_362,JDK 的安装目录为 /usr/lib/jvm/java-8-openjdk-amd64。这里建议安装 Ubuntu 系统自带的 JDK。JDK 的安装方法可以参考网址https://blog.csdn.net/2301_77987130/article/details/153122819?spm=1011.2415.3001.5331进行安装。

  2. 编辑文件“/usr/cstor/hadoop/etc/hadoop/hadoop-env.sh”,找到如下一行:export JAVA_HOME=${JAVA_HOME},将这行内容修改为:export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64。具体信息如下所示。

    ...
    # The java implementation to use.
    # export JAVA_HOME=${JAVA_HOME}
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    # The jsvc implementation to use. Jsvc is required to run secure datanodes
    # that bind to privileged ports to provide authentication of data transfer
    # protocol.  Jsvc is not required if SASL is configured for authentication of
    # data transfer protocol using non-privileged ports.
    ...
    

    修改完文件 hadoop-env.sh 后,保存退出。

  3. 指定HDFS主节点

    编辑文件“/usr/cstor/hadoop/etc/hadoop/core-site.xml”,将如下内容嵌入此文件里最后两行的标签之间,配置core-site.xml文件时需要在添加一个配置,让所有节点能够访问namenode,配置如下所示:

    <configuration><properties><name>hadoop.tmp.dir</name><value>/usr/cstor/hadoop/cloud</value></properties><properties><name>fs.defaultFS</name><value>hdfs://leifenglin:8020</value></properties><properties><name>dfs.namenode.rpc-bind-host</name><value>0.0.0.0</value></properties>
    </configuration>
    

    上述文件的配置信息配置完成之后,然后保存退出。

  4. 将hadoop 文件拷贝至其它集群服务器。具体的操作如下所示。

    在 leifenglin 主节点上执行下列命令,将配置好的 hadoop 拷贝至slaveX。

    首先创建一个当前用户下创建一个文件 machines,用于存储子节点 leifenglin1 和 leifenglin2 的节点名。先通过命令vim machines打开文件,然后添加如下所示的信息。

    leifenglin1
    leifenglin2
    

    然后通过以下命令将 hadoop 文件拷贝到子节点上,执行下列步骤时需要保证复制的目标目录存在才能成功复制。具体操作如下所示。

    首先在子节点 leifenglin1 和 leifenglin2 上创建文件 /usr/cstor/hadoop。具体的操作如下所示。

    cd /usr
    sudo mkdir -p cstor/hadoop
    cd cstor/
    sudo chown -R leolei:leolei hadoop
    

    执行过上述命令后通过命令ls -l查看文件的权限。权限修改成功之后再执行后续操作。

    然后开始执行以下命令开始拷贝 hadoop 文件到子节点。

    leolei@leifenglin:~$ for x in `cat machines` ; do echo $x ; scp -r /usr/cstor/hadoop $x:/usr/cstor/hadoop ; done
    

    最后,分别到子节点 leifenglin1 和 leifenglin2 上检查上述创建的目录是否有完整的文件,若有,则证明 hadoop 文件拷贝成功。具体操作命令如下所示。

    上一步骤的操作完成之后,发现多了一层目录 hadoop/,先将文外层文件改名为 hadoop-1,再将内层 hadoop 文件移动到 cstor/ 目录下,然后删除改名后的文件。具体的操作命令如下所示。

    leolei@leifenglin1:/usr/cstor$ sudo mv hadoop hadoop-1
    leolei@leifenglin1:/usr/cstor$ ls
    hadoop-1
    leolei@leifenglin1:/usr/cstor$ sudo mv /usr/cstor/hadoop-1/hadoop/ .
    leolei@leifenglin1:/usr/cstor$ ls
    hadoop  hadoop-1
    leolei@leifenglin1:/usr/cstor$ cd hadoop
    leolei@leifenglin1:/usr/cstor/hadoop$ ls
    bin  etc  include  lib  libexec  LICENSE.txt  NOTICE.txt  README.txt  sbin  share
    leolei@leifenglin1:/usr/cstor/hadoop$ cd ../hadoop-1/
    leolei@leifenglin1:/usr/cstor/hadoop-1$ ls
    leolei@leifenglin1:/usr/cstor/hadoop-1$ cd ..
    leolei@leifenglin1:/usr/cstor$ ll
    total 16
    drwxr-xr-x  4 root   root   4096 Oct 27 15:02 ./
    drwxr-xr-x 11 root   root   4096 Oct 27 14:33 ../
    drwxr-xr-x  9 leolei leolei 4096 Oct 27 14:54 hadoop/
    drwxr-xr-x  2 leolei leolei 4096 Oct 27 15:02 hadoop-1/
    leolei@leifenglin1:/usr/cstor$ sudo rm -rf hadoop-1/
    leolei@leifenglin1:/usr/cstor$ ls
    hadoop
    

    子节点 leifenglin2 的操作与上述操作一致。
    未完成!!!

http://www.dtcms.com/a/537148.html

相关文章:

  • 【乱七八糟】【1. fs.inotify.max_user_watches 参数】
  • C++运算符重载与友元函数:理解输入输出流的魔法
  • Android Camera 从应用到硬件之- 枚举Camera - 1
  • 【Frida Android】基础篇13:Frida-Trace 基础简介——从命令到脚本的动态追踪入门
  • 使用electron-vite生成一个桌面应用以及引入必要插件
  • 龙岗网站设计机构网络培训平台建设方案
  • 运动想象 (MI) 分类学习系列 (19) : EEG-TransNet
  • io游戏网站重庆市建设项目环境影响评价网站
  • 怎样做静态网站做网站开发用哪门语言
  • springAI实现ai大模型+传统应用双剑合璧- Function Calling
  • 电子商务网站开发设计适合前端新手做的网页
  • 济宁市建设局网站wordpress hover
  • 熵平衡机制在子种群迁移中的具体实现
  • 记录一下Linux 6.12 中 cpu_util函数的作用
  • 做淘宝内部优惠券网站要钱么网站制作费用价格表
  • ECSCluster容器洞察功能完整实现与深度解析
  • 力扣(LeetCode) ——15.三数之和(C++)
  • Kubernetes GPU 运维组件介绍
  • 龙中龙网站开发wordpress 判断函数
  • 网站开发流程框架手机软件开发和网站开发
  • 定时发布文章测试
  • 联邦快递网站建设的目标重庆平台网站推广
  • 医院 网站建设成品网站价格表
  • 第14天:系统监控与日志管理
  • 区块链分层架构或侧链/子链
  • Ethernaut Level 14: Gatekeeper Two - 合约创建时的 extcodesize
  • 网页网站建设难吗深圳网络营销推广公司
  • 东莞网站开发深圳做网站做app
  • 18.矩阵置零(原地算法)
  • Lambda表达式的使用