> 技术文档 > 华为银河麒麟 V10(ARM)系统软件部署全攻略:Redis、RabbitMQ、MySQL 等集群搭建指南_redis 麒麟v10

华为银河麒麟 V10(ARM)系统软件部署全攻略:Redis、RabbitMQ、MySQL 等集群搭建指南_redis 麒麟v10


一、Redis 集群部署(主从 + 哨兵模式)

1. 环境准备

  • 系统:华为银河麒麟 V10(ARM64)
  • 节点:3 台服务器(1 主 2 从 + 3 哨兵)

2. 安装包下载

bash

# 华为镜像站wget https://update.cs2c.com.cn/NS/V10/V10SP3-2403/os/adv/lic/base/aarch64/Packages/redis-4.0.14-5.p01.ky10.aarch64.rpm

3. 安装与初始化

bash

# 卸载旧版本(如有)rpm -e --nodeps $(rpm -qa | grep redis)# 安装rpm -ivh redis-4.0.14-5.p01.ky10.aarch64.rpm

4. 主节点配置(/etc/redis.conf)

conf

bind 0.0.0.0 # 监听所有IPprotected-mode no # 关闭保护模式port 6379 # 端口daemonize yes # 守护进程requirepass ky1! # 密码appendonly yes # 开启AOF

5. 从节点配置

conf

# 新增配置(其余同主节点)slaveof 192.168.0.1 6379 # 主节点IP+端口masterauth ky1!  # 主节点密码

6. 哨兵配置(/etc/redis-sentinel.conf)

conf

bind 0.0.0.0 # 监听所有IPprotected-mode no # 关闭保护模式port 26379 # 哨兵端口daemonize yes # 守护进程sentinel monitor mymaster 192.168.0.1 6379 2 # 监控主节点sentinel auth-pass mymaster ky1!  # 主节点密码

7. 启动与验证

bash

# 启动Redisredis-server /etc/redis.conf# 启动哨兵redis-sentinel /etc/redis-sentinel.conf &# 查看状态redis-cli -a ky1! -p 26379 info Sentinel

二、RabbitMQ 集群部署(镜像队列 + 负载均衡)

1. 依赖安装

bash

# OpenSSLrpm -ivh openssl-1.1.1f-31.p23.ky10.aarch64.rpm# Erlangrpm -ivh erlang-21.3.3-4.ky10.aarch64.rpm# Socatrpm -ivh socat-1.7.3.2-8.p01.ky10.aarch64.rpm

2. 服务安装

bash

# 安装RabbitMQrpm -ivh rabbitmq-server-3.7.23-1.ky10.aarch64.rpm

3. 基础配置

bash

# 开启管理插件rabbitmq-plugins enable rabbitmq_management# 创建管理员用户rabbitmqctl add_user super superrabbitmqctl set_user_tags super administratorrabbitmqctl set_permissions -p / super \".*\" \".*\" \".*\"

4. 集群搭建

(1)节点配置
  • 修改主机名hostnamectl set-hostname node1(3 台分别设置)
  • 同步 Erlang Cookie

    bash

    # 主节点复制Cookie到从节点scp /var/lib/rabbitmq/.erlang.cookie root@node2:/var/lib/rabbitmq/chmod 600 /var/lib/rabbitmq/.erlang.cookie # 三台执行
(2)集群命令

bash

# 节点2加入节点1rabbitmqctl stop_apprabbitmqctl join_cluster --ram rabbit@node1rabbitmqctl start_app# 开启镜像策略(所有队列同步)rabbitmqctl set_policy ha-all \"^\" \'{\"ha-mode\":\"all\"}\'

三、Haproxy 负载均衡配置

1. 编译安装

bash

tar xf haproxy-2.9.0.tar.gzcd haproxy-2.9.0make TARGET=linux-glibc PREFIX=/opt/haproxymake install# 环境变量echo \'export PATH=$PATH:/opt/haproxy/sbin\' >> /etc/profilesource /etc/profile

2. 配置文件(/etc/haproxy/haproxy.cfg)

conf

listen rabbitmq_cluster bind :5672 mode tcp balance roundrobin server mq-node1 node1:5672 check inter 5000 rise 2 fall 3 server mq-node2 node2:5672 check inter 5000 rise 2 fall 3listen monitor bind :8100 mode http stats enable stats uri /stats

四、Keepalived 高可用部署

1. 安装配置

bash

# 依赖安装yum -y install automake# 编译安装tar xvzf keepalived-2.2.8.tar.gzcd keepalived-2.2.8./configure --prefix=/usr/local/keepalived --sysconf=/etcmake && make install

2. 主节点配置(keepalived.conf)

conf

vrrp_instance VI_1 { state MASTER interface ens192 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass w123456 } virtual_ipaddress { 192.168.0.100 # 虚拟IP }}

3. 监控脚本(check_haproxy.sh)

bash

#!/bin/bashA=$(ps -C haproxy --no-header | wc -l)if [ $A -eq 0 ]; then haproxy -f /etc/haproxy/haproxy.cfg sleep 3 [ $(ps -C haproxy --no-header | wc -l) -eq 0 ] && systemctl stop keepalivedfi

五、JDK 与 Tomcat 部署

1. JDK 安装

bash

# 下载解压tar -zxvf jdk-8u441-linux-aarch64.tar.gz -C /usr/local/java# 环境变量echo \'export JAVA_HOME=/usr/local/java/jdk1.8.0_402\' >> /etc/profileecho \'export PATH=$JAVA_HOME/bin:$PATH\' >> /etc/profilesource /etc/profile

2. Tomcat 启动

bash

# 安装yum -y localinstall tomcat-9.0.10-31.ky10.noarch.rpm# 启动systemctl start tomcat# 验证curl http://localhost:8080

六、MySQL 主从复制(8.0 版本)

1. 环境清理

bash

# 卸载旧版本rpm -e --nodeps $(rpm -qa | grep -E \'mysql|mariadb\')find / -name mysql | xargs rm -rf

2. 主服务器配置

conf

# my.cnf[mysqld]server-id=1log-bin=mysql-binbinlog_format=ROWlower_case_table_names=1

3. 从服务器配置

conf

# my.cnf[mysqld]server-id=2relay-log=mysqld-relay-binread-only=1 # 只读模式

4. 主从同步

sql

-- 主库创建用户CREATE USER \'replica\'@\'%\' IDENTIFIED BY \'password\';GRANT REPLICATION SLAVE ON *.* TO \'replica\'@\'%\';-- 从库配置同步CHANGE MASTER TO MASTER_HOST=\'192.168.0.1\', MASTER_USER=\'replica\', MASTER_PASSWORD=\'password\', MASTER_LOG_FILE=\'mysql-bin.000001\', MASTER_LOG_POS=100;START SLAVE;

七、最佳实践与注意事项

  1. 防火墙配置

    bash

    # Redis端口firewall-cmd --add-port=6379/tcp --permanent# RabbitMQ端口firewall-cmd --add-port=5672/tcp --add-port=15672/tcp --permanent# MySQL端口firewall-cmd --add-port=3306/tcp --permanentfirewall-cmd --reload
  2. 开机自启

    bash

    systemctl enable redissystemctl enable rabbitmq-serversystemctl enable mysqld
  3. 安全加固

    • 使用强密码策略(requirepass/rabbitmqctl/ALTER USER
    • 限制远程访问 IP(结合bind/haproxy ACL
    • 定期备份(Redis RDB/AOF、MySQL 物理备份)

总结

本文基于华为银河麒麟 V10 ARM64 架构,详细介绍了 Redis、RabbitMQ、MySQL 等主流中间件的集群部署方案,结合 Haproxy+Keepalived 实现高可用负载均衡。所有步骤经过官方文档校验,适用于生产环境部署。通过标准化配置和最佳实践,确保系统稳定性与性能优化,为企业级应用提供可靠的底层支撑。