数据库的负载均衡,高可用实验

一 高可用负载均衡集群数据库实验

1.实验拓扑图

2.实验准备(同一LAN区段)(ntp DNS)

客户端:IP:192.168.1.5 下载:MariaDB

负载均衡器:IP:192.168.1.1 下载:keepalived ipvsadm

IP:192.168.1.2 下载:keepalived ipvsadm

服务器:IP:192.168.1.3 下载MariaDB-Galera-server

IP:192.168.1.4 下载MariaDB-Galera-server

3.配置服务器

A web1:在/mnt/下新建一个mysql的目录,在将rpms与repodata拖到此目录下

web2:#scp -r 192.168.1.3:/mnt/mysql /mnt/

B web1:配置yum源

#vim /etc/yum.repos.d/y.repo

y

name = y

baseurl =file:///mnt/mysql

enabled=1

gpgcheck=0

web2:#scp 192.168.1.3:/etc/yum.repo.d/y.repo /etc/yum.repos.d/

C下载MariaDB-Galera-server(web1/2)

#yum --enablerepo=y -y install MariaDB-Galera-server

D编辑配置文件

Web1:#vim /etc/my.cnf.d/server.cnf

E启动集群

Web1:#/etc/rc.d/init.d/mysql bootstrap

F配置 mysql 的基本设置

Web1:#mysql_secure_installation

G配置web2(内容同一致,改IP地址就行)

#scp 192.168.1.3:/etc/my.cnf.d/server.cnf /etc/my.cnf.d/

#vim /etc/my.cnf.d/server.cnf

F启动服务(web1/2)

#systemctl start mysql

G验证集群是否搭建成功

在web1上登陆数据库新建一个test的数据库

#mysql -uroot -p123

>create database test;

在web2上登入

#mysql -uroot -p123

>select databases; 看到test则建立成功

4.配置LVS

A下载软件(LVS主/备)

#yum -y install keepalived ipvsadm

B编辑配置文件(LVS主)

#vim /etc/keepalived/keepalived.conf

#vim lvs.sh

C LVS备

#scp 192.168.1.1:/etc/keepalived/keepalived.conf /etc/keepalived/

#scp 192.168.1.1:/root/lvs.sh ./

#vim /etc/keepalived/keepalived.conf

D在web1/2上

#vim web.sh

#scp 192.168.1.3:/root/web.sh ./

Web1/2:#bash web.sh

Web1/2:#ifconfig

D启动服务,运行脚本

LVS主/备:#systemctl restart keepalived

#bash lvs.sh

5客户端

#yum groups install mariadb mariadb-client -y

6验证高可用负载均衡集群数据库

A在服务端登陆数据库

#mysql -uroot -p123

B新建一个用户,给与此用户对所有客户端拥有访问test数据库的权限

>grant all privileges on test.* to yi identified by 123;

查看yi用户权限

> select user,host,password from user;

C在客户端用yi用户登陆

#mysql -uyi -p123 -h 192.168.1.88

D在web1服务器端查看

>show processlist;

在web2服务器查看

>show processlist;

在客户端退出数据库后再登陆则会发现两个服务器查询结果会互换;让其中一台LVS负载均衡器宕机,再用客户端登陆,发现任然能登陆数据库。

相关推荐
此冬歌咏几秒前
K8s etcd 备份与恢复实战:误删命名空间后 37 秒恢复,5 个对象 UID 完全一致
运维
cspttty几秒前
需求预测校招入门:SQL、Excel、统计模型和业务指标怎么学
大数据·数据库
2501_933670794 分钟前
面向物流数据分析校招:SQL、Excel、BI、WMS/TMS该怎么准备
数据库
Code_流苏4 分钟前
AI 知识库和数据库有什么区别?从“查订单”到“问规则”讲清楚
数据库·ai·agent·知识库
YangYang9YangYan9 分钟前
财务 BP 校招面试案例整理|业务场景题 + 数据案例,2027 届求职
大数据·数据库
牢姐与蒯14 分钟前
Linux进程间通信(三).基于匿名管道的进程池的实现
linux·运维·服务器·ubuntu
景煜拾年15 分钟前
RHCA-Docker知识点整理
运维·笔记
隔窗听雨眠23 分钟前
KingbaseES性能优化实战指南:从操作系统调优到SQL等价改写的完整方法论
数据库·kingbasees
NineData1 小时前
NineData 与统信服务器操作系统完成兼容认证
数据库·oracle·操作系统·软件·数据库管理工具·ninedata·统信
骇客野人8 小时前
Redis 完整安装部署方案(Linux,分【源码编译】+【Docker】两种,推荐生产用源码,测试快速用 Docker)
运维