hadoop03---nginx+keepalived

本文介绍Nginx的安装与配置方法,包括反向代理、负载均衡及动静分离等功能实现。同时,深入探讨如何利用Keepalived实现Nginx的高可用性配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1.反向代理
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

 

1.1.负载均衡
负载均衡,英文名称为Load Balance,是指建立在现有网络结构之上,并提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。其原理就是数据流量分摊到多个服务器上执行,减轻每台服务器的压力,多台服务器共同完成工作任务,从而提高了数据的吞吐量。

1.Nginx的安装
1.1.下载nginx
官网:http://nginx.org/
1.2.上传并解压nginx
tar -zxvf nginx-1.8.1.tar.gz -C /usr/local/src
1.3.编译nginx
#进入到nginx源码目录(源码包不是二进制包)
cd /usr/local/src/nginx-1.8.1

#检查安装环境,并指定将来要安装的路径
./configure --prefix=/usr/local/nginx

#缺包报错 ./configure: error: C compiler cc is not found

#使用YUM安装缺少的包(本地yum源)
yum -y install gcc pcre-devel openssl openssl-devel

#编译安装(make是编译。完成之后make install是安装)
make && make install

安装完后测试是否正常:
/usr/loca/nginx/sbin/nginx
查看端口是否有ngnix进程监听
netstat -ntlp | grep 80
1.配置nginx
1.1.配置反向代理
1.修改nginx配置文件
server {
    listen       80;
    server_name  nginx-01.itcast.cn;    #nginx所在服务器的主机名,本机的主机名
#反向代理的配置
location / {             #拦截所有请求/开头,
    root html;
        proxy_pass http://192.168.0.21:8080;   # proxy_pass是走过通过,这里是代理走向的目标服务器:tomcat(http://192.168.0.21:8080)。外面用户访问nginx的80端口都会走到tomcat的80端口。
    }
}
2.启动tomcat-01上的tomcat

3.启动nginx-01上的nginx
./nginx

重启:
kill -HUP `cat /usr/local/nginx/logs/nginx.pid `
参考网址:http://www.cnblogs.com/jianxie/p/3990377.html

1.1.动静分离(正则表达式)
#动态资源转发给tomcat :  index.jsp
location ~ .*\.(jsp|do|action)$ {
    proxy_pass  http://tomcat-01.itcast.cn:8080;
}

#静态资源nginx自己的服务器返回。
location ~ .*\.(html|js|css|gif|jpg|jpeg|png)$ {
    expires 3d;
}
1.2.负载均衡(连接多台tomcat)
在http这个节下面配置一个叫upstream的,后面的名字可以随意取,但是要和location下的proxy_pass http://后的保持一致。
http {
    是在http里面的, 已有http, 不是在server里,在server外面
    upstream tomcats { 
        server 127.0.0.1:8080 weight=1;  #weight权重
        server 192.168.88.34:8080 weight=1;
        server shizhan04:8080 weight=1;
}
#卸载server里,~表示大小写敏感,.表示任意非回车字符,*表示任意,\.表示字符点,以jsp/do/action结尾。
location ~ .*\.(jsp|do|action) {
    proxy_pass http://tomcats;        #tomcats是后面的tomcat服务器组的逻辑组号
}
}
2.利用keepalived实现高可靠(多台nginx)
2.1.高可靠概念
HA(High Available), 高可用性集群,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点。每台nginx有一个keepalived。

2.2.高可靠软件keepalived
keepalive是一款可以实现高可靠的软件,通常部署在2台服务器上,分为一主一备。Keepalived可以对本机上的进程进行检测,一旦Master检测出某个进程出现问题,将自己切换成Backup状态,然后通知另外一个节点切换成Master状态。
2.3.keepalived安装
下载keepalived官网:http://keepalived.org

将keepalived解压到/usr/local/src目录下
tar -zxvf  keepalived-1.2.19.tar.gz -C /usr/local/src

进入到/usr/local/src/keepalived-1.2.19目录
cd /usr/local/src/keepalived-1.2.19

开始configure
./configure --prefix=/usr/local/keepalived

#编译并安装
make && make install
2.4.将keepalived添加到系统服务中(用service来启动)
拷贝执行文件(keepalived是启动脚本,拷贝到系统的sbin下面)
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
将init.d文件拷贝到etc下,加入开机启动项
cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived
将keepalived文件拷贝到etc下(配置文件拷贝到系统目录)
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ 
创建keepalived文件夹
mkdir -p /etc/keepalived
将keepalived配置文件拷贝到etc下
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf
添加可执行权限
chmod +x /etc/init.d/keepalived
##以上所有命令一次性执行:
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ 
mkdir -p /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf
chmod +x /etc/init.d/keepalived
chkconfig --add keepalived    
chkconfig keepalived on

添加keepalived到开机启动
chkconfig --add keepalived    
chkconfig keepalived on
2.5.配置keepalived虚拟IP(2个keepalived抢ip地址)
修改配置文件: /etc/keepalived/keepalived.conf
#MASTER节点
global_defs {
}
vrrp_instance VI_1 {
    state MASTER   #指定A节点为主节点 备用节点上设置为BACKUP即可
    interface eth0    #绑定虚拟IP的网络接口
    virtual_router_id 51   #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组,同一个组抢一个ip。
    priority 100   #主节点的优先级(1-254之间),备用节点必须比主节点优先级低
    advert_int 1  #组播信息发送间隔,两个节点设置必须一样,心跳,
    authentication {    #设置验证信息,两个节点必须一致
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {    #指定虚拟IP, 两个节点设置必须一样,2个nginx在哪个网段虚礼ip就在哪个网段,虚礼ip是对外的ip地址,24是子网掩码255.255.255是3个8位的1就是24。
        192.168.33.60/24    #如果两个nginx的ip分别是192.168.33.61和192.168.33.62,则此处的虚拟ip跟它俩同一个网段即可
    }
}
#BACKUP节点
global_defs {
}
vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 51
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.33.60/24
    }
}
#分别启动两台机器上的keepalived
service keepalived start
测试:
杀掉master上的keepalived进程,你会发现,在slave机器上的eth0网卡多了一个ip地址
查看ip地址的命令:  ip addr (ifconfig看的是第一个地址,多个地址用ip addr查看)。
Nginx死了那么keepalived也要切换主备。
2.6.配置keepalived心跳检查
原理:
Keepalived并不跟nginx耦合,它俩完全不是一家人
但是keepalived提供一个机制:让用户自定义一个shell脚本去检测任何程序,脚本返回要检测程序的进程状态给keepalived就可以了。keepalived提供的就是换ip的功能。


#MASTER节点
global_defs {
}

vrrp_script chk_health {
    script "[[ `ps -ef | grep nginx | grep -v grep | wc -l` -ge 2 ]] && exit 0 || exit 1"    //ps -ef | grep nginx是查找nginx进程,但是会出来grep进程自己本身,所以 grep -v grep去掉grep进程本身得到nginx进程, wc -l是统计有几行,就是有几个进程,至少2个进程, -ge 2是大于等于2,成功返回0不存在返回1.
    interval 1    #每隔1秒执行上述的脚本,去检查用户的程序ngnix
    weight -2    #如果检测到本机的nginx死了,就自己权重-2,这个机器老是宕机权重就降低。
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 1
    priority 100
    advert_int 2
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    track_script {
        chk_health   //脚本的名字
    }

    virtual_ipaddress {
        10.0.0.10/24
    }

    notify_master "/usr/local/keepalived/sbin/notify.sh master"   //对方死了,我要变成master
    notify_backup "/usr/local/keepalived/sbin/notify.sh backup"   //对方要我变成backup
    notify_fault "/usr/local/keepalived/sbin/notify.sh fault"
}
#添加切换通知脚本
vi /usr/local/keepalived/sbin/notify.sh
#!/bin/bash

case "$1" in
    master)
        /usr/local/nginx/sbin/nginx    //把nginx起起来,即使是起来的再起一次也没问题
        exit 0
    ;;
backup)
        /usr/local/nginx/sbin/nginx -s stop    //把自己nginx停掉
        /usr/local/nginx/sbin/nginx      //在恢复
        exit 0
    ;;
    fault)
        /usr/local/nginx/sbin/nginx -s stop    //出异常就停掉
        exit 0
    ;;
    *)
        echo 'Usage: notify.sh {master|backup|fault}'
        exit 1
    ;;
esac
#添加执行权限
chmod +x /usr/local/keepalived/sbin/notify.sh
global_defs {
}

vrrp_script chk_health {
    script "[[ `ps -ef | grep nginx | grep -v grep | wc -l` -ge 2 ]] && exit 0 || exit 1"
    interval 1
    weight -2
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 1
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    track_script {
        chk_health
    }

    virtual_ipaddress {
        10.0.0.10/24
    }
    
    notify_master "/usr/local/keepalived/sbin/notify.sh master"
    notify_backup "/usr/local/keepalived/sbin/notify.sh backup"
    notify_fault "/usr/local/keepalived/sbin/notify.sh fault"
}
#在第二台机器上添加notify.sh脚本
#分别在两台机器上启动keepalived
service keepalived start 
chkconfig keepalived on

 

转载于:https://www.cnblogs.com/yaowen/p/8976837.html

<think>好的,我现在需要帮助用户解决如何在8台国产化服务器上部署多个服务的问题。首先,我得理清楚用户的需求和他们提供的服务器配置。 用户提到的服务器配置是每台有双路Hygon 7380 CPU,32核,64线程,内存128GB,硬盘是3块4TB SAS HDD,操作系统是麒麟V10以上。需要部署的服务包括MySQL数据库、视图库、大数据分析环境、数据交换服务、文件存储以及平台系统应用。用户是架构师,所以需要高效、可靠的分配方案。 首先,我得考虑每个服务的资源需求和特性。比如,MySQL数据库通常需要较高的内存和磁盘I/O,尤其是写密集型操作。视图库可能涉及大量的图片或视频存储和检索,对存储容量和吞吐量有要求。大数据分析环境可能需要分布式计算框架,如Hadoop或Spark,这些需要多节点协作,内存和CPU资源要充足。数据交换服务可能涉及高网络吞吐量,需要良好的网络配置。文件存储可能需要分布式文件系统,比如Ceph或MinIO。平台系统应用可能是一个综合性的应用,需要稳定的运行环境。 接下来是服务器的分配问题。用户有8台服务器,如何合理分配这些服务,既要考虑性能,也要考虑冗余和高可用性。可能需要将某些服务集群化,比如MySQL用主从复制或者Galera集群,大数据用Hadoop集群,文件存储用分布式存储集群。同时,考虑到硬件资源,每台服务器是否能够同时运行多个服务,或者是否需要专机专用。 比如,大数据环境可能需要多台服务器组成集群,而数据库可能需要至少两台做高可用。视图库和文件存储可能可以结合使用分布式存储系统,共享存储资源。数据交换服务可能需要负载均衡和冗余。平台系统应用可能需要单独部署或者与其他服务共存,视资源情况而定。 然后,我需要考虑软件选型。MySQL可能有替代方案,比如MariaDB或者Percona Server,但用户明确提到MySQL,所以应该用MySQL的集群方案,比如InnoDB Cluster或者主从复制。视图库可能需要特定的软件,比如FastDFS或者结合对象存储。大数据方面,Hadoop生态圈中的HDFS、YARN、Spark、Hive等组件可能需要部署。数据交换服务可能需要消息队列如Kafka或者RabbitMQ,或者API网关如Kong。文件存储可能需要Ceph、GlusterFS或MinIO。平台系统应用可能需要Tomcat、Nginx等Web服务器。 另外,操作系统是麒麟V10,属于国产系统,可能基于Linux,所以需要确保所选软件兼容麒麟V10,或者有相应的安装包。可能需要从源码编译,或者寻找适配的RPM/DEB包。 存储方面,每台服务器有3块4TB SAS HDD,可能需要做RAID,比如RAID 5或RAID 10,以提高性能和冗余。或者,如果使用分布式存储系统,可以直接利用JBOD模式,由软件层处理冗余。 网络方面,需要确保服务器之间有足够的带宽,尤其是大数据和存储服务,可能需要万兆网络或者更高速的连接。 高可用和负载均衡也是重点。比如,MySQL主从复制加上HAProxy或Keepalived实现故障转移。大数据集群的NameNode和ResourceManager需要高可用配置。数据交换服务可能需要多实例加负载均衡器。 安全方面,需要考虑防火墙设置,SELinux或AppArmor配置,数据加密传输等。 现在开始具体分配: 假设8台服务器,我需要决定每台服务器运行哪些服务。比如: - 服务器1-2:MySQL集群(主从或Galera),每台单独运行MySQL,保证高可用- 服务器3-5:Hadoop/Spark集群,3台作为数据节点和计算节点,可能其中一台同时作为主节点和备用主节点。 - 服务器6-7:文件存储集群(MinIO或Ceph),提供分布式存储,同时可能托管视图库的文件存储部分。 - 服务器8:数据交换服务(Kafka集群?)和平台系统应用。但可能需要更多的节点,所以可能需要调整。 或者另一种分配: - 大数据需要至少3节点(HDFS通常建议3节点起步),MySQL需要至少2节点,文件存储需要至少3节点(Ceph推荐至少3节点),数据交换可能需要2节点,平台应用可能需要1-2节点。但总共有8台,需要合理分配。 可能需要组合部署,比如: 1. 服务器1-2:MySQL主从集群,同时运行Keepalived和HAProxy做负载均衡。 2. 服务器3-5:Hadoop集群(包括HDFS, YARN, Spark),共3台。 3. 服务器6-7:MinIO集群,作为文件存储和视图库的存储后端,共2台,但MinIO建议至少4节点,可能需要调整。 4. 服务器8:运行数据交换服务(比如Kafka)和平台系统应用。但Kafka通常需要多个节点,可能不够。 这里存在节点不足的问题,可能需要将某些服务组合部署。例如,将数据交换服务和平台应用部署在Hadoop或MySQL节点上,但需注意资源竞争。 另外,视图库可能需要专门的存储,可能需要和文件存储结合,使用同一个分布式存储系统,如MinIO,来存储视图数据,同时提供文件存储服务。 内存方面,每台服务器128GB,如果运行多个服务,需要合理分配。例如,MySQL需要较大的内存缓冲池,Hadoop的DataNode和NodeManager需要内存,Spark应用也需要内存,需确保不超分配。 硬盘方面,每台服务器有3块4TB SAS HDD,可以考虑RAID5,提供2块盘的容量和1块的冗余,或者RAID10,需要更多盘。或者直接作为单独磁盘,由分布式存储系统管理冗余。 操作系统层面,需要安装必要的依赖库,配置内核参数,如网络参数、文件句柄数等。 软件安装步骤可能需要使用麒麟V10的包管理器,或者从源代码编译。需要确保各软件的版本兼容性。 此外,监控和维护也是重要环节,需要部署监控系统如Prometheus+Grafana,日志收集如ELK Stack,以及备份解决方案。 现在总结可能的分配方案: 1. **MySQL数据库集群(高可用)**:2台服务器 - 部署MySQL主从复制或Galera Cluster - 使用HAProxy或ProxySQL进行负载均衡 - 配置Keepalived实现虚拟IP漂移 - 每台分配较多内存给InnoDB Buffer Pool,如64GB 2. **大数据分析环境(Hadoop/Spark)**:3台服务器 - 部署HDFS DataNode、YARN NodeManager、Spark Worker - 其中一台同时作为HDFS NameNode和YARN ResourceManager(需高可用则需另一台作为备用) - 预留足够内存给YARN容器和Spark应用,如每台分配80GB给YARN 3. **文件存储与视图库**:2台服务器 - 部署MinIO集群,提供对象存储服务 - 视图库应用可能运行在此,或单独部署在另一台,但若资源紧张,可结合部署 - 每台服务器使用3块HDD作为MinIO存储,配置纠删码实现冗余 4. **数据交换服务与平台系统应用**:1台服务器 - 部署Kafka集群(至少3节点,但资源有限,可能只能单节点,或与其他服务共用) - 或者使用RabbitMQ,部署镜像队列提供冗余 - 平台系统应用部署在此,可能需要Tomcat/Nginx - 若资源不足,考虑将数据交换服务分散到其他节点,如Hadoop节点 但这样分配的话,8台刚好用完:2+3+2+1=8。但数据交换服务如果单节点可能存在单点故障,所以可能需要至少2台。此时可能需要调整,比如: - 大数据环境用3台 - MySQL用2台 - 文件存储用2台 - 数据交换和平台应用用1台,但数据交换需要2台,可能将平台应用和数据交换分散到文件存储或大数据节点上。 或者,将数据交换服务部署在MySQL或文件存储的服务器上,如果这些服务器的资源有剩余。例如,MySQL服务器在非高峰时段可能有闲置资源,可以运行数据交换服务的一部分。 另外,考虑到热设计功耗220W,需要确保服务器散热和电力供应足够。 在软件安装方面: - MySQL:安装MySQL Community Edition或MariaDB,配置主从复制,调整my.cnf参数,如innodb_buffer_pool_size=64G - Hadoop/Spark:安装Hadoop 3.x,Spark 3.x,配置HDFS副本数,YARN资源分配 - MinIO:部署为分布式集群,配置纠删码,设置访问密钥 - Kafka:安装Apache Kafka,配置Zookeeper集群(可能需要3台,但资源有限,可尝试单ZooKeeper或使用KRaft模式) - 平台应用:根据具体需求安装Tomcat、JDK、Nginx等 监控方面,可以在每个节点安装Node Exporter,Prometheus收集指标,Grafana展示。日志用Filebeat收集到Elasticsearch。 备份策略需要考虑数据库的定期备份到远程存储,HDFS的快照,MinIO的版本控制等。 安全性方面,配置防火墙规则,仅开放必要端口,使用SSL/TLS加密数据传输,设置SSH密钥认证,定期更新系统和软件包。 可能遇到的问题: 1. 资源竞争:如大数据和MySQL在同一节点可能导致内存不足,需严格分配资源。 2. 单点故障:数据交换服务如果只有单节点,需想办法冗余。 3. 网络带宽:大数据和存储服务可能占用大量网络,需确保交换机带宽足够。 4. 软件兼容性:麒麟V10可能需要特定版本的软件,需确认兼容性。 总结,分配方案需要权衡服务需求、资源可用性、高可用性以及运维复杂度。可能需要优先保证核心服务(如数据库、大数据)的高可用和性能,其他服务适当调整。</think>--- ### **一、服务器资源分配规划** 根据8台国产化服务器的硬件配置(**双路Hygon 7380/128GB内存/12TB SAS存储**)和业务需求(**数据库、视图库、大数据、数据交换、文件存储、平台系统**),建议按以下逻辑分配: | **服务器编号** | **部署服务** | **核心用途** | **资源配置建议** | |----------------|---------------------------|--------------------------------------|----------------------------------------------------------------------------------| | **Server 1-2** | MySQL集群 | 高可用数据库服务 | 每台专用于MySQL,预留80GB内存,12TB RAID5存储(4TB×3) | | **Server 3-5** | Hadoop/Spark大数据集群 | 分布式计算与存储 | 3台组成集群,每台分配100GB内存给YARN,剩余内存供OS缓存 | | **Server 6-7** | MinIO分布式存储+视图库 | 文件存储与视图数据管理 | 每台部署MinIO集群(纠删码模式),视图库应用直接调用MinIO API | | **Server 8** | 数据交换服务+平台系统应用 | 消息队列与业务平台 | Kafka/RabbitMQ与Tomcat/Nginx混合部署,预留64GB内存 | --- ### **二、核心服务部署方案** #### **1. MySQL数据库集群** - **软件选型**:MySQL 8.0 + Galera Cluster(或主从复制+ProxySQL) - **部署要点**: - Server 1-2组成多主集群,配置**半同步复制**避免数据丢失。 - 内存优化:设置`innodb_buffer_pool_size=64G`,利用Hygon多核特性启用并行查询。 - 存储优化:3块HDD配置**RAID 10**(需牺牲单盘容量),提升IOPS和冗余性。 #### **2. 大数据分析环境(Hadoop/Spark)** - **软件选型**:Apache Hadoop 3.3 + Spark 3.3 + Hive 3.1 - **部署要点**: - Server 3-5分别部署**HDFS DataNode**、**YARN NodeManager**和**Spark Worker**。 - **资源分配**: - 每台预留24核给YARN容器(`yarn.nodemanager.resource.cpu-vcores=24`)。 - 内存分配:`yarn.nodemanager.resource.memory-mb=90G`,避免OS内存耗尽。 - **存储策略**:HDFS副本数设为2(默认3可能超出存储容量)。 #### **3. 文件存储与视图库** - **软件选型**:MinIO集群(纠删码模式) + 自定义视图库应用 - **部署要点**: - Server 6-7部署MinIO,使用**4 drives per node**(3块HDD+OS盘暂存区),启用`EC:4+2`纠删码,容忍2节点故障。 - 视图库应用直接集成MinIO SDK,通过HTTP API读写图片/视频元数据。 #### **4. 数据交换服务** - **软件选型**:Apache Kafka 3.4(KRaft模式,无需ZooKeeper) - **部署要点**: - Server 8部署单节点Kafka(资源有限时),或复用Server 6-7的MinIO节点运行Broker。 - 配置`log.dirs`指向本地HDD,设置`num.io.threads=16`匹配Hygon 32核。 #### **5. 平台系统应用** - **软件选型**:Tomcat 10 + Nginx 1.23(反向代理- **部署要点**: - Server 8部署Tomcat,分配32GB内存(`JAVA_OPTS=-Xmx24G`)。 - Nginx配置负载均衡,后端指向本地Tomcat和其他服务API。 --- ### **三、关键配置优化建议** #### **1. 硬件层优化** - **RAID配置**: - MySQL服务器建议**RAID 10**(读写性能优先)。 - Hadoop节点使用**JBOD模式**,由HDFS自身管理数据分布与冗余。 - **NUMA绑定**: - 在Hygon双路CPU上,通过`numactl`绑定MySQL进程到单一NUMA节点,减少跨CPU访问延迟。 #### **2. 系统层调优** - **内核参数**(`/etc/sysctl.conf`): ```bash # 提升网络吞吐(Kafka/数据交换) net.core.rmem_max=16777216 net.core.wmem_max=16777216 # 文件句柄数(Hadoop/MinIO) fs.file-max=1000000 ``` - **内存分配**: - 预留10%内存(约12GB)供麒麟V10系统使用,避免OOM Killer终止进程。 #### **3. 监控与高可用** - **监控工具**:Prometheus + Grafana + Node Exporter - 采集MySQL连接数、HDFS存储量、MinIO带宽等指标。 - **高可用设计**: - MySQL:使用Keepalived实现VIP漂移。 - Hadoop:启用HDFS NameNode HA和YARN ResourceManager HA。 --- ### **四、软件安装流程示例** #### **1. 安装MySQL Galera Cluster** ```bash # Server 1-2执行 sudo apt install mysql-server galera-4 # 配置/etc/mysql/conf.d/galera.cnf wsrep_cluster_address="gcomm://server1_ip,server2_ip" wsrep_provider=/usr/lib/galera/libgalera_smm.so ``` #### **2. 部署MinIO集群** ```bash # Server 6-7执行 wget https://dl.min.io/server/minio/release/linux-amd64/minio chmod +x minio ./minio server http://server6/data{1..3} http://server7/data{1..3} --console-address ":9001" ``` #### **3. 启动Hadoop集群** ```bash # Server 3-5执行(以HDFS为例) hdfs namenode -format start-dfs.sh start-yarn.sh ``` --- ### **五、总结** 通过上述分配,8台服务器可平衡性能与可靠性: - **数据库**:2台专享,保障低延迟与高可用- **大数据**:3台集群,满足分布式计算需求。 - **存储与视图库**:2台MinIO提供低成本高可靠存储。 - **数据交换与平台**:1台混合部署,资源不足时可横向扩展。 **注意事项**:实际部署需根据业务流量动态调整资源分配,并定期通过监控数据优化配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值