8.12LVS

一.LVS概述

1.什么是lvs:

lvs是一个实现负载均衡集群开源软件项目,lvs逻辑上可以分为调度层,server集群层和共享层

2.特点:免费,开源,四层负载均衡

3.Lvs工作原理

4.lvs调度算法:

  1. 静态调度算法
  1. 轮询

RR 轮询**

均等的对待每一台服务器,而不管服务器上实际的连接数和系统负载

  1. 加权轮询

WRR 加权轮询**

调度器可以自动询问真实服务器的负载情况,并动态的调整其权值

  1. 目标地址hash**

DH 目标地址hash**

通过一个散列函数将一个目标IP地址映射到一台服务器

  1. 源地址hash

SH 源地址hash**

  1. 组成及相关术语
  1. 组成

Ipvs----是真正生效实现调度的代码

Ipsadm----负责为ipvs内核框架编写规则,定义谁是集群服务,谁是后端真正的服务器

lvs组成=ipvsipv+sadm

  1. 术语

二.环境准备

主机名 功能 IP地址

Nat 负载均衡调度器(ds.director,ntp服务) vip:192.168.2.199 dip:192.168.1.164

Web01 真实web服务器Rs(rs.realserver) 192.168.2.200

Web02 真实web服务器Rs 192.168.2.201

DNS dns服务 192.168.2.188

Client 192.168.2.180

都要关闭防火墙,关闭selinux,启动网卡

1.Web01和web02机器

给web01和web02安装nginx

yum -y install nginx

启动

nginx

改变两台机器的nginx页面内容

root@web01 \~# echo "web---------01" > /usr/share/nginx/html/index.html

root@web02 \~# echo "web----------02" > /usr/share/nginx/html/index.html

2.net主机

配置两给网卡和IP地址,一个对外的vip,一个对内的dip,现在主要使用nat网络模式,可以配置桥接模式对外,nat对内,教师机不方便配置桥接模式,所以都是配置的nat模式,但是一定要分清楚哪个是vip,哪个是dip,在物理主机上都要能够ping通。

3.配置Dns服务器

关闭防火墙

systemctl stop firewalld

systemctl disable firewalld.service

关闭selinux

vim /etc/selinux/config

SELINUX=disabled

关闭NetworkManager

systemctl stop NetworkManager

systemctl disable NetworkManager.service

安装bind

root@dns \~# yum -y install bind

配置主配置文件

root@dns \~# vim /etc/named.conf

options {

listen-on port 53 { 127.0.0.1; any; };

listen-on-v6 port 53 { ::1; };

directory "/var/named";

dump-file "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

memstatistics-file "/var/named/data/named_mem_stats.txt";

recursing-file "/var/named/data/named.recursing";

secroots-file "/var/named/data/named.secroots";

allow-query { localhost; any; };

配置zones文件

root@dns \~# vim /etc/named.rfc1912.zones //在最后添加

zone "jj.qd" IN {

type master;

file "jj.qd.zone";

allow-update { none; };

};

cd /var/named/

cp -p named.localhost jj.qd.zone

配置zone文件

vim jj.qd.zone

nat A 192.168.2.199

ds A 192.168.2.188

web01 A 192.168.2.200

web02 A 192.168.2.201

named-checkconf /etc/named.conf

named-checkconf /etc/named.rfc1912.zones

named-checkzone jj.qd.zone jj.qd.zone

systemctl start named

systemctl enable named.service

4.client主机

vim /etc/resolv.conf进去全删了

vim /etc/sysconfig/network-scripts/ifcfg-ens33 //进去添加

DNS1=192.168.2.188

在client访问

root@client \~# ping nat.jj.qd

root@client \~# ping ds.jj.qd

root@client \~# ping web01.jj.qd

root@client \~# ping web02.jj.qd

同步时间

root@dns \~# yum -y install ntpdate.x86_64

ntpdate cn.ntp.org.cn

crontab -e

* 2 * * * /usr/sbin/ntpdate cn.ntp.org.cn

yum -y install ntp

启动服务

systemctl start ntpd

systemctl enable ntpd

NAT模式搭建实战

5.nat服务器配置

安装ipvsadm

yum -y install ipvsadm

清空以往的规则

root@net \~# ipvsadm -C

查看规则

root@net \~# ipvsadm -L -n

新增规则

root@net \~# ipvsadm -A -t 192.168.1.164:80 -s rr //-A添加虚拟服务,-t添加主机

root@net \~# ipvsadm -L -n

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

TCP 192.168.1.164:80 rr

server' command

root@net \~# ipvsadm -a -t 192.168.2.199:80 -r 192.168.2.200:80 -m

server' command

root@net \~# ipvsadm -a -t 192.168.2.199:80 -r 192.168.2.201:80 -m

相关推荐
月落汀兰12 天前
运维实战:LVS-NAT/DR 双模式完整落地,含一键启停脚本,线上直接复用
linux·运维·lvs
xianyuCcCcCCCcc12 天前
企业级高可用实战:Keepalived + LVS(DR)+ MariaDB 主主架构深度解析
架构·mariadb·lvs
mengge.cloud16 天前
0823Keepalived + LVS(DR) + MariaDB主主 小白完整实战教程
linux·运维·网络·oracle·负载均衡·mariadb·lvs
mengge.cloud17 天前
LVS 小白完整教程(Linux虚拟服务器负载均衡)
linux·运维·服务器·负载均衡·lvs
秦渝兴17 天前
LVS-DR 高可用集群实战:NFS + Web + DNS + Keepalived 全套架构
linux·服务器·网络·lvs
王琦031818 天前
| LVS |
lvs
ly768921 天前
负载均衡详解:从四层、七层到 LVS、Keepalived、Nginx 与 HAProxy
nginx·负载均衡·lvs
小马同学-24 天前
Keepaloved+LVS(DR) +MariaDN主主
linux·运维·lvs
暖核25 天前
Keepalived + LVS(DR)+ MariaDB 主主高可用架构实战指南
架构·mariadb·lvs
闲云野鹤在人间1 个月前
项目实战:LNMP-电商平台-ECshop
linux·运维·nginx·apache·lvs