转载地址:YBCarry

Linux下,配置Hadoop的相关配置文件:

1. 准备工作

(1)linux配置IP(NAT模式)

  • 相关信息必须与VMnet8保持一致
  • 通过命令:vi /etc/sysconfig/network-scripts/ifcfg-(自己的名字) 进行编辑
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=9cbcf25a-600d-4d9c-88ad-ab509ab6e52a
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.44.121
PREFIX=24
GATEWAY=192.168.44.2
DNS1=8.8.8.8
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_PRIVACY=no
  • 重启网络服务:service network restart

(2)linux关闭防火墙

  • 查看防火墙状态:firewall-cmd --state ->running
  • 关闭防火墙-本次有效:systemctl stop firewalld.service
  • 禁用防火墙-永久生效:systemctl disable firewalld.service ->not running

(3)设置主机名

  • 位置:vi /etc/hostname,输入主机名
  • **注意:**需要重启:reboot

(4)设置映射

  • 位置:vi /etc/hosts,输入集群全部IP和主机名
  • 格式:192.168.44.111 bigdata111

(5)设置免密登录

  • 生成密钥:ssh-keygen (三次回车键)
  • 拷贝到主机:ssh-copy-id 主机名 (所有节点都拷贝)

2. 安装jdk

(1)上传安装包:

CRT:alt+p
winscp:拖入目录

(2)解压:

tar -zxvf jdkXXXXX.tar.gz -C 目标目录

(3)配置环境变量:

命令:

export JAVA_HOME=jdk目标目录
export PATH=JAVA_HOME/bin

**注意:**需要使环境变量生效:source /etc/profile

3. 分发jdk到其他节点

(1)发送文件:

scp jdk 目标主机名:目标目录
scp /etc/profile 目标主机名:目标目录
source /etc/profile

(2)验证:

javac java java -version

4. 安装hadoop

(1)上传安装包:

CRT:alt+p
winscp:拖入目录

(2)解压:

tar -zxvf HadoopXXXXX.tar.gz -C 目标目录

(3)配置环境变量:

命令:

vi /etc/profile

export HADOOP_HOME=HADOOP目标目录
export PATH=HADOOP_HOME/bin:$HADOOP_HOME/sbin

**注意:**需要使环境变量生效:source /etc/profile

(4)修改配置文件:

hadoop-env.sh
export JAVA_HOME=Java路径

core-site.xml

  <!-- 指定HDFS中NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://bigdata121:9000</value>
</property> <!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop-2.7.3/tmp</value>
</property> <!-- 回收站设置,保存时间两天 -->
<property>
<name>fs.trash.interval</name>
<value>2880</value>
</property>

hdfs-site.xml

  <!-- 指定HDFS副本的数量,数据块冗余度(默认为3) -->
<property>
<name>dfs.replication</name>
<value>2</value>
</property> <!-- 指定hadoop产生namenode、datanode文件的存储目录 -->
    <!--注释配置HDFS的权限检查,默认是true-->
<property>
<name>dfs.permissions</name>
<value>false</value>
</property> <!-- hdfs副本的配置bigdata122 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>bigdata122:50090</value>
</property> <!-- 配置checkpoint时间 -->
<property>
<name>dfs.namenode.checkpoint.period</name>
<value>3600</value>
</property>

mapred-site.xml(默认没有) $ cp mapred-site.xml.template mapred-site.xml mapreduce.framework.name yarn

yarn-site.xml

  <!--配置Yarn的ResourceManager的地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bigdata121</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>bigdata121:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>bigdata121:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>bigdata121:8031</value>
</property> <!--NodeManager执行MR任务的方式是Shuffle洗牌-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> <property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property> <property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>

(5)修改slaves文件:

加入从节点的主机名

(6)格式化namenode

hadoop namenode -format

(7)启动:

start-all.sh	//不推荐这种方式

//Hadoop启动停止
分别启动hdfs组件: hadoop-daemon.sh start|stop namenode|datanode|secondartnamenode
启动yarn: yarn-daemon.sh start|stop resourecemanager|nodemanager 各个模块分开启动:(配置ssh是前提)
start|stop-dfs.sh start|stop-yarn.sh

重复格式化:hadoop.tmp.dir

  • 停止集群
  • 删除原来的tmp文件。(rm -rf)
  • 重新格式化
  • 启动集群

Hadoop集群结构

HDFS_DownLoad

HDFS_Upload

namenode工作机制

datanode工作机制

maptask决定机制

yarn工作流程

mapreduce流程

shuffle机制

Linux环境Hadoop安装配置的更多相关文章

  1. Linux环境Hive安装配置及使用

    Linux环境Hive安装配置及使用 一.Hive Hive环境前提 二.Hive架构原理解析 三.Hive-1.2.2单机安装流程 (1) 解压apache-hive-1.2.2-bin.tar.g ...

  2. Linux环境ZooKeeper安装配置及使用

    Linux环境ZooKeeper安装配置及使用 一.ZooKeeper 1.1 zookeeper作用 1.2 zookeeper角色 1.3 zookeeper功能 二.集群规划 三.安装流程 (1 ...

  3. ubuntu linux环境下安装配置jdk和tomcat

    关于linux搭建服务器,ubuntu中jdk和tomcat的安装和配置 一.jdk的安装配置 1:去官网下载好自己需要的版本,注意,linux压缩文件通常以tar.gz结尾,别下载错了.本次我下载安 ...

  4. Linux环境下安装配置Mysql

    首先我们的使用的是linux的 centOS6 版本 安装mysql: 1.查看有没有安装包 yum list mysql* 2.进行安装mysql:一般我们在服务器端安装的都是服务端( mysql- ...

  5. Linux 环境下安装配置 TigerVNC Server 并启用当前会话远程服务(X0VNC)

    曾经喜欢用 RealVNC Server 实现 Linux/Windows 的远程控制,因为 RealVNC 为收费商业软件,支持文件传输,性能优化方面也做得不错.但 RealVNC 从 5.0 版本 ...

  6. 1. VMware搭建Linux环境,安装配置centos6.5

    1. 安装VMware,后新建虚拟机 2. 为我们的虚拟机挂载操作系统 3.开启我们的虚拟机,为我们的虚拟机进行安装操作系统 4.配置虚拟机连接网络 修改linux的mac地址 修改mac地址配置文件 ...

  7. Linux环境下安装配置vsftpd服务(三种认证模式)

    一.FTP简介 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议.它工作于网络传输协议的应用层,使用客户/服务器模式,主要是用来 ...

  8. Linux环境下安装配置JDK1.8

    最近在搞虚拟机,记录下虚拟机内java环境的搭建流程 一.下载合适版本的jdk 此处选择JDK1.8,各位同学可以根据自己的需求选择对应的版本,下载地址为: https://www.oracle.co ...

  9. Linux环境jdk安装配置

    1.jdk安装包:jdk-8u191-linux-x64.tar.gz2.拷贝 jdk-8u191-linux-x64.tar.gz 到/usr/local命令如下:cp jdk-8u191-linu ...

随机推荐

  1. webapplicationContext之ServletContext等相关概念说明

    1)ServletContext是一个全局的储存信息的空间,所有用户共用一个,其信息必须是线程安全且共享的. ServletContext有一个接口定义:ServletContext接口.此接口定义了 ...

  2. layer做阻塞式弹出层的方法

    今天遇到一个问题: layer弹出一个confirm提示窗,然后confirm还没有点击对应的按钮的时候,就已经执行了后续代码,我这里做出的判断是,是否需要进行后续操作,但是因为layer.confi ...

  3. 微信小程序 - bilibili模仿

    今天真是个大坑,onLoad => 写成了OnLoad 程序一直没法执行, 晚上下班的时候,在微信的小程序中,this不可以直接访问data中的值,得this.data才能访问..

  4. 一个轻量级的.Net Core微服务快速开发的轮子

    前言     Adnc是一个轻量级的.Net Core微服务快速开发框架,同时也可以应用于单体架构系统的开发.框架基于JWT认证授权.集成了一系列微服务配套组件,代码简洁.易上手.学习成本低.开箱即用 ...

  5. 翻译 | 30个 Python3 的最佳实践,技巧和窍门

    1.使用 Python3 如果你关注 Python 的话,应该会知道 Python 2 已经于今年(2020 年)1 月 1 日正式弃用了.这份教程的很多例子都是只支持 Python 3 的,如果你还 ...

  6. 通过BulkLoad快速将海量数据导入到Hbase(TDH,kerberos认证)

    一.概念 使用BlukLoad方式利用Hbase的数据信息是 按照特点格式存储在HDFS里的特性,直接在HDFS中生成持久化的Hfile数据格式文件,然后完成巨量数据快速入库的操作,配合MapRedu ...

  7. linux串口通信 接收信息不完整 读取不全

    类似这种 ready.o是我用来读取串口信息的一个程序 执行结果如下: [root@localhost testPlc]# ./ready.o 0 02 1 30 2 30 3 46 4 46 5 3 ...

  8. 关于Webservice接口对接相关总结

    Webservice接口对接 因为近期处理了很多关于Webservice的接口对接,所以这篇文章是对近期自己的学习做一个简单的总结. 一: 对于接口对接,建议首先需要了解一下WSDL文件,以及入参的S ...

  9. 基于nginx实现web服务器的双机热备

    1.适用场景 对于部署重要的服务,会使用两台服务器,互相备份,共同执行同一服务.当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务.双机热 ...

  10. 对Java集合的概述

    前言 大部分编程语言都提供了数组来保存对象,数组是非常重要的数据结构之一.但是数组在初始化时就已经定义了数组长度,不可变,使用起来颇为麻烦.因此,Java 在 JDK 1.2 版本中添加了集合框架,用 ...