本文用于记录我的第一次内网大数据集群配置过程。
本篇主要实现基础配置。
配置使用的软件版本和脚本参考自尚硅谷,链接如下:
链接: https://www.bilibili.com/video/BV1rL411E7uz?spm_id_from=333.1007.top_right_bar_window_custom_collection.content.click

hadoop集群搭建 【大数据数仓项目集群配置 二】

大数据数仓项目集群配置

  • 服务器及软件版本
  • 一、搭建本地yum源
    • 1.yum是什么
    • 2.本地yum源规划
    • 3.配置环节
      • 3.1 镜像准备
      • 3.2 服务器端配置
      • 3.3 客户端配置
      • 3.4 注意事项
  • 二、基础环境搭建
    • 1.搭建hadoop模板环境
    • 2.ssh免密登录
      • 2.1 ssh简介
      • 2.2 配置细节
      • 2.3 注意事项
    • 3.集群分发脚本
  • 参考文章

服务器及软件版本

服务器名称 IP
hadoop01 192.168.10.100
hadoop1 192.168.10.101
hadoop2 192.168.10.102
hadoop3 192.168.10.103

每台服务器配置64G内存,1T硬盘。(学习用模板机器最好配置4G内存,50G硬盘。)

软件名称 软件版本
jdk 1.8.0_212
hadoop 3.1.3
zookeeper 3.5.7
mysql 5.7.26
hive 3.1.2
spark 3.0.0
hbase 2.0.5
sqoop 1.4.6
kylin 3.0.1

一、搭建本地yum源

由于服务器处于内网环境,无法连接外网的镜像源,需要在本地搭建yum源,以便后续配置使用。
可以连接互联网的服务器,可以跳过这一步。

1.yum是什么

yum是一个软件包管理器,能够从指定的服务器自动下载RPM包并安装,并自动处理依赖关系。

2.本地yum源规划

服务端:hadoop01
客户端:hadoop1、hadoop2、hadoop3

3.配置环节

3.1 镜像准备

准备如CentOS-7-x86_64-Everything-2009.iso 的镜像文件。
everything的包更全面,所以这里使用everything而不是dvd。
文件的版本一定不能低于服务器上centos的版本

3.2 服务器端配置

#1.创建目录
[root@localhost ~]$ mkdir -p /media/centos7
#2.挂载镜像文件
[root@localhost ~]$ mount -o loop /mnt/CentOS-7-x86_64-Everything-2009.iso /mnt/
#3.查看挂载情况
[root@localhost ~]$ df -h
#4.复制文件
[root@localhost ~]$ cp -r /mnt/* /media/centos7
#5.配置yum源
[root@localhost ~]$ cd /etc/yum.repos.d/
[root@localhost ~]$ mkdir /tmp/backup
[root@localhost ~]$ mv * /tmp/backup   //备份yum源
[root@localhost ~]$ vim yum.repo      //文件名称一定以.repo为后缀
#6.yum.repo内容如下,配置时将注释删除。
[centos7]               //仓库描述(可自定义)
name=centos7 server   //对软件源的描述(与上面上面保持一致)
baseurl=file:///mnt  //镜像的挂载入地址 file:// --格式 /mnt--指定目录
gpgcheck=0            //不检查
gpgkey enabled=1             //此yum源语句块立即生效
#7.缓存建立
#在设置时提前关闭防火墙。
[root@localhost ~]$ yum clean all
[root@localhost ~]$ yum makecache
[root@localhost ~]$ yum repolist
#8.安装ftp,修改配置文件
#ftp是用于在网络上进行文件传输的一套标准协议。
[root@localhost ~]$ yum -y install vsftpd ftp
#9.修改文件
[root@localhost ~]$ vim /etc/vsftpd/vsftpd.conf
anon_root=/media/centos7
#10.重启ftp服务并设置开机自启动。
[root@localhost ~]$ systemctl restart vsftpd
[root@localhost ~]$ systemctl enable vsftpd

3.3 客户端配置

在每台客户端服务器都进行如下配置。

#1.配置yum源文件
[root@localhost ~]$ cd /etc/yum.repos.d/
[root@localhost ~]$ mkdir /tmp/backup
[root@localhost ~]$ mv * /tmp/backup //备份yum源
[root@localhost ~]$ vim local.repo //文件名称一定以.repo为后缀
#内容如下:
[local-yum]
name=CentOS7
baseurl=ftp://10.8.8.246
gpgcheck=0
enabled=1
#2.缓存建立
[root@localhost ~]$ clean all
[root@localhost ~]$ yum makecache
[root@localhost ~]$ yum repolist

3.4 注意事项

如果需要重启挂载了镜像文件的服务器,先提前结束挂载,否则服务器会进入紧急状态。

[root@localhost ~]$ umount /mnt/

二、基础环境搭建

1.搭建hadoop模板环境

需要在上hadoop01、hadoop1、hadoop2、hadoop3上都搭建。

#1、安装所需工具
[root@localhost ~]$ yum install -y net-tools
[root@localhost ~]$ yum install -y vim
#2、关闭防火墙
[root@localhost ~]$ systemctl stop firewalld
[root@localhost ~]$ systemctl disable firewalld.service
#3、修改host信息
#3.1 修改hostname
#以192.168.10.101为例。
[root@localhost ~]$ vim /etc/hostname
hadoop1
#3.2 修改hosts
[root@localhost ~]$ vim /etc/hosts
#内容如下
192.168.10.100 hadoop01
192.168.10.101 hadoop1
192.168.10.102 hadoop2
192.168.10.103 hadoop3
#4、创建hadoop用户,修改密码
[root@hadoop1 ~]$ useradd hadoop
[root@hadoop1 ~]$ passwd 123456      //密码可以自行设置
#5、配置hadoop的权限
[root@hadoop1 ~]$ vim /etc/sudoers
修改/etc/sudoers文件,在%wheel这行下面添加一行,如下所示:
修改前:
## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL
修改后:
## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL
hadoop   ALL=(ALL)     NOPASSWD:ALL
#6、创建所需文件夹
[hadoopt@hadoop1 ~]$ mkdir /opt/module
[hadoopt@hadoop1 ~]$ mkdir /opt/software
[hadoopt@hadoop1 ~]$ chown hadoop:hadoop /opt/module
[hadoopt@hadoop1 ~]$ chown hadoop:hadoop /opt/software
3.1.7 卸载自带的jdk
[hadoopt@hadoop1 ~]$ rpm -qa | grep -I java | xargs -nl rpm -e --nodeps

2.ssh免密登录

2.1 ssh简介

Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的安全网络协议。它是专为远程登录会话(甚至可以用Windows远程登录Linux服务器进行文件互传)和其他网络服务提供安全性的协议,可有效弥补网络中的漏洞。通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。目前已经成为Linux系统的标准配置

2.2 配置细节

#1、生成公钥和私钥
在每一台服务器上都运行下列代码。
[hadoopt@hadoop1 .ssh]$ ssh-keygen -t rsa
#2、将公钥拷贝到其他服务器
在每一台服务器上都运行下列代码。
[hadoopt@hadoop1 .ssh]$ ssh-copy-id 192.168.10.100
[hadoopt@hadoop1 .ssh]$ ssh-copy-id 192.168.10.101
[hadoopt@hadoop1 .ssh]$ ssh-copy-id 192.168.10.102
[hadoopt@hadoop1 .ssh]$ ssh-copy-id 192.168.10.103

2.3 注意事项

如果没有.ssh文件,则使用ssh连接其他服务器,连接后会自动创建.ssh文件。

[hadoopt@hadoop1 ~]$ ssh hadoop2
[hadoopt@hadoop2 ~]$ exit

3.集群分发脚本

编写xsync脚本,实现对差异文件的更新。
在/home/hadoop/bin目录下创建xsync文件

[hadoop@hadoop1 opt]$ cd /home/hadoop
[hadoop@hadoop1 ~]$ mkdir bin
[hadoop@hadoop1 ~]$ cd bin
[hadoop@hadoop1 bin]$ vim xsync

在该文件中编写如下代码

#!/bin/bash#1. 判断参数个数
if [ $# -lt 1 ]
thenecho Not Enough Arguement!exit;
fi#2. 遍历集群所有机器
for host in hadoop1 hadoop2 hadoop3
doecho ====================  $host  ====================#3. 遍历所有目录,挨个发送for file in $@do#4. 判断文件是否存在if [ -e $file ]then#5. 获取父目录pdir=$(cd -P $(dirname $file); pwd)#6. 获取当前文件的名称fname=$(basename $file)ssh $host "mkdir -p $pdir"rsync -av $pdir/$fname $host:$pdirelseecho $file does not exists!fidone
done
#修改脚本xsync的执行权限
[hadoop@hadoop1 bin]$ chmod +x xsync
#测试脚本
[hadoop@hadoop1 ~]$ xsync /home/hadoop/bin
#将脚本复制到/bin中,以便全局调用
[hadoop@hadoop1 bin]$ sudo cp xsync /bin/
#同步环境变量配置(root所有者)
[hadoop@hadoop1 ~]$ sudo ./bin/xsync /etc/profile.d/my_env.sh
#让环境变量生效
[hadoop@hadoop2 bin]$ source /etc/profile
[hadoop@hadoop3 opt]$ source /etc/profile

参考文章

搭建内网yum源
尚硅谷数仓4.0

【大数据数仓项目集群配置 一】相关推荐

  1. 大数据互联网架构 tomcat集群配置时三个端口的作用

    tomcat集群配置时三个端口的作用 在配置多个tomcat时需要同时配置这三个端口 Connector用于监听请求 protocol: http/1.1协议 , 用于监听浏览器发送的请求 , 设置成 ...

  2. 大数据数仓项目总结(一)需求、技术选型、框架版本、服务器、集群规模

    文章目录 一.需求描述 1)项目大致需求 2)需考虑的问题 二.项目框架及选型 1.技术选型 2.项目架构与数据流程 3.框架版本选择 1)Hadoop发行版本选择 2)Apache框架版本具体型号 ...

  3. Python+大数据-数仓实战之滴滴出行(一)

    Python+大数据-数仓实战之滴滴出行(一) 1. 项目架构图 1.1 数据流程处理 1.2 数仓分层 1.3 创建数据库 在Hive中创建数据库-- 创建ods库 create database ...

  4. 从原理到实践,手把手带你轻松get数仓双集群容灾

    摘要:本文通过介绍双集群的架构.log结构.分析步骤来介绍双集群容灾的问题分析方法. 本文分享自华为云社区<从原理到实践,手把手带你轻松get数仓双集群容灾>,原文作者:Puyol . 双 ...

  5. 大数据平台搭建及集群规划

    CDH大数据平台搭建之集群规划_码上_成功的博客-CSDN博客_cdh集群规划 大数据Hadoop分布式集群部署(详细版)_arnoldmp的博客-CSDN博客_分布式集群部署 大数据平台的硬件规划. ...

  6. 大数据数仓建模(3)

    大数据数仓建模(3) 2.2.6 人员配置参考 1.旁敲侧击的问你到底做过没有 2.你们大概规模,数据量 1整体架构 属于研发部/技术部/数据部/基础平台部,我们属于大数据组,其他还有后端项目组,前端 ...

  7. Python + 大数据 - 数仓实战之智能电商分析平台

    Python + 大数据 - 数仓实战之智能电商分析平台 1. 项目架构 2. 数据仓库维度模型设计-事实表 事实表的特征:表里没有存放实际的内容,他是一堆主键的集合,这些ID分别能对应到维度表中的一 ...

  8. 大数据数仓高级面试题整理

    大家好,给大家整理了一下大数据数仓高级面试题,希望大侠们能够喜欢. 数仓高内聚低耦合是怎么做的 定义 高内聚:强调模块内部的相对独立性,要求模块内部的元素尽可能的完成一个功能,不混杂其他功能,从而使模 ...

  9. 大数据/数仓面试灵魂30问

    1.什么是数据仓库?如何构建数据仓库?(如果这个问题回答的好,后面很多问题都不需要再问) 2.如何建设数据中台?可简单说下理解与思路 3.数据仓库.数据中台.数据湖的理解 4.传统数仓的程度(建模工具 ...

最新文章

  1. 下一个十年,AI将在这10大领域颠覆世界!
  2. HDLBits 系列(6)(Reduction)缩位运算符
  3. python的优点-python的功能与优缺点
  4. ThinkPHP 框架培训资料
  5. VirtualBox安装Fedora文件共享
  6. linux-free命令
  7. 指定结构体元素的位字段
  8. 关于Java Collections的几个常见问题
  9. CentOS7安装单机版RabbitMQ集群
  10. 使用join()方法 分隔拆分后的数组
  11. 976. 三角形的最大周长
  12. java在dos命令_JAVA中如何执行DOS命令
  13. 复盘模型_如何运用MT4软件进行复盘,提高水平
  14. 后盾网php视频教程迅雷下载,DEDE织梦实战+迅雷看看前端开发项目+HDPHP视频 后盾网三套经典PHP开发实战课程...
  15. 当VR踏入足球赛事会是如何?用数学运算又是如何?
  16. wps和office有什么区别?
  17. An internal error occurred during: Add Deployment.
  18. 石墨烯优异的光学和电学性能使之成为制造光电探测器的理想材料-供应黑磷烯石墨烯复合材料空心微球 石墨烯/电磁功能化有机微球 石墨烯/阴离子多聚糖复合微球载体 石墨烯/Ag炭微球气凝胶
  19. 计算机组成加减交替法被除数,2019考研408计算机组成原理知识:定点数的表示和运算...
  20. 地表温度反演操作总结

热门文章

  1. JavaSpark | RDD实战:统计网站 pv 和 uv
  2. 21. VUE 的 V-model 指令(双向绑定input)【主要绑定表单】
  3. 宗次郎 The Great Yellow River II 大黄河2
  4. javaweb 入门到精通ServletJSP;-王磊-专题视频课程
  5. 爬取大众点评网的酒店信息
  6. 高手理解的止损是这样的,你做到了吗?
  7. 邀小黄人代言,vivo的国际化启示
  8. SpringBoot+Vue实现课程评价系统
  9. iOS 最全动画教程(基础)
  10. 【有感】After the night I burned all memory