在Win10中用Hyper-V虚拟机搭建CDH集群

本文详细介绍了如何在Windows 10的Hyper-V环境中搭建CDH集群,包括集群规划、宿主机环境准备、创建及配置虚拟机、安装CM服务器和CDH组件,以及后续的集群管理。通过此过程,读者将学习到如何在虚拟环境下构建Hadoop大数据平台。
摘要由CSDN通过智能技术生成

Version: v0.1

Last Update: July/23/2021

Keywords:CDH,Hadoop,Big Data Platform,Hyper-V,Virtual Machine

0. 背景

  • 因想要学习大数据各种相关组件和技术,而自家有台台式机可以折腾,购买所需配置的云服务器又太贵,故准备自行搭建CDH集群。
  • 最初准备使用Ubuntu+VKVM,但台式机家人共享,双系统切换也很麻烦,故考虑在Win10一个平台解决所有问题。
  • 因有Win10专业版,VMWare Workstation要收费,VirtualBox是Oracle家的不喜欢,因此尝鲜玩玩Hyper-V。
  • 以Win10专业版21H1+Hyper-V为例,若使用MacOS/Linux+VMWare/VirtualBox/KVM,则需依据实际情况参考操作。
  • Hyper-V需要在BIOS中开启CPU虚拟化,具体操作略。
  • 安装过程尽可能参考Cloudera官方文档,其余参考文章也都备注了来源。

整体思路如下:

  • 规划好整个集群的数量、配置、角色,准备好所有软件包。
  • 因台式机单机资源有限,同时开启多台虚拟机比较费,故先配置一台虚拟机A,尽可能将所有公共的配置设置好,再复制出其余虚拟机。
  • 需要有一台虚拟机B,作为CM Server和CDH私有仓库服务器,用于安装其余虚拟机所用的所有服务。其余所有虚拟机C的设置在安装CDH前都是一样的。
  • 因此操作流程为:
    • 配置A
    • 由A生成B,配置B为CM Server和CDH私有仓库服务器
    • 由A生成C,配置C为CM Agent
    • 由C生成DEFG等
    • 配置DB
    • 安装CDH

文中操作说明:

  • 文中叙述的可选操作或命令,如果是斜体的 可选:xxx 或在命令块注释内,是我在自己搭建的实际操作中没有执行的,否则是执行了的。
  • 操作涉及到Hosts/Hostname/IP/路径/文件命名/参数名/参数值等,均以集群规划部分的描述为示范。若使用不同的配置项,可将本文下载下来,查找替换成自己的配置再看更舒服。
  • 使用命令行操作,不使用界面。其实若PowerShell,鼠标操作可能更简单。
  • PowerShell命令行,默认需要以管理员身份运行终端,且仅在Terminal/PowerShell中验证过。
  • Shell操作,默认需要sudo或以root用户执行。
  • 如果使用yum等命令反应迟缓,可以自行配置国内proxy源加速访问。
  • 涉及到vi修改文件,含义如下:
    • 修改一行 (modify: from xxx to xxx)
    • 添加一行 (append: xxx)
    • 注释一行 (comment: # xxx),也可以删除该行

特别感谢参考文章:

1. 集群规划

需要准备的软件和版本。

1.1 硬件与角色规划

参考-Hardware Requirements

参考-CDH Cluster Hosts and Role Assignments

依据官方的"20 Worker Hosts with High Availability"角色搭配建议和最低硬件要求,整理图表如下。
其中"4c2g"代表官方建议4核CPU,2GB内存。因磁盘空间一般不是问题,故没有列出。
星号*表示该角色没有计入实际搭建和操作中,只是规划在表格中。
"Final Config"是依据实际最终搭建完成后的运行情况,倒推出的最低配置,仅供参考。
如果宿主机内存只有16~32GB,可以使用"10 Worker Hosts without High Availability"搭配,且将DataNode放在所有VM上,三台VM即可满足,但实用性可能不足,即无法快乐的跑Job。

Service Role master01 master02 master03 utility01 gateway01 node001 node002 node003 Total
HDFS NameNode 4c2g
SecondaryNN 4c2g
*JournalNode 1c1g 1c1g 1c1g
*ZKFC + +
DataNode 4c4g 4c4g 4c4g
YARN ResourceManager 1c6g *1c6g
JobHistoryServer 1c1g
NodeManager 8c1g 8c1g 8c1g
ZK ZooKeeper 4c1g 4c1g 4c1g
Hive HiveServer2 4c4g
Metastore Server 4c4g
Hue Server&LB 1c4g
CM All Services 4c12g
Oozie Server 1c1g
DB MySQL 2c4g
*Kafka *Kafka 2c4g 2c4g 2c4g
*Spark *History Server 1c1g
*HBase *Master 4c4g
*Thrift Server 2c1g
*Region Server 4c8g 4c8g 4c8g
Max CPU Cores 4 4 4 4 4 8 8 8 44
Total Memory 11 4 2 20 8 5 5 5 60
Final Config 4c16g 4c8g 4c4g 4c16g 4c8g 4c8g 4c8g 4c8g 16c64g

1.2 各VM的FQDN与IP规划

IP Addr FQDN short name
10.10.64.11 master01.cdh.lionxcat.com m01
10.10.64.12 master02.cdh.lionxcat.com m02
10.10.64.13 master03.cdh.lionxcat.com m03
10.10.64.51 utility01.cdh.lionxcat.com ut01
10.10.64.71 gateway01.cdh.lionxcat.com gw01
10.10.64.101 node001.cdh.lionxcat.com n001
10.10.64.102 node002.cdh.lionxcat.com n002
10.10.64.103 node003.cdh.lionxcat.com n003
10.10.64.250 centos7.cdh.lionxcat.com *c7

c7是模板机,不是CDH集群中的成员,用于复制出其余所有VM。

2. 宿主机环境准备

2.1 配置Terminal/PowerShell环境

  • 安装Terminal和插件的方法略。
    如果对某个PowerShell命令不熟悉,可以使用:
Get-Help New-VM -Online
  • 可选,配置好hosts,方便宿主机访问VM。
# 用管理员权限修改 C:\Windows\System32\drivers\etc\hosts
ipconfig /flushdns

2.2 安装Hyper-V

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
# 或者可以使用DISM安装
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值