大数据集群环境搭建(上)

本文涉及的产品
云防火墙,500元 1000GB
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 大数据集群环境搭建

本文要点

1、服务器集群环境搭建
2、了解shell编程

内容大纲

#linux集群环境搭建
  集群、分布式---->多台机器
  虚拟机克隆
  服务器基础环境准备
    1、防火墙关闭
    2、主机名hostname修改
    3、hosts主机名 IP映射
    4、ssh免密登录
    5、扩展:跳板机、堡垒机
    6、集群时间同步
    7、scp 跨集群复制文件
#Linux软件安装
  rpm包
  yum安装软件
#软件安装
  JDK 
# shell编程

一、大数据集群环境搭建

1.1、分布式、集群概念初识

分布式:多台不同的服务器中部署不同的服务模块,通过远程调用协同工作,对外提供服务。

集群:多台不同的服务器中部署相同应用或服务模块,构成一个集群,通过负载均衡设备对外提供服务。

分布式、集群

  • 共同点:多台机器。 相对的概念叫做单机系统。
  • 注意:在口语中经常混淆分布式和集群的概念的。都是汲取两者的共同点。
比如:搭建一个分布式hadoop集群。
背后意思:不要搭建单机版本的 搭建多台机器版本的。 

集群架构

  • 主从架构
主角色:master leader   大哥
从角色:slave  follower 小弟
主从角色各司其职,需要共同配合对外提供服务。
常见的是一主多从 也就是一个大哥带着一群小弟共同干活。

主备架构

主角色:active
备角色:standby
主备架构主要是解决单点故障问题的 保证业务的持续可用。
常见的是一主一备 也可以一主多备。
1.2、集群环境搭建
1.2.1、虚拟机克隆
  • 前提:是虚拟机处于关闭状态。
  • 分类:链接克隆 、完整克隆
链接克隆:表层是互相独立 底层存储是交织在一起;
完整克隆:完全互相独立的两台虚拟机

修改克隆机器属性。

完整克隆意味着两台机器一模一样。在局域网网络中,有些属性是决定不能一样的。
比如:IP、MAC、主机名hostname

3台虚拟机硬件分配 16G

node1  2*2cpu  4G内存
node2  1*1cpu  2G内存
node3  1*1cpu  2G内存
1.2.2、修改IP、主机名
  • 命令修改 临时生效 重启无效
  • 修改底层配置文件 永久生效 重启才能生效。
vim /etc/hostname
node2.itcast.cn
#修改IP
vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"     #网卡类型 以太网
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"   #ip等信息是如何决定的?  dhcp动态分配、 static|node 手动静态分配
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="62982d98-441d-43ef-8e56-73aa36ab6f07"
DEVICE="ens33"
ONBOOT="yes"       #是否开机启动网卡服务
IPADDR="192.168.88.152"  #IP地址
PREFIX="24"   #子网掩码   等效: NETMASK=255.255.255.0
GATEWAY="192.168.88.1"  #网关服务
DNS1="192.168.88.1"     #网关DNS解析
DOMAIN="114.114.114.114" #公网DNS解析  114.114.114.114  谷歌:8.8.8.8  阿里百度DNS
IPV6_PRIVACY="no
#修改主机名hostname
node2.itcast.cn
  • 重启linxu系统 reboot
1.2.3、主机名和IP映射配置
  • 背景
在网络中,很少直接通过IP访问机器,原因难记。
通常使用主机名或者域名访问。
此时就会涉及到主机名域名和IP之间的解析

实现

  • 本地hosts文件 进行本地查找解析
localhost 127.0.0.1
  • 寻找DNS服务器 域名解析服务
  • linux上
vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.88.151 node1.itcast.cn node1
192.168.88.152 node2.itcast.cn node2
192.168.88.153 node3.itcast.cn node3

windows上

C:\Windows\System32\drivers\etc\hosts
192.168.88.151 node1.itcast.cn node1
192.168.88.152 node2.itcast.cn node2
192.168.88.153 node3.itcast.cn node3
1.2.4、防火墙关闭
  • firewalld
#查看防火墙状态
systemctl status firewalld
#关闭防火墙
systemctl stop firewalld
#关闭防火墙开机自启动
systemctl disable firewalld
#centos服务开启关闭命令
centos6:(某些可以在centos7下使用)
  service 服务名 start|stop|status|restart
  chkconfig on|off 服务名
centos7:  
  systemctl start|stop|status|restart 服务名
  systemctl disable|enable 服务名  #开机自启动  关闭自启

selinux

vim /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
  • 需要重启生效
1.2.5、集群机器间免密登录
  • 背景
#在进行集群操作的时候  需要从一台机器ssh登录到其他机器进行操作 默认情况下需要密码
[root@node1 ~]# ssh node2
The authenticity of host 'node2 (192.168.88.152)' can't be established.
ECDSA key fingerprint is SHA256:kTth0zkiMakFp9O0B8v0GHnpQy86+YfpHqAX4Cxb/hk.
ECDSA key fingerprint is MD5:b2:74:4f:b3:a0:b4:7e:a1:3d:50:c4:55:8b:3b:78:cb.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node2,192.168.88.152' (ECDSA) to the list of known hosts.
root@node2's password: 
Last login: Sun Jan 29 17:00:02 2023 from 192.168.88.8
[root@node2 ~]# exit
logout
Connection to node2 closed.
  • 需求:能否实现免密ssh登录。
  • 技术:SSH方式2:免密登录功能。


#实现node1----->node2
#step1
在node1生成公钥私钥
ssh-keygen  一顿回车 在当前用户的home下生成公钥私钥 隐藏文件
[root@node1 .ssh]# pwd
/root/.ssh
[root@node1 .ssh]# ll
total 12
-rw------- 1 root root 1679 Jan 29 17:12 id_rsa
-rw-r--r-- 1 root root  402 Jan 29 17:12 id_rsa.pub
-rw-r--r-- 1 root root  182 Jan 29 17:05 known_hosts
#step2
copy公钥给node2
ssh-copy-id node2  
注意第一次需要密码
#step3  
[root@node1 .ssh]# ssh node2
Last login: Sun Jan 29 17:06:00 2023 from node1.itcast.cn
[root@node2 ~]# exit
logout
Connection to node2 closed.

要求

#至少打通node1---->node1  node2  node3 这三个免密登录 
#至于所有机器之间要不要互相免密登录 看你心情
  • 扩展:跳板机、堡垒机
作为局域网连接外网的机子,同时也承载着全部的防护压力像堡垒一样。 

1.2.6、跨机器远程copy文件
  • 背景:linux上copy文件 cp
  • 命令:scp 基于ssh协议跨网络cp动作
  • 注意事项,没有配置ssh免密登录也可以进行scp远程复制 只不过在复制的时候需要输入密码。
  • 例子
#本地copy其他机器
scp test.txt root@node2:/root/
scp -r linux02/ root@node2:$PWD   #copy文件夹 -r参数   $PWD copy至和本机相同当前路径
#为什么不需要输入密码 
因为配置了机器之间的免密登录  如果没有配置 scp的时候就需要输入密码
#copy其他机器文件到本地
scp root@node2:/root/test2.txt  ./  
1.2.7、集群的时间同步问题
  • 背景:分布式软件主从角色之间通常基于心跳时间差来判断角色工作是否正常
  • 国家授时中心 北京时间
  • 授时服务器 国家级 企业级 院校级
  • linux
  • ntp 网络时间协议 实现基于网络授时同步时间。
  • date
查看当前的系统时间 也可以手动指定设置时间 不精准
[root@node1 ~]# date
Sun Jan 29 18:28:44 CST 2023

ntpdate

#ntpdate  授时服务器
ntpdate ntp5.aliyun.com
[root@node1 ~]# ntpdate ntp5.aliyun.com
29 Jan 18:29:09 ntpdate[2016]: adjust time server 203.107.6.88 offset -0.030927 sec
#企业中运维往往不喜欢ntpdate 原因是这个命令同步时间是立即的。不是平滑过渡的。

ntp软件

通过配置 平滑的和授时服务器进行时间的同步(运维)


相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
6月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
7月前
|
负载均衡 算法 关系型数据库
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL集群架构负载均衡故障排除与解决方案
本文深入探讨 MySQL 集群架构负载均衡的常见故障及排除方法。涵盖请求分配不均、节点无法响应、负载均衡器故障等现象,介绍多种负载均衡算法及故障排除步骤,包括检查负载均衡器状态、调整算法、诊断修复节点故障等。还阐述了预防措施与确保系统稳定性的方法,如定期监控维护、备份恢复策略、团队协作与知识管理等。为确保 MySQL 数据库系统高可用性提供全面指导。
zdl
|
消息中间件 运维 大数据
大数据实时计算产品的对比测评:实时计算Flink版 VS 自建Flink集群
本文介绍了实时计算Flink版与自建Flink集群的对比,涵盖部署成本、性能表现、易用性和企业级能力等方面。实时计算Flink版作为全托管服务,显著降低了运维成本,提供了强大的集成能力和弹性扩展,特别适合中小型团队和业务波动大的场景。文中还提出了改进建议,并探讨了与其他产品的联动可能性。总结指出,实时计算Flink版在简化运维、降低成本和提升易用性方面表现出色,是大数据实时计算的优选方案。
zdl
525 56
|
存储 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
178 1
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
|
SQL 存储 大数据
单机顶集群的大数据技术来了
大数据时代,分布式数仓如MPP成为热门技术,但其高昂的成本让人望而却步。对于多数任务,数据量并未达到PB级,单体数据库即可胜任。然而,由于SQL语法的局限性和计算任务的复杂性,分布式解决方案显得更为必要。esProc SPL作为一种开源轻量级计算引擎,通过高效的算法和存储机制,实现了单机性能超越集群的效果,为低成本、高效能的数据处理提供了新选择。
|
11月前
|
存储 负载均衡 监控
揭秘 Elasticsearch 集群架构,解锁大数据处理神器
Elasticsearch 是一个强大的分布式搜索和分析引擎,广泛应用于大数据处理、实时搜索和分析。本文深入探讨了 Elasticsearch 集群的架构和特性,包括高可用性和负载均衡,以及主节点、数据节点、协调节点和 Ingest 节点的角色和功能。
489 0
|
分布式计算 大数据 分布式数据库
大数据-158 Apache Kylin 安装配置详解 集群模式启动(一)
大数据-158 Apache Kylin 安装配置详解 集群模式启动(一)
243 5
|
SQL 分布式计算 NoSQL
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
293 4
|
资源调度 大数据 分布式数据库
大数据-158 Apache Kylin 安装配置详解 集群模式启动(二)
大数据-158 Apache Kylin 安装配置详解 集群模式启动(二)
220 2
|
消息中间件 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
142 2

热门文章

最新文章

下一篇
oss云网关配置