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

好程序员大数据教程Hadoop全分布安装(非HA)

 
  机器名称 启动服务
  linux11 namenode secondrynamenode datanode
  linux12 datanode
  linux13 datanode
  第一步:更改主机名,临时修改+永久修改
  临时修改:hostname linux11
  永久修改: vi /etc/sysconfig/network
  NETWORKING=yes
  HOSTNAME=linux11
  临时修改:hostname linux12
  永久修改: vi /etc/sysconfig/network
  NETWORKING=yes
  HOSTNAME=linux11
  临时修改:hostname linux13
  永久修改: vi /etc/sysconfig/network
  NETWORKING=yes
  HOSTNAME=linux13
  第二步:配置ip地址
  1.三台机器关闭NetworkManager服务 service NetworkManager stop
  2.三台机器禁止开机启动NetworkManager服务 chkconfig NetworkManager off
  3. vi /etc/sysconfig/network-scripts/ifcfg-eth0
  三台机器依次配置成这样
  linux11:
  ONBOOT=yes
  BOOTPROTO=static
  IPADDR=192.168.91.11
  DNS1=8.8.8.8
  GATEWAY=192.168.91.1
  NETMASK=255.255.255.0
  linux12:
  ONBOOT=yes
  BOOTPROTO=static
  IPADDR=192.168.91.12
  DNS1=8.8.8.8
  GATEWAY=192.168.91.1
  NETMASK=255.255.255.0
  linux13:
  ONBOOT=yes
  BOOTPROTO=static
  IPADDR=192.168.91.13
  DNS1=8.8.8.8
  GATEWAY=192.168.91.1
  NETMASK=255.255.255.0
  最终结果:
  192.168.91.11 linux11
  192.168.91.12 linux12
  192.168.91.13 linux13
  3.三台机器关闭防火墙 service iptables stop
  4.三台机器设置禁止开机启动防火墙 chkconfig iptables off
  5.三台机器关闭防火墙 service iptables status
  显示iptables: Firewall is not running.说明防火墙关闭成功
  6.三台机器重启网卡service network restart
  第三步配置主机映射
  使用命令:vi /etc/hosts
  三台机器都改成这样
  192.168.91.11 linux11
  192.168.91.12 linux12
  192.168.91.13 linux13
  127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
  ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  测试:
  在linux11上 ping linux12 ping linux13
  第四步配置免密码登录
  linux11:
  ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  chmod 600 ~/.ssh/authorized_keys
  linux12:
  ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  chmod 600 ~/.ssh/authorized_keys
  linux13:
  ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  chmod 600 ~/.ssh/authorized_keys
  在linux11上
  ssh-copy-id linux12
  ssh-copy-id linux13
  测试:测试结果为linux11可以免密码登录到所有机器。linux12 linux13可以免密码登录本机
  例如:在linux11上输入 ssh linux11
  第五步安装jdk及hadoop(由于使用root用户操作,为了防止对liunx操作不熟悉的人,误删其他文件。所以没有选择把软件安装在/usr下,而是选择安装在了自己创建的文件目录下)
  linux11:
  1.在根目录下创建bigdata目录 mkdir /bigdata
  2.将hadoop安装包 tar -zxvf /bigdata/hadoop-2.7.1.tar.gz -C /bigdata/
  删除hadoop安装包 rm -rf /bigdata/hadoop-2.7.1.tar.gz
  3.jdk安装包解压 tar -zxvf /bigdata/jdk-8u151-linux-x64.gz -C /bigdata/
  删除jdk安装包 rm -rf /bigdata/jdk-8u151-linux-x64.gz
  修改jdk目录的名字为jdk1.8 mv /bigdata/jdk1.8.0_151/ /bigdata/jdk1.8
  4.配置环境变量 vi /etc/profile
  在文件末尾加入如下配置
  export JAVA_HOME=/bigdata/jdk1.8
  export HADOOP_HOME=/bigdata/hadoop-2.7.1
  export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:
  第六步:hadoop的配置
  1.hadoop-env.sh的配置
  使用命令 vi /bigdata/hadoop-2.7.1/etc/hadoop/hadoop-env.sh
  第25行export JAVA_HOME=改成下面的样子
  export JAVA_HOME=/bigdata/jdk1.8
  2.core-site.xml 的配置
  使用命令 vi /bigdata/hadoop-2.7.1/etc/hadoop/core-site.xml
  配置成这样:

301
.hdfs-site.xml的配置
  使用命令 vi /bigdata/hadoop-2.7.1/etc/hadoop/hdfs-site.xml
  配置成这样:

02

03
4.slaves文件配置
  使用命令 vi /bigdata/hadoop-2.7.1/etc/hadoop/slaves
  配置成这样
  linux11
  linux12
  linux13
  第七步:远程拷贝
  1.将bigdata文件分发给linux12 linux13
  scp -r /bigdata linux12:/
  scp -r /bigdata linux13:/
  2.将/etc/profile文件分发给linux12 linux13
  scp /etc/profile linux12:/etc
  scp /etc/profile linux13:/etc
  3.三台机器刷新环境变量 source /etc/profile
  第八步:格式化namenode
  在namenode节点linux11上输入命令 hdfs namenode -format
  格式化完成后在linux11上启动集群 start-dfs.sh
  第九步:验证集群是否启动成功
  1.在浏览器上输入192.168.91.11:50070如果页面能打开显示有3个活跃节点说明成功
  2.linux11上输入jps 能看到namenode secondrynamenode datanode三个服务
  3.linux12上输入jps 能看到datanode
  4.linux12上输入jps 能看到datanode
  5.上传个文件至集群hdfs dfs -put /bigdata/jdk1.8 /
  6.查看web页面是否存在这个文件

 04

相关文章:

  • JavaScript中in操作符(for..in)、Object.keys()和Object.getOwnPropertyNames()的区别
  • Day01:总结一下str的常见操作吧~
  • Bytom储蓄分红合约解析
  • 软件测试2019:第二次作业
  • 企业应用开发(3)--用户故事
  • CAP的简单理解
  • 2018-2019-2 网络对抗技术 20165320 Exp2 后门原理与实践
  • Chrome 存在数据泄漏问题,谷歌更新说明却没提
  • Flutter (三) Dart 语言基础详解 (异步,生成器,隔离,元数据,注释)
  • 阿里云ECS的1M带宽理解
  • 虚拟机中网络的设置与vim的安装
  • MySQL出现Waiting for table metadata lock的原因以及解决方法
  • 据说是微软面试题,答案让人泪奔==
  • 天梯赛题解 L1-006 连续因子
  • 麦当劳重金收购一大数据创业公司,持续加码数字化转型
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • Angular 2 DI - IoC DI - 1
  • angular2 简述
  • Java小白进阶笔记(3)-初级面向对象
  • js中的正则表达式入门
  • Node + FFmpeg 实现Canvas动画导出视频
  • nodejs实现webservice问题总结
  • Python进阶细节
  • 利用jquery编写加法运算验证码
  • 前端面试之CSS3新特性
  • 如何在 Tornado 中实现 Middleware
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 一份游戏开发学习路线
  • 函数计算新功能-----支持C#函数
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • ###STL(标准模板库)
  • $.ajax()参数及用法
  • $GOPATH/go.mod exists but should not goland
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (一)为什么要选择C++
  • ***利用Ms05002溢出找“肉鸡
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET CF命令行调试器MDbg入门(一)
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET6 命令行启动及发布单个Exe文件
  • .sh 的运行
  • @Conditional注解详解
  • [<事务专题>]
  • [2021]Zookeeper getAcl命令未授权访问漏洞概述与解决
  • [acm算法学习] 后缀数组SA
  • [C#C++]类CLASS
  • [C++]高精度 bign (重载运算符版本)