119 lines
3.1 KiB
Markdown
119 lines
3.1 KiB
Markdown
## 环境简介
|
||
| hostname | ip | mark |
|
||
| --- | --- | --- |
|
||
| lvs-1 | 192.168.30.13 | 主lvs |
|
||
| lvs-2 | 192.168.30.14 | 备lvs |
|
||
| k8s-master-1 | 192.168.30.6 | rs-1 |
|
||
| k8s-master-2 | 192.168.30.7 | rs-2 |
|
||
| k8s-master-3 | 192.168.30.12 | rs-3 |
|
||
|
||
|
||
## 搭建主备LVS
|
||
```plain
|
||
apt install keepalived net-tools -y #安装keepalived 和 net-tools
|
||
```
|
||
|
||
配置keepalived 配置文件
|
||
|
||
```plain
|
||
global_defs {
|
||
no_email_faults
|
||
}
|
||
|
||
# VRRP 实例配置
|
||
vrrp_instance VI_1 {
|
||
state MASTER #如果使用主/备,另外一台机器需要设置为BACKUP
|
||
interface ens32 #检测网络端口
|
||
virtual_router_id 100 #主备的虚拟机路由ID必须一致
|
||
priority 100 #主备的优先级,主优先级要大于备
|
||
advert_int 1 #VRRP Multicast广播周期秒数
|
||
authentication {
|
||
auth_type PASS # VRRP认证方式
|
||
auth_pass zhanxiaoyao # VRRP口令字
|
||
}
|
||
virtual_ipaddress {
|
||
192.168.30.200 # 如果有多个VIP,继续换行填写
|
||
}
|
||
}
|
||
|
||
# 虚拟服务器配置
|
||
virtual_server 192.168.30.200 6443 {
|
||
delay_loop 1 # 每隔1秒查询realserver状态
|
||
lb_algo wrr # lvs 算法
|
||
lb_kind DR # Direct Route
|
||
protocol TCP # 用TCP协议检查realserver状态
|
||
persistence_timeout 300 # 会话保持时间,这段时间内,同一ip发起的请求将被转发到同一个realserver
|
||
|
||
# 第一台realserver物理环境
|
||
real_server 192.168.30.6 6443 {
|
||
weight 1
|
||
TCP_CHECK {
|
||
connect_port 6443 #设置监控检查的端口
|
||
connect_timeout 3 #设置连接超时时间
|
||
nb_get_retry 3 #设置重连次数
|
||
delay_before_retry 2 #设置重连间隔
|
||
}
|
||
}
|
||
|
||
# 第二台realserver物理环境
|
||
real_server 192.168.30.7 6443 {
|
||
weight 1
|
||
TCP_CHECK {
|
||
connect_port 6443 #设置监控检查的端口
|
||
connect_timeout 3 #设置连接超时时间
|
||
nb_get_retry 3 #设置重连次数
|
||
delay_before_retry 2 #设置重连间隔
|
||
}
|
||
}
|
||
# 第三台realserver物理环境
|
||
real_server 192.168.30.12 6443 {
|
||
weight 1
|
||
TCP_CHECK {
|
||
connect_port 6443 #设置监控检查的端口
|
||
connect_timeout 3 #设置连接超时时间
|
||
nb_get_retry 3 #设置重连次数
|
||
delay_before_retry 2 #设置重连间隔
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
```plain
|
||
systemctl enable keepalived
|
||
systemctl start keepalived
|
||
ipvsadm
|
||
ip a
|
||
```
|
||
|
||
## 搭建rs
|
||
```plain
|
||
vim /etc/keepalived-rs.sh
|
||
|
||
#!/bin/bash
|
||
VIP=192.168.30.200
|
||
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
|
||
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
|
||
/sbin/route add -host $VIP dev lo:0
|
||
|
||
chmod 777 /etc/keepalived-rs.sh
|
||
|
||
vim /lib/systemd/system/keepalived-lvs-rs.service
|
||
|
||
[Unit]
|
||
Description=My Script
|
||
After=network.target
|
||
|
||
[Service]
|
||
ExecStart=/etc/keepalived-rs.sh
|
||
|
||
[Install]
|
||
WantedBy=default.target
|
||
```
|
||
|
||
```plain
|
||
reboot
|
||
```
|