当前位置:网站首页>Lvs+kept (DR mode) learning notes
Lvs+kept (DR mode) learning notes
2022-07-07 06:58:00 【Network stupid pig】
1. sketch
In the medium-sized projects of the Internet , A single server is often unable to meet the performance requirements of the business itself , At this time, it will expand in parallel , Spread the load among several servers ( colony ). Generally, clusters are DNS polling ,LVS,nginx Load balancing .
The main purposes of the cluster include the following three points : High availability 、 Scalable 、 Load balancing .
A complete cluster architecture , You need to include the following three functions : Load balancing 、 Fault isolation 、 Failed to switch
Load balancing : According to the set algorithm , Through the load balancer (Director) Forward external requests to servers in each cluster (Real server)
Fault isolation : When one or more servers in the cluster (Real server) In case of failure or failure to provide services , The cluster can remove them from the forwarding queue , To ensure that user access will not be incorrectly forwarded to servers that cannot be provided (Real server) Handle . And when the server fails (Real server) When it returns to normal , It can rejoin the forwarding queue of the cluster .
Failed to switch : Failed to switch master (Master) The key is to remove the load balancer (Director) A single point of question , Once the load balancer (Director) failure , Standby machine (Slave) Can replace the master (Master) Load Balancer (Director) Accept user requests , And when the main load balancer (Director) When it comes back to normal , Able to take over user requests again ( Depending on the configuration )
LVS yes Linux Virtual Linux Abbreviation , namely Linux Virtual server , Is a commonly used server cluster system , This function has been widely integrated in Linux The kernel .
Keepalived Is a server detection status software , It can provide fault isolation and failover functions for clusters
ipvsadm It is LVS Management tools , Ability to add , modify , Delete , Check the configuration and forwarding status of the current cluster
In the use of Keepalived The scheme , As long as the system is installed ipvsadm command , Just go through Keepalived The configuration file of can realize all configurations of the cluster .
This time mainly introduces DR Cluster configuration in mode ,DR Direct routing , Load Balancer (Director) Only negative forwarding of user requests , The request response is provided by the server (Real server) Provide directly .
The following is a simple architecture diagram

2. install
2.1.ipvsadm install
yum install ipvsadm2.2.Keepalived install
yum install keepalived2.3.LVS Support view
uname -r
# see linux Kernel version ,2.4 It has been integrated ,2.4 Please recompile the kernel before ( Now there is no 2.4 Before )3. To configure
Preset environment :
Load Balancer A:
ip Address : 192.168.1.12
colony VIP:192.168.1.100
Real server B:
ip Address :192.168.1.13
Multicast address :192.168.1.100
Real server C:
ip Address :192.168.1.14
Multicast address :192.168.1.100
Real server configuration :
Real servers do not need to install any software , Just configure it like an ordinary non clustered server
# You can write the following commands shell Script , And in /etc/rc.local It is configured to execute automatically every time you start up
# Be careful : Must be bound to the loopback network card (lo)
# down To make the script repeatable
ifconfig lo:0 192.168.1.100 broadcast 192.168.1.100 netmask 255.255.255.255 down
ifconfig lo:0 192.168.1.100 broadcast 192.168.1.100 netmask 255.255.255.255 up
# This step is very important , In practical applications, multiple real servers in the cluster use the same multicast address , Therefore, it is necessary to suppress ARP radio broadcast
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce### Please note that : The physical machine / The virtual machine lo Return address , broadcast, netmask Wait to compare !!!
After successful execution , Input ifconfig You should see the following results :
lo:0: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 192.168.1.100 netmask 255.255.255.255
loop txqueuelen 0 (Local Loopback)Because of inhibition ARP radio broadcast , Input ping 192.168.1.100 It should be the following result :
PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data. --- 192.168.1.100 ping statistics --- 6 packets transmitted, 0 received, 100% packet loss, time 5042ms
unable ping through
Load balancer configuration
Keepalived Default profile location /etc/keepalived/keepalived.conf
The configuration is as follows :
virtual_server 192.168.1.100 80 { delay_loop 6 lb_algo rr # rr Polling lb_kind DR # DR Pattern nat_mask 255.255.255.255 #persistence_timeout 600 # Session holding time protocol TCP real_server 192.168.1.13 80 { #weight 100 # stay wlc Load balancing algorithm takes effect # Real server status check TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 192.168.1.14 80 { #weight 100 # stay wlc Load balancing algorithm takes effect # Real server status check TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } }
Input keepalived -D Command to start keeplived
see keepalived Running state ( The normal startup is three processes )
ps aux | grep "keepalived"
see keepalived Run log
tail /var/log/message
Check the configuration results ( Under normal circumstances, you can see that the configured information has been loaded correctly )
ipvsadm -L
边栏推荐
- BindingException 异常(报错)处理
- JESD204B时钟网络
- [solution] final app status- undefined, exitcode- 16
- MySql用户权限
- 中英文说明书丨ProSci LAG-3 重组蛋白
- Please ask a question, flick Oracle CDC, read a table without update operation, and repeatedly read the full amount of data every ten seconds
- [GNN] graphic gnn:a gender Introduction (including video)
- AddressSanitizer 技术初体验
- Unity C# 函数笔记
- Jmeter 5.5版本发布说明
猜你喜欢

What books can greatly improve programming ideas and abilities?

Prompt for channel security on the super-v / device defender side when installing vmmare

Matlab tips (29) polynomial fitting plotfit

MySQL SQL的完整处理流程

多个kubernetes集群如何实现共享同一个存储

华为机试题素数伴侣

Redhat5 installing vmware tools under virtual machine

LC 面试题 02.07. 链表相交 & LC142. 环形链表II

Abnova循环肿瘤DNA丨全血分离,基因组DNA萃取分析

JWT的基础介绍
随机推荐
Can't you really do it when you are 35 years old?
MYSQL binlog相关命令
CompletableFuture使用详解
Stack and queue-p79-10 [2014 unified examination real question]
How can gyms improve their competitiveness?
FPGA课程:JESD204B的应用场景(干货分享)
Please answer the questions about database data transfer
Problems and precautions about using data pumps (expdp, impdp) to export and import large capacity tables in Oracle migration
Data of all class a scenic spots in China in 2022 (13604)
MySQL SQL的完整处理流程
.net core 访问不常见的静态文件类型(MIME 类型)
SolidWorks的GB库(钢型材库,包括铝型材、铝管等结构)安装及使用教程(生成铝型材为例)
Answer to the first stage of the assignment of "information security management and evaluation" of the higher vocational group of the 2018 Jiangsu Vocational College skills competition
Several index utilization of joint index ABC
Take you to brush (niuke.com) C language hundred questions (the first day)
健身房如何提高竞争力?
ip地址那点事
反射(二)
Comment les entreprises gèrent - elles les données? Partager les leçons tirées des quatre aspects de la gouvernance des données
使用TCP/IP四层模型进行网络传输的基本流程