KEEPALIVED+LVS+LNMP+PROXYSQL+MHA+NFS

Docker方式部署ProxySQL和Keepalived组合实现MGR的高可用访问 ProxySQL 代理访问MGR,可以做到故障自动切换主节点,可以自定义访问规则实现读写分离。 阅读详情

在这里插入图片描述

1. mysql的主从复制高可用性解决方案MHA

  1. 软件包
    mha4mysql-manager-0.56-0.el6.noarch.rpm
    mha4mysql-node-0.56-0.el6.noarch.rpm
    5.5.64-MariaDB
  2. 实现一主两从的架构
  3. MHA监控一主两从,当主挂了,会自动切换到指定的从节点上

1.1 MHA配置

主机ip:192.168.43.129/24
gateway:192.168.43.139

安装包

yum --enablerepo=aliyun_epel install mariadb-server mha4mysql-manager-0.56-0.el6.noarch.rpm mha4mysql-node-0.56-0.el6.noarch.rpm -y

基于key的证

ssh-keygen
ssh-copy-id 127.0.0.1
scp -r ~/.ssh/ 192.168.43.99:/root/
scp -r ~/.ssh/ 192.168.43.109:/root/
scp -r ~/.ssh/ 192.168.43.119:/root/

配置文件


mkdir /etc/mha/

vim /etc/mha/app1.cnf
[server default]
user=mha
password=mha
manager_workdir=/data/mastermha/app1/
manager_log=/data/mastermha/app1/manager.log
remote_workdir=/data/mastermha/app1/
ssh_user=root
repl_user=replication
repl_password=replication
ping_interval=1
[server1]
hostname=192.168.43.119
candidate_master=1
[server2]
hostname=192.168.43.109
[server3]
hostname=192.168.43.99
candidate_master=1

检测

连接检测

masterha_check_ssh --conf=/etc/mha/app1.cnf

复制检测

masterha_check_repl --conf=/etc/mha/app1.cnf

启动MHA

masterha_manager --conf=/etc/mha/app1.cnf

1.2 mysql master 的配置

主机ip:192.168.43.119
gateway:192.168.43.139

安装包

yum install mha4mysql-node-0.56-0.el6.noarch.rpm mariadb-server -y

配置文件 /etc/my.conf

[mysqld]
log-bin
server_id=119
skip_name_resolv=1
systemctl enable --now mariadb

启动服务

systemctl enable --now mariadb

配置相关联的数据库用户

mysq
grant replication slave on *.* to replication@'192.168.43.%' identified by 'replication';
grant all on *.* to mha@'192.168.43.%' identified by 'mha';
grant replication client on *.* to monitor@'192.168.43.%' identified by 'monitor';
grant all on *.* to sqluser@'192.168.43.%' identified by 'sql';
grant all on discuz.* to discuz@'192.168.43.%' identified by 'discuz';

create database discuz;

1.3 mysql slave的配置

主机ip: 192.168.43.109 192.168.43.99
gateway:192.168.43.139

安装包

yum install mha4mysql-node-0.56-0.el6.noarch.rpm mariadb-server -y

配置文件 /etc/my.cnf

[mysqld]
log-bin
server_id=99  // 另一台主机配置 109
read_only
skip_name_resolve=1
relay_log_purge=0

启动服务

systemctl enable --now mariadb

同步信息配置

mysql
CHANGE MASTER TO
  MASTER_HOST='192.168.43.119',
  MASTER_USER='replication',
  MASTER_PASSWORD='replication',
  MASTER_PORT=3306,
  MASTER_LOG_FILE='mariadb-bin.000001',
  MASTER_LOG_POS=245;
 start slave;
 show slave status\G

2. client 的配置

主机ip:192.168.1.8/24
gateway:192.168.1.9

ip、gateway、dns设置

nmcli connection modify ens33 ipv4.addresses 192.168.1.8/24 ipv4.gateway 192.168.1.9 ipv4.dns 192.168.2.200
nmcli connection reload
nmcli connection up ens33

3. route 的配置

ens33:: 192.168.1.9/24
ens37: 192.168.2.254/24

查看ip
在这里插入图片描述
开启路由转发功能

echo "net.ipv4.ip_forward = 1"  >> /etc/sysctl.conf
sysctl -p

配置防火墙规则

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 ! -d 192.168.1.0/24 -j SNAT --to-source 192.168.2.254

4. 主DNS 的配置

主机ip: 192.168.2.200/24

安装包

yum install bind -y

配置文件

vim /etc/named.conf
options {
        listen-on port 53 { localhost; };
        allow-query     { any; };
 }
 vim /etc/named.rfc1912.zones
 zone "xuepeng.com" IN {
        type master;
        file "xuepeng.com.zone";
};

区域数据库文件

cd /var/named/
cp -p named.localhost xuepeng.com.zone
vim xuepeng.com.zone

在这里插入图片描述
检测语法

named-checkconf
named-checkzone xuepeng.com xuepeng.com.zone

开启dns

systemctl enable --now named

验证dns是否成功
在这里插入图片描述

5. firewall 的配置

ip 设置

ens37:192.168.2.100/24
ens33:192.168.43.139/24

在这里插入图片描述

防火墙规则

iptables -t nat -A PREROUTING -d 192.168.2.100 -p tcp --dport 80 -j DNAT --to-destination 192.168.43.100
iptables-save > /data/iptables_rule
echo "iptables-restore < /data/iptables_rule" >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local

开启路由转发功能

echo "net.ipv4.ip_forward = 1"  >> /etc/sysctl.conf
sysctl -p

6. keepalived + lvs 实现web集群高可用

6.1 keepalived + lvs_01

  1. ip: 192.168.43.19/24
  2. gateway: 192.168.43.139
  3. vip: 192.168.43.100

安装包

yum install keepalived ipvsadm -y

配置文件

cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak
! Configuration File for keepalived

global_defs {
   notification_email {
        root@localhost
   }   
   notification_email_from root@localhost
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id keepalived01
   #vrrp_skip_check_adv_addr
   #vrrp_strict
   #vrrp_garp_interval 0
   #vrrp_gna_interval 0
}
vrrp_instance VI_1 {
    state MASTER
    interface ens33
    virtual_router_id 51
    priority 100 
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }   
    virtual_ipaddress {
        192.168.43.100/24 dev ens33 label ens33:0
    }   
}
virtual_server 192.168.43.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol TCP 

    real_server 192.168.43.39 80 {
        weight 100 
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
    real_server 192.168.43.49 80 {
        weight 100
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
}

启动服务查看进程

systemctl enable --now keepalived
ps aux|grep keepalived

6.2 keepalived + lvs_02

  1. ip: 192.168.43.29/24
  2. gateway: 192.168.43.139
  3. vip: 192.168.43.200

配置文件

相对 192.168.43.19修改如下:
router_id keepalived02
state BACKUP
priority 80

启动服务

systemctl enable --now keepalived
ps aux|grep keepalived

6.3 nginx + php-fpm_01 的配置

ip: 192.168.43.43.39/24
gateway: 192.168.43.139

安装包,启动服务,查看端口

yum --enablerepo=aliyun_epel install nginx -y
nginx
lsof -i:80

配置vip

cd /etc/sysconfig/network-scripts/
cp ifcfg-lo ifcfg-lo:0
vim ifcfg-lo:0
	DEVICE=lo:0
	IPADDR=192.168.43.100
	NETMASK=255.255.255.255
	NETWORK=192.168.43.0
	BROADCAST=192.168.43.255
	ONBOOT=yes
	NAME=lo:0
systemctl restart network

设置arp让vip保持沉默

vim /etc/sysctl.conf
	net.ipv4.conf.all.arp_ignore = 1
	net.ipv4.conf.lo.arp_ignore = 1
	net.ipv4.conf.lo.arp_announce = 2
	net.ipv4.conf.all.arp_announce = 2
sysctl -p

yum 安装新版本php-fpm

yum install https://mirror.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm --enablerepo=aliyun_epel -y
yum install php73-php-fpm php73-php-mysql --enablerepo=remi-php73 --enablerepo=aliyun_epel -y

php-fpm相关配置优化

grep "^[a-z]" /etc/opt/remi/php73/php-fpm.conf
	include=/etc/opt/remi/php73/php-fpm.d/*.conf
	pid = /var/opt/remi/php73/run/php-fpm/php-fpm.pid
	error_log = /var/opt/remi/php73/log/php-fpm/error.log
	daemonize = yes
vim /etc/opt/remi/php73/php-fpm.d/www.conf
	listen = 127.0.0.1:9000 //监听地址及ip
	listen.allowed_clients = 127.0.0.1  //允许客户端从哪个源ip地址访问
	user = nginx  //启动的用户和组
	group = nginx
	pm = dynamic  //动态模式进程管理
	pm.max_children = 500 //静态方式下开启的php-fpm进程数量,在动态模式下这个值限定php-fpm的最大进程数
	pm.start_servers = 100  //动态模式下的初始进程数,必须大于等于pm.min_spare_servers,小于等于 pm.man_spare_servers
	pm.min_spare_servers = 100 //最小空闲进程数
	pm.man_spare_servers = 200 // 最大空闲进程数
	pm.max_requests = 500000  //进程累计请求回收值,会重启
	pm.status_path = /pm_status //状态访问url
	ping.path = /ping  //  访问动地址
	ping.response = pong //ping 返回值
	slowlog = /var/opt/remi/php73/log/php-fpm/www-slow.log //慢日志路径
	php_admin_value[error_log] = /var/opt/remi/php73/log/php-fpm/www-error.log //错误日志
	php_admin_flag[log_errors] = on
	php_value[session.save_handler] = files  //php session 保存方式方式及路径
	php_value[session.save_path]    = /var/opt/remi/php73/lib/php/session //当时使用file方式保存session的文件路径
	
	

启动 php-fpm

systemctl enable --now php73-php-fpm

设置nginx转发

vim /etc/nginx/conf.d/blogs.xuepeng.com.conf
server {
        listen 80;
        server_name blogs.xuepeng.com;
        index index.php index.html;
        location ~* \.php$ {
                root /data/blogs;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                #fastcgi_param SCRIPT_FILENAME /data/blogs$fastcgi_script_name;
                include fastcgi_params;

        }
}
mkdir /data/blogs
nginx -s reload

在dns服务器中添加记录
在这里插入图片描述

rndc reload

6.4 nginx + php-fpm_02 的配置

ip: 192.168.43.43.49/24
gateway: 192.168.43.139

配置同 192.168.43.39 一样,不过多重复

7. 测试后端的网站能否访问

  1. 测试静态页面

[192.168.43.39]#echo 192.168.43.39 nginx01 > /usr/share/nginx/html/index.html
[192.168.43.49]#echo 192.168.43.49 nginx02 > /usr/share/nginx/html/index.html
配置虚拟主机
[192.168.43.39]#
[192.168.43.49]#

vim /etc/nginx/conf.d/discuz.xuepeng.com.conf
server {
        listen 80;
        server_name discuz.xuepeng.com;
        location / {
                root /usr/share/nginx/html;
        }
}

在这里插入图片描述
2. 测试动态页面
[192.168.43.39]#vim /data/blogs/index.php

<h1>blogs.xuepeng.com on 192.168.43.39</h1>
<?php
        phpinfo();
?>

[192.168.43.39]#vim /data/blogs/index.php

<h1>blogs.xuepeng.com on 192.168.43.49</h1>
<?php
        phpinfo();
?>

指定windows中的hosts文件
192.168.43.100 blogs.xuepeng.com
在这里插入图片描述
在这里插入图片描述

8. keepalived + lvs 实现 proxysql的高可用

8.1 配置 keepalived + lvs

在 192.168.43.19:/etc/keepalived/keepalived.conf 文件中追加以下代码

vrrp_instance VI_2 {
    state BACKUP
    interface ens33
    virtual_router_id 61
    priority 80
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 2222
    }
    virtual_ipaddress {
        192.168.43.200/24 dev ens33 label ens33:1
    }
}

virtual_server 192.168.43.200 6033 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol TCP

    real_server 192.168.43.59 6033 {
        weight 100
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connect_port 6033
        }
    }
    real_server 192.168.43.69 6033 {
        weight 100
        TCP_CHECK {
            connect_timeout 10
            nb_get_retry 3
            delay_before_retry 3
            connect_port 6033
        }
    }
}

重启,查看ipvsadm规则

killall keepalived
ps aux|grep keepalived
systemctl start keepalived
ps aux|grep keepalived
ipvsadm -Ln

在这里插入图片描述
在 192.168.43.29:/etc/keepalived/keepalived.conf 文件中追加以下代码

  1. 复制上面的代码,作以下修改
  2. state MASTER
  3. priority 100

查看keepalived双主有没有成功

在这里插入图片描述
在这里插入图片描述

关掉一台的keepalived服务,查看

在这里插入图片描述
在这里插入图片描述

8.2 配置 proxysql_01

ip:192.168.43.59/24
gateway: 192.168.43.139
vip: 192.168.43.200

配置vip

vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.43.200
NETMASK=255.255.255.255
NETWORK=192.168.43.0
BROADCAST=192.168.43.255
ONBOOT=yes
NAME=lo:0

设置arp让vip保持沉默

vim /etc/sysctl.conf
	net.ipv4.conf.all.arp_ignore = 1
	net.ipv4.conf.lo.arp_ignore = 1
	net.ipv4.conf.lo.arp_announce = 2
	net.ipv4.conf.all.arp_announce = 2
sysctl -p

准备包
proxysql-1.4.16-1-centos7.x86_64.rpm
安装
yum install *.rpm mariadb -y

启动服务,进入管理接口,向ProxySQL中添加MySQL节点

service proxysql start
chkconfig proxysql on
mysql -uadmin -padmin -P6032 -h127.0.0.1
insert into mysql_servers(hostgroup_id,hostname,port) values(20,'192.168.43.99',3306);
insert into mysql_servers(hostgroup_id,hostname,port) values(10,'192.168.43.119',3306);
insert into mysql_servers(hostgroup_id,hostname,port) values(20,'192.168.43.109',3306);
load mysql servers to runtime;
save mysql servers to disk;

ProxySQL上配置监控用户

set mysql-monitor_username='monitor';
set mysql-monitor_password='monitor';
load mysql variables to runtime;
save mysql variables to disk;

分组信息

insert into mysql_replication_hostgroups values(10,20,"test");
load mysql servers to runtime;
save mysql servers to disk;

查看分组信息
在这里插入图片描述

配置发送SQL语句的用户

insert into mysql_users(username,password,default_hostgroup)values('sqluser','sql',10);
load mysql users to runtime;
save mysql users to disk;

创建路由规则

insert into mysql_query_rules (rule_id,active,match_digest,destination_hostgroup,apply)values(1,1,'^SELECT.*FOR UPDATE$',10,1),(2,1,'^SELECT',20,1);
load mysql query rules to runtime;
save mysql query rules to disk;

授权一个数据库用户用于网站数据写入数据库时用

insert into mysql_users(username,password,default_hostgroup) values('discuz','discuz',10);
load mysql users to runtime;
save mysql users to disk;

8.3 配置 proxysql_02

配置同 proxysql_01 ,不作重复

9. 配置 NFS服务器

安装配置nfs

yum install -y nfs-utils
mkdir /data/discuz
vim /etc/exports
	/data/discuz 192.168.43.0/24(rw,all_squash,anonuid=998,anongid=996)
exportfs -arv
systemctl enable --now nfs-server

创建用户和组

groupadd -g 996 nginx
useradd -r -u 998 -g 996 -s /sbin/nologin nginx

准备软件包 Discuz_X3.3_SC_UTF8.zip

解压授权

unzip Discuz_X3.3_SC_UTF8.zip
mv upload/*  /data/discuz/
chown -R nginx.nginx /data/discuz/

10. 部署 discuz

[192.168.43.39]#
[192.168.43.49]#
安装

yum install nfs-utils -y

查看共享
在这里插入图片描述
挂载
mkdir /data/discuz
mount 192.168.43.79:/data/discuz /data/discuz

配置虚拟主机

vim /etc/nginx/conf.d/discuz.xuepeng.com.conf
server {
        listen 80;
        server_name discuz.xuepeng.com;
        index index.php;
        location / {
                root /data/discuz;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                #fastcgi_param SCRIPT_FILENAME /data/blogs$fastcgi_script_name;
                include fastcgi_params;
        }
}
nginx -t
nginx -s reload

绑定hosts文件,浏览器访问

C:\Windows\System32\drivers\etc\hosts
192.168.43.100 discuz.xuepeng.com

http://discuz.xuepeng.com/install/index.php
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
安装 php73-php-xml ,重启 php-fpm 解决以上问题

yum install php73-php-xml -y
systemctl restart php73-php-fpm.service

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

11. 配置 rsync + inotify 实现时时同步

rsync 服务器的配置

ip: 192.168.43.89/24

安装

yum install rsync -y

配置文件

vim /etc/rsyncd.conf
uid = root
gid = root
use chroot = no
max connections = 0
ignore errors
exclude = lost+found/
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
reverse lookup = no
hosts allow = 192.168.43.0/24
[backup]
path = /backup/
comment = backup
read only = no
auth users = rsyncuser
secrets file = /etc/rsync.pass

验证文件

echo "rsyncuser:123456" > /etc/rsync.pass
chmod 600 /etc/rsync.pass

创建备份目录

mkdir /backup

启动服务

systemctl start rsyncd
systemctl enable rsyncd

rsync 客户端的配置

ip : 192.168.43.79/24

安装

yum install rsync -y

配置密码文件

echo "123456" > /etc/rsync.pass
chmod 600 /etc/rsync.pass

安装监控软件

yum --enablerepo=aliyun_epel install inotify-tools -y

监控脚本

#!/bin/bash
SRC='/data/'
DEST='rsyncuser@192.168.43.89::backup'
PWDFILE=/etc/rsync.pass
inotifywait -mrq --timefmt '%Y-%m-%d %H:%M' --format '%T %w %f' -e create,delete,moved_to,close_write,attrib ${SRC} |while read DATE TIME DIR FILE;do
        FILEPATH=${DIR}${FILE}
        rsync -az --delete --password-file=$PWDFILE $SRC $DEST && echo "At ${TIME} on ${DATE}, file $FILEPATH was backuped up via rsync" >> /var/log/changelist.log
done
chmod +x monitor.sh

后台执行

./monitor.sh &

12. 测试

  1. 用户能够在 client 主机上访问到 discuz.xuepeng.com 这个网站
    在这里插入图片描述

  2. 测试后端服务器的存活性
    关闭后端一台nginx服务器
    在这里插入图片描述
    在调度器上查看规则
    在这里插入图片描述
    客户端访问,查看日志
    在这里插入图片描述

在这里插入图片描述

  1. 测试 lvs的高可用性
    关闭一台 keepalived的服务
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
Linux集群 Keepalived—Nginx高可用集群架构搭建、负载均衡集群、LVS算法、搭建NAT模式LVS架构 1、Linux集群介绍 linux集群功能可以分为:HA高可用、负载均衡。 高可用是:有两台机器,一台作为主用工作,一台作为冗余备份。当主用机器宕机后,冗余机器将接替,继续提供服务。 开源的高可用软件有:heartbeat、keepalived,其中heartbeat已无人维护,现在基本上都使用keepalived。 负载均衡集群,需要有一台服务器作为分发器,它负责把用户的请求分发给后... 阅读详情

相关推荐

基于DOCKER的MySQL Group Replication + ProxySQL + keepalived 高可用集群搭建

基于DOCKER的MySQL Group Replication + ProxySQL + keepalived 高可用环境配置 整体规划 host ip port remark 服务器域名 服务器外网ip 10088 服务器访问端口 192.168.100.30 keepalived虚拟ip地址 mysql-proxy 192.168.100.21 6601-admi...

yingziisme的博客 2528

LVS+keepalived+LNMP架构

DR模型原理:客户端请求负载均衡器,负载均衡器根据调度算法,从后端realserver集群中选择一台机器,然后更改请求报文MAC地址,将目的MAC地址改为后端服务器的MAC地址,源MAC改为自己的MAC地址。后端服务器收到请求报文,然后处理,最后直接响应给客户端。注意问题:1.director和realserver都是同一个网段。 2.director和realserver都...

weixin_34049948的博客 551

解放双手!利用海康VM全局脚本+通讯管理打造自动化视觉控制系统

本文深入探讨了如何利用海康VisionMaster(VM)的全局脚本和通讯管理功能,打造高效自动化视觉控制系统。通过全局变量实现数据共享与动态调整,结合多协议通讯管理,提升系统响应速度与智能化水平,适用于工业4.0环境下的复杂视觉检测与决策场景。

weixin_28720573的博客 424

MySQL项目之基于ProxySQL+keepalived的MGR高可用集群

本项目旨在搭建一个高可用性集群,基于ProxySQL代理转发、读写分离和keepalived双VIP保证代理可用性,并采用单主组复制技术确保数据强一致性。另外,本项目使用ansible实现快速部署,利用prometheus+grafana实现高可读性监控界面,同时通过延迟备份服务器进行灾备。最后,sysbench测试机将通过配置的dns服务器提供的域名解析实现对双VIP轮询的oltp混合读写和只写测试评估。

fruitless的博客 5370

克里金插值(Kriging)在MATLAB中的实现(克里金工具箱)

一,直接献上克里金插值MATLAB工具箱 链接:https://pan.baidu.com/s/1p0lt2G8KQ-els7Dyw5jPFg 提取码:wcss 下载后将该程序添加到MATLAB安装文件夹中的/toolbox下,然后在设置路径中添加该程序文件为默认路径即可调用程序。 资源中内附程序使用说明PDF。 二、本人实际操作代码如下所示,标注如下 load data1 %载入数据 %模型参...

qq_40937675的博客 6万+

Tesseract OCR 字库训练教程:提高识别率进阶版

通过 Tesseract 字库训练,你可以提高 OCR 对特定文本或字体的识别能力。训练过程包括准备训练数据、生成标签文件、运行训练工具,以及将训练结果集成到实际项目中。虽然训练过程需要一些时间和精力,但对于需要高精度文本识别的场景来说,字库训练是非常有效的提升识别率的方法。

小蜗牛的珍贵百宝箱 1865

centos 7 实现lvs+keepalived+lnmp分布式集群部署

准备6台虚拟机 做2台源码nginx 2台源码php 2台lvs+keepalived 1.安装nginx #自制nginx压缩包 tar xzf nginx.tar.gz cd /srv/nginx/ vim ll.sh#自制启动脚本 #!/bin/bash jc=$(ps -aux | grep nginx | wc -l) st="/srv/nginx/sbin/nginx -c /srv/nginx/conf/nginx.conf" tar xzf /nginx.tar.gz mkdir -p /d

Jiang 709

用ESP32-S3和USB摄像头DIY一个无线图传监控(附完整代码和接线图)

本文详细介绍了如何利用ESP32-S3开发板和USB摄像头打造一套高性价比的无线图传监控系统。从硬件选型、接线图到代码实现,提供了完整的DIY方案,特别适合家庭监控、宠物看护等场景。通过优化WiFi传输和双核任务分配,实现了稳定的视频流传输,整套方案成本控制在200元以内。

weixin_33701251的博客 519

lnmp 一之LNMP简介和LVS+Keepalived实现高可用的ip负载均衡

目录负载均衡简介实验步骤 负载均衡简介 负载均衡:将请求或数据均匀分摊到多个操作单元上执行。 负载均衡的发展历程:最早的负载均衡技术是通过DNS来实现的,在DNS中为多个地址配置同一个名字,因而查询这个名字的客户机将得到其中一个地址,从而使得不同的客户访问不同的服务器,达到负载均衡的目的。但是这种方法具有一个很大的缺点-延时性,当某台服务器有变动时,DNS生效需要较长的时间。另外DNS负载的调度策略比较简单,无法满足业务需求,因此就出现了负载均衡。 为了做实验方便,我们将后端简化为两台主机。 注意:单独

L*YUE的博客 1198

【AUTOSAR-DEM】-2.1-APP SWC设置UDS/OBD DTC检出和恢复

点击返回「《Autosar_BSW高阶配置》总目录」 案例背景(共6页精讲): DEM模块提供两种不同类型的Event: • BSW-related events:DEM_EVENT_KIND_BSW(通过C-API报告 - Dem_SetEventStatus) • SW-C-related events:DEM_EVENT_KIND_SWC(通过RTE operation - SetEventStatus) 下面我们讲讲在APP SWC中设置BusOff(总线关闭) DTC故障成立/恢复(其它

「汽车电子助手」的博客 3943

18、公开可用的PPG数据库介绍

本文介绍了多个公开可用的PPG(光电容积描记)数据库,包括PPG-BP数据库、MIMIC II波形数据库、运动期间手腕PPG数据库以及指尖PPG与呼吸数据库等。这些数据库提供了丰富的生理信号数据,适用于动脉血压检测、呼吸频率估计、运动干扰去除以及基于PPG的生物特征识别等研究。每个数据库的数据来源、受试者信息、信号特点和下载方式均有详细介绍,并展示了如何利用这些数据库进行信号分析和算法评估。

salt的博客 388

keepalived高可用系列~ keepalived+proxysql

一 简介:介绍下高可用通用的方案 二 目的:一个中间件提供服务,故障后,另一个中间件提供服务 三 手段: 应用keepalived的vrrp_scripts服务 四 具体配置 global_defs { notification_email { root@localhost } script_user root //这里一定要写} vrrp_script ...

weixin_34189116的博客 642

SkillClaw:让大模型 Agent skill在多用户生态中实现群体进化的框架

随着大模型应用步入深水区,基于 LLM 的智能体(Agent)正从单一的“沙盒玩具”转变为处理真实世界复杂任务的生产力工具。然而,现有的 Agent 系统通常面临一个致命瓶颈——部署即固化。为了解决这一问题,最近有一篇新论文**《SkillClaw: Let Skills Evolve Collectively with Agentic Evolver》**提出了一种多用户生态 Agent 群体进化框架。

kakaZhui的博客 263

mysql+proxysql+keepalived实现高可用的数据库读写分离

前言为了降低一台数据库的IO,远程连接数据库的时候,可以实现读写分离进行调度。这里就出现了一个单点,所以必须要做一个高可用。当然数据库服务器也需要做主从复制。实验结构 说明:上图的拓扑只是整个架构中的一个小部分,其余功能的实现此图并未规划出来。此拓扑实现的目的是利用proxysql实现数据读写分离,并对proxysql高可用。两台安装了Keepali...

weixin_33895475的博客 853

YOLOv13涨点改进| CVPR 2026 |独家创新首发、主干改进篇 |利用RIS-PiDiNet主干让YOLOv13更加强大!适合遥感目标检测、小目标检测、旋转目标检测,变化检测,图像分割涨点

🔥本文提出了一种改进的RIS-PiDiNet主干网络,通过引入几何先验构建几何一致性检测器,显著提升了模型在任意方向、结构规则目标场景下的检测性能。包含两个核心模块:S-PDC利用极谐变换的谐波核建模目标结构对称性,RIS-PDC通过SO(2)群平均实现旋转不变性。网络采用基于RIS-block的主干结构并融合轻量级LBP特征,增强了细粒度结构表达能力。实验表明,该方法特别适用于遥感和复杂几何分布场景,能有效提升目标检测的鲁棒性和精度。文章还详细介绍了如何将RIS-PiDiNet集成到YOLOv13框架

Ai缝合怪、助力小伙伴高效发论文 90

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

lvs mysql proxy_MySQL ProxySQL读写分离实践

目的在上一篇文章MySQL ProxySQL读写分离使用初探里初步介绍了ProxySQL的使用,本文继续介绍它的一些特点和DBProxy的性能差异。深入一些去了解ProxySQL,通过例子来说明ProxySQL的一些特性和用sysbench对其进行测试来对比分析说明。环境:Distributor ID: UbuntuDescription : Ubuntu14.04.5LTSRelease ...

weixin_42377742的博客 618

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

MySQL PXC 集群部署+ProxySQL+Keepalived实现负载均衡高可用及读写分离

MySQL PXC 5.7.44集群部署+ProxySQL+KeepAlived实现负载均衡高可用及读写分离

小陌成长之路 1200

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

ProxySQL集成MHA的单机部署和集群部署方式

MHA为主从复制的MySQL集群提供了主节点故障转移的功能,但是如果此时你需要实现读写分离的话,就需要引入其他技术组件了,ProxySQL就是个不错的选择,它可以通过 read_only 参数自动识别MySQL集群中的读节点和写节点,从而实现读与写的分离操作。如果担心 ProxySQL 会发生单点故障,下面文章同样提供了集群版的 ProxySQL 实现方案(通过 Keepalived 实现)。

DraGon_HooRay的博客 849

支付服务整合支付宝沙箱

一、支付宝沙箱环境电脑支付demo 1、打开电脑网站支付文档 https://open.alipay.com/search/searchDetail.htm?tabType=doc&keyword=%E7%94%B5%E8%84%91%E7%BD%91%E7%AB%99%E6%94%AF%E4%BB%98 2、下载demo 下载支付demo的代码 https://opendocs.alipay.com/open/270/106291 3、沙箱配置 https://openhome.alipay.c

weixin_40964170的博客 4904

windows实现支付宝在线支付 python

Python实现支付宝在线支付 文章摘自https://www.cnblogs.com/ctztake/p/8513628.html   windows系统安装Python虚拟环境 首先保证你的系统已经安装好了Python 安装virtualenv C:\WINDOWS\system32>pip3 install virtualenv ...

gghhm的博客 5811

iOS之app中接入支付宝的流程解析(一)

第一步:创建应用并获取APPID,添加应用功能 要在您的应用中使用支付宝开放产品的接口能力,您需要先去蚂蚁金服开放平台(open.alipay.com),在开发者中心中创建登记您的应用,并提交审核,审核通过后会为您生成应用唯一标识(APPID),并且可以申请开通开放产品使用权限,通过APPID您的应用才能调用开放产品的接口能力。 1.添加应用功能

代码解释生活 1万+

Nginx

1 nginx介绍 Nginx (“engine x”) 是一个开源的,支持高性能、高并发的 Web 服务和代理服务软件。它是由俄罗斯人 Igor Sysoev 开发的,最初被应用在俄罗斯的大型网站 www.rambler.ru 上。后来作者将源代码以类 BSD 许可的形式开源出来供全球使用 Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。 Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器。其特点是占有内存少,并发能力强,事实上ng

weixin_46727129的博客 3807

MySQL集群架构:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高性能-技术流ken

MHA简介 MHA可以自动化实现主服务器故障转移,这样就可以快速将从服务器晋级为主服务器(通常在10-30s),而不影响复制的一致性,不需要花钱买更多的新服务器,不会有性能损耗,容易安装,不必更改现有的部署环境,适用于任何存储引擎。 MHA提供在线主服务器切换,改变先正运行的主服务器到另外一台上,这个过程只需0.5-2s的时间,这个时间内数据无法写入。 MHA Manager通过...

weixin_33915554的博客 362

proxysql 安装、负载均衡和读写分离

proxysql 安装、负载均衡、读写分离和分库 proxysql 安装、负载均衡、读写分离和分库 相关地址 yum/rpm安装 服务管理 查看启动文件以及配置文件位置 修改配置文件 配置文件层级 mysql_ifaces admin_credentials 库、表说明 负载均衡 在proxysql中添加数据库server信息 在数据库server中添加账号 在proxysql中添加程序...

CL有毒 3828
上一篇: POWERDNS + LVS + LAMP + NFS + MYSQL主从读写分离
下一篇: 第十二周作业
studywinwin
博客等级 码龄7年 18粉丝 116原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值