当前位置: 首页 > 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 连续因子
  • 麦当劳重金收购一大数据创业公司,持续加码数字化转型
  • Android 架构优化~MVP 架构改造
  • CEF与代理
  • Create React App 使用
  • flutter的key在widget list的作用以及必要性
  • idea + plantuml 画流程图
  • isset在php5.6-和php7.0+的一些差异
  • Linux Process Manage
  • PV统计优化设计
  • Python_OOP
  • SQLServer插入数据
  • vue-cli在webpack的配置文件探究
  • 对象引论
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 码农张的Bug人生 - 见面之礼
  • 容器服务kubernetes弹性伸缩高级用法
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​secrets --- 生成管理密码的安全随机数​
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • $.each()与$(selector).each()
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (附源码)计算机毕业设计ssm高校《大学语文》课程作业在线管理系统
  • (汇总)os模块以及shutil模块对文件的操作
  • (三)uboot源码分析
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转)程序员技术练级攻略
  • (转载)利用webkit抓取动态网页和链接
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .Net 高效开发之不可错过的实用工具
  • .Net高阶异常处理第二篇~~ dump进阶之MiniDumpWriter
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • .考试倒计时43天!来提分啦!
  • /bin、/sbin、/usr/bin、/usr/sbin
  • @Transaction注解失效的几种场景(附有示例代码)
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [BZOJ3223]文艺平衡树