VMware中搭建Hadoop集群简易步骤(文字版)

VMware中搭建Hadoop集群(文字版)

所用各工具版本:

  • 系统镜像:CentOS-7-x86_64-DVD-1810
  • VM version:VMware Workstation Pro15
  • Java version:jdk-8u221-linux-x64
  • Hadoop version:hadoop-2.7.7

准备步骤:

  • 下载CentOS-7镜像、下载匹配的Sun JDK包、下载匹配的Hadoop包
  • 将Vmware中的VMnet8网络设置成“NAT模式”,设置子网IP、子网掩码、网关

集群规划:

  • 集群搭建之前,应该进行 集群规划 ,文件中的某些配置需要基于对集群的规划,进行配置之前,需要先计划好Hadoop中的各个组件服务器应该搭载在哪台主机上,实现 负载均衡,避免由于宕机而造成不可逆损失,集群规划 是搭建分布式环境之前的最重要步骤之一,本次实验中具体规划如下:
hadoop101 hadoop102 hadoop103
HDFS NameNode
DateNode
DateNode DateNode
SecondaryNameNode
YARN NodeManager ResourceManager
NodeManager
NodeManager

正式步骤:

1. 安装系统镜像

  • “软件安装” 选择“Server with GUI”,这样就具备了如ssh、UI界面等一系列基本工具,“磁盘划分” 选择默认或者自己手动分区都可,自定义最好

2. 创建root用户和普通用户

  • 注意普通用户的用户名必须要全部小写,本次创建的用户名为tomandersen

3. 安装Vmware Tools

  • 打开桌面自带的磁盘镜像,解压tar.gz到桌面,执行文件夹中vmware-install.pl文件,安装完成后,在Linux系统中调整分辨率到合适配置

4. 添加普通用户sudo权限并实现免密使用sudo命令

  • 方法1: 使用 visudo命令 或者直接手动修改 /etc/sudoers配置文件,在root ALL=(ALL) ALL后方添加设置,格式为 <用户名> ALL=(ALL) NOPASSWD:ALL,如tomandersen ALL=(ALL) NOPASSWD:ALL即可实现指定用户使用sudo命令无需密码,也可以使用命令“sudo -s”实现无密码登录root用户。
  • 方法2: 或者也可以使用实现组内用户全部免密使用sudo命令:①创建名为hadoop的用户组,②将用户添加到hadoop组,③将root组成员设置成全部免密:格式为%<组名> ALL=(ALL) NOPASSWD:ALL,如%hadoop ALL=(ALL) NOPASSWD:ALL

5. 修改网卡名(可以不修改)

6. 设置静态IP:

7. 修改主机名:

  • 方法1: 可以手动编辑 /etc/sysconfig/network文件,添加或者设置NETWORKING=yesHOSTNAME=<新主机名>HOSTNAME=hadoop101重启生效
  • 方法2: 使用命令格式为hostnamectl set-hostname <新主机名>,如hostnamectl set-hostname hadoop101立即生效
  • 方法3: 修改/etc/hostname文件,直接添加进这个文件的字符串即为主机名,如hadoop101重启生效

8. 配置/etc/hosts文件

  • 添加集群中各个主机IP地址与主机名的映射关系,如
192.168.126.101 hadoop101
192.168.126.102 hadoop102
192.168.126.103 hadoop103

9. 禁用防火墙 firewalld

  • systemctl disable firewalld.service
  • 注意:在CentOS 7或RHEL 7或Fedora中防火墙由firewalld来管理

10. 在/opt/下创建module和software文件夹并将所属权赋给之前创建的普通用户

  • 创建文件夹:sudo mkdir modulesudo mkdir software
  • 改变文件夹所属组和所属用户:sudo chown tomandersen:tomandersen module/ software/

11. 使用XShell工具远程连接主机Hadoop101将JDK和Hadoop包传入到/opt/software/路径下

  • 可以在XShell中使用rz命令,或者直接拖拽文件到对应区域

12. 卸载现有JDK

  • 使用yum命令查看是否安装有JDK:sudo yum list installed | grep java,然后将jdk相关包删除:sudo yum remove <包名>
  • 自带的是Open JDK,这里我们使用Sun JDK

13. 重装JDK

  • /opt/software/路径下的JDK解压到/opt/module/路径下:tar -zxvf jdk-8u221-linux-x64.tar.gz -C /opt/module/(因为解压目录不在当前路径下所以使用tar命令需要增加-C参数)
  • 设置和添加全局环境变量JAVA_HOMEPATH:使用sudo+vi命令修改/etc/profile文件,在末尾添加export JAVA_HOME=/opt/module/jdk1.8.0_221export PATH=$PATH:$JAVA_HOME/bin
  • 重新加载/etc/profile文件使其生效:source /etc/profile,检查环境变量JAVA_HOME:which java

14. 安装Hadoop

  • 同样将/opt/software/路径下的Hadoop包解压到/opt/module/路径下:tar -xzvf hadoop-2.7.7.tar.gz -C /opt/module/
  • 设置和添加全局环境变量HADOOP_HOMEPATH:使用sudo+vi命令修改/etc/profile文件,在末尾添加export HADOOP_HOME=/opt/module/hadoop-2.7.7export PATH=$PATH:$HADOOP_HOME/bin
  • 重新加载/etc/profile文件使其生效:source /etc/profile,检查是否安装成功:hadoop version

15. 配置Hadoop

16. 完全拷贝虚拟机并且更改新其他主机名和IP

  • 完全拷贝虚拟机hadoop101,生成hadoop102hadoop103,这样hadoop101的配置信息也一并同步到了其他主机中
  • hadoop102hadoop103中将主机名分别设置成对应主机名:hostnamectl set-hostname hadoop102hostnamectl set-hostname hadoop103
  • 分别修改主机IP地址,本次实验中hadoop102hadoop103地址分别设置为192.168.126.102192.168.126.103,然后重启网卡更新IP地址

17. 设置各主机间ssh免密登录

18. 使用ntp进行集群时间同步

19. 格式化NameNode节点

  • 在第一次启动集群之前需要格式化NameNode节点hdfs namenode -format或者hadoop namenode -format,建议用前者,后者命令将被弃用
  • 如果不是第一次格式化NameNode,需要事先删除datalogs文件夹

20. 启动HDFS集群

  • 使用hadoop-2.7.7/sbin/路径下的start-dfs.sh脚本启动HDFS集群,在节点上使用jps命令查看Java进程,观察进程启动情况是否和集群规划中的匹配
  • 注意:只能在NameNode主机上启动HDFS集群,否则无法启动NameNode进程,而只能启动DataNode

21. 启动YARN集群:

  • 使用hadoop-2.7.7/sbin/路径下的start-yarn.sh脚本启动YARN集群,在节点上使用jps命令查看Java进程,观察进程启动情况是否和集群规划中的匹配
  • 注意:只能在ResourceManager主机上启动YARN集群,否则无法启动ResourceManager进程,而只能启动NodeManager

22. 运行测试:

  • 使用Hadoop自带的例子测试集群是否搭建成功,观察运行结果:
  • hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar pi 10 10
全部评论

相关推荐

不愿透露姓名的神秘牛友
今天 11:16
点赞 评论 收藏
分享
避坑恶心到我了大家好,今天我想跟大家聊聊我在成都千子成智能科技有限公司(以下简称千子成)的求职经历,希望能给大家一些参考。千子成的母公司是“同创主悦”,主要经营各种产品,比如菜刀、POS机、电话卡等等。听起来是不是有点像地推销售公司?没错,就是那种类型的公司。我当时刚毕业,急需一份临时工作,所以在BOSS上看到了千子成的招聘信息。他们承诺无责底薪5000元,还包住宿,这吸引了我。面试的时候,HR也说了同样的话,感觉挺靠谱的。于是,我满怀期待地等待结果。结果出来后,我通过了面试,第二天就收到了试岗通知。试岗的内容就是地推销售,公司划定一个区域,然后你就得见人就问,问店铺、问路人,一直问到他们有意向为止。如果他们有兴趣,你就得摇同事帮忙推动,促进成交。说说一天的工作安排吧。工作时间是从早上8:30到晚上18:30。早上7点有人叫你起床,收拾后去公司,然后唱歌跳舞(销售公司都这样),7:55早课(类似宣誓),8:05同事间联系销售话术,8:15分享销售技巧,8:30经理训话。9:20左右从公司下市场,公交、地铁、自行车自费。到了市场大概10点左右,开始地推工作。中午吃饭时间大约是12:00,公司附近的路边盖饭面馆店自费AA,吃饭时间大约40分钟左右。吃完饭后继续地推工作,没有所谓的固定中午午休时间。下午6点下班后返回公司,不能直接下班,需要与同事交流话术,经理讲话洗脑。正常情况下9点下班。整个上班的一天中,早上到公司就是站着的,到晚上下班前都是站着。每天步数2万步以上。公司员工没有自己的工位,百来号人挤在一个20平方米的空间里听经理洗脑。白天就在市场上奔波,公司的投入成本几乎只有租金和工资,没有中央空调。早上2小时,晚上加班2小时,纯蒸桑拿。没有任何福利,节假日也没有3倍工资之类的。偶尔会有冲的酸梅汤和西瓜什么的。公司的晋升路径也很有意思:新人—组长—领队—主管—副经理—经理。要求是业绩和团队人数,类似传销模式,把人留下来。新人不能加微信、不能吐槽公司、不能有负面情绪、不能谈恋爱、不能说累。在公司没有任何坐的地方,不能依墙而坐。早上吃早饭在公司外面的安全通道,未到上班时间还会让你吃快些不能磨蹭。总之就是想榨干你。复试的时候,带你的师傅会给你营造一个钱多事少离家近的工作氛围,吹嘘工资有多高、还能吹自己毕业于好大学。然后让你早点来公司、无偿加班、抓住你可能不会走的心思进一步压榨你。总之,大家在找工作的时候一定要擦亮眼睛,避免踩坑!———来自网友
qq乃乃好喝到咩噗茶:不要做没有专业门槛的工作
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务