为了学习Hadoop生态的部署和调优技术,在笔记本上的3台虚拟机部署Hadoop集群环境,要求保证HA,即主要服务没有单点故障,能够执行最基本功能,完成小内存模式的参数调整。

1.    准备环境

1.1. 规划

  • 克隆3台服务器,主机名和IP如下

主机名

IP

软件

hadoop

192.168.154.128

原始虚拟机用于克隆

hadoop1

192.168.154.3

Zookeeper,journalnode Namenode, zkfc, Resourcemanager

hadoop2

192.168.154.4

Zookeeper,journalnode Namenode, zkfc, Resourcemanager, DataNode,NodeManager

hadoop3

192.168.154.5

Zookeeper,journalnode DataNode,NodeManager

  • 设置每台服务器的域名解析
vi /etc/hosts
127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4
:: localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.154.3 hadoop1[]
192.168.154.4 hadoop2
192.168.154.5 hadoop3

1.2. 准备软件包

名称

描述

ssh_auth

设置互信的工具包

C3

集群管理效率工具,在集群范围执行shell命令

hadoop-2.7.3.tar.gz

hadoop安装包

zookeeper-3.4.9.tar.gz

zookeeper安装包

1.3. 设置互信

采用设置互信的工具,解压文件到目录

vi ./host
hadoop1
hadoop2
hadoop3

执行命令

./ssh_auth.sh hadoop hadoop ./host

验证:在hadoop1,hadoop2,hadoop3上分别登录三台机器,如果无需密码进入则正常

ssh hadoop1
exit ssh hadoop2
exit ssh hadoop3
exit

为了操作简单,也设置root用户的互信

./ssh_auth.sh root xxxxxx ./host

xxxxxx为root用户的密码

1.4. 安装C3

C3是Cluster Command & Control (C3) Tool Suite,是集群管理的效率工具,用于在集群服务器上通过ssh并行或者串行执行相同的命令。在Centos7上安装报告与filesystem-3.2-20.el7.x86_64冲突,所以需要强行安装,命令如下:

rpm -i c3-5.1.-0.1.noarch.rpm --nodeps --force

安装完成后,在使用C3的节点创建/etc/c3.conf文件。内容如下:

cluster cloud {
hadoop1:127.0.0.1 #head node
dead remove-index-
hadoop1
hadoop2
hadoop3
}

验证:切换回hadoop用户,执行cexec date

************************* cloud *************************
--------- hadoop1---------
××××××××××
--------- hadoop2---------
××××××××××
--------- hadoop3---------
××××××××××

1.5. 创建目标目录

切换到root用户 (用su -,使得root的环境变量起作用)

cexec mkdir -p /opt/cloud
cexec chown hadoop:hadoop /opt/cloud

切换到hadoop用户

#软件包的安装(解压缩的目标)目录
cexec mkdir -p /opt/cloud/packages #执行目录,是与安装包目录的软连接
cexec mkdir -p /opt/cloud/bin #配置文件目录,是与安装包目录中配置文件目录的软连接
cexec mkdir -p /opt/cloud/etc #数据目录
cexec mkdir -p /opt/cloud/data #日志目录
cexec mkdir -p /opt/cloud/logs

1.6. 配置Java环境

vi ~/.bashrc

增加

export JAVA_HOME=/usr/lib/jvm/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$JRE_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

即刻生效

source ~/.bashrc

复制到另外两台服务器

scp ~/.bashrc hadoop2:/home/hadoop
scp ~/.bashrc hadoop3:/home/hadoop

[1] 增加 hadoop1
hadoop2的ip映射

安装高可用Hadoop生态 (一 ) 准备环境的更多相关文章

  1. 安装高可用Hadoop生态 (三) 安装Hadoop

    3.    安装Hadoop 3.1. 解压程序 ※ 3台服务器分别执行 .tar.gz -C/opt/cloud/packages /opt/cloud/bin/hadoop /etc/hadoop ...

  2. 安装高可用Hadoop生态 (四) 安装Spark

    4.    安装Spark 4.1. 准备目录 -bin-without-hadoop.tgz -C /opt/cloud/packages/ -bin-without-hadoop /opt/clo ...

  3. 安装高可用Hadoop生态 (二) 安装Zookeeper

    2.    安装Zookeeper 2.1. 解压程序 ※ 3台服务器分别执行 .tar.gz -C/opt/cloud/packages /opt/cloud/bin/zookeeper /conf ...

  4. 企业运维实践-还不会部署高可用的kubernetes集群?使用kubeadm方式安装高可用k8s集群v1.23.7

    关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 文章目录: 0x00 前言简述 ...

  5. 高可用Hadoop平台-Flume NG实战图解篇

    1.概述 今天补充一篇关于Flume的博客,前面在讲解高可用的Hadoop平台的时候遗漏了这篇,本篇博客为大家讲述以下内容: Flume NG简述 单点Flume NG搭建.运行 高可用Flume N ...

  6. 高可用Hadoop平台-Hue In Hadoop

    1.概述 前面一篇博客<高可用Hadoop平台-Ganglia安装部署>,为大家介绍了Ganglia在Hadoop中的集成,今天为大家介绍另一款工具——Hue,该工具功能比较丰富,下面是今 ...

  7. 高可用Hadoop平台-实战尾声篇

    1.概述 今天这篇博客就是<高可用Hadoop平台>的尾声篇了,从搭建安装到入门运行 Hadoop 版的 HelloWorld(WordCount 可以称的上是 Hadoop 版的 Hel ...

  8. 高可用Hadoop平台-集成Hive HAProxy

    1.概述 这篇博客是接着<高可用Hadoop平台>系列讲,本篇博客是为后面用 Hive 来做数据统计做准备的,介绍如何在 Hadoop HA 平台下集成高可用的 Hive 工具,下面我打算 ...

  9. 高可用Hadoop平台-启航

    1.概述 在上篇博客中,我们搭建了<配置高可用Hadoop平台>,接下来我们就可以驾着Hadoop这艘巨轮在大数据的海洋中遨游了.工欲善其事,必先利其器.是的,没错:我们开发需要有开发工具 ...

随机推荐

  1. 【Offer】[4] 【二维数组中的查找】

    题目描述 思路分析 Java代码 代码链接 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数 ...

  2. eclipse的properties文件中文被转码问题

    如图所示:首次在properties里打中文注释,结果一输入中文就自动被转码,于是查看了一下项目的编码是UTF-8的,而eclipse中默认的properties文件编码是ISO的,所以修改一下即可 ...

  3. CentOS7.6中mysql实践

    cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 使用:yum -y install mysql mysql-server 安装 ...

  4. Accuarcy and Precision

    机器学习中,Accuarcy 和 Precision 有什么区别呢? Accuracy = (TP+TN)/TOTAL SAMPLES 也就是计算正确的样本数,占到总样本数的比率 定义是: 对于给定的 ...

  5. 获得本机IP和访问服务的端口号(Java)

    1. //获取本机ip地址 InetAddress addr = InetAddress.getLocalHost(); String ip=addr.getHostAddress().toStrin ...

  6. Maven学习归纳(二)——几个常用命令解析

    Maven的常用命令 第一次执行命令的时候,因为需要下载执行命令的基础环境,所以会从远程仓库下载该环境到本地仓库中 运行mvn命令,必须在pom.xml文件所在的目录 一. JavaProject的p ...

  7. Collection,泛型,Map

    1.Collection集合 集合和数组的区别? 数组的长度是固定的, 集合的长度是可变的 数组中存储的数据都是同一类型的数据.集合存储的是对象,而且对象的类型可以不一致 集合框架 单列集合 java ...

  8. Flink1.9整合Kafka

    本文基于Flink1.9版本简述如何连接Kafka. 流式连接器 我们知道可以自己来开发Source 和 Sink ,但是一些比较基本的 Source 和 Sink 已经内置在 Flink 里. 预定 ...

  9. Chrome 查看产品原型图

    1.找到产品发的原型图 2.找到文件resources\chrome\axure-chrome-extension,修改文件的后缀为rar,然后解压 3.找到chrome的extensions,找到开 ...

  10. html中的空格

    网上摘录: HTML提供了6种空格实体.除第一种外,其他几种空格在不同浏览器中宽度各异.               它叫不换行空格,全称No-Break Space,它是最常见和我们使用最多的空格, ...