搭建web项目_搭建Keepalived Nginx高可用Web集群
搭建Web项目_搭建Keepalived Nginx高可用Web集群
1、安装Nginx
更新系统软件包列表:
```
sudo aptget update
```
安装Nginx:
```
sudo aptget install nginx
```
启动Nginx服务:
```
sudo systemctl start nginx
```
设置Nginx开机自启:
```
sudo systemctl enable nginx
```
2、安装Keepalived
下载Keepalived软件包:
```
wget http://www.keepalived.org/software/keepalived2.2.30.tar.gz
```
解压软件包:
```
tar zxvf keepalived2.2.30.tar.gz
```
进入解压后的目录:
```
cd keepalived2.2.30
```
编译和安装Keepalived:
```
./configure prefix=/usr/local/keepalived sysconfdir=/etc/keepalived withkerneldir=/lib/modules/$(uname r)/build MULTI_PACKET=no withoutpam withoutvrrp withoutlua withoutcrypto withopenssl withoutbonding withoutipvsadm withoutlvsadm withoutnfs withoutvrrpv3 withoutcluster withoutlbnsd withoutlnav withsystemd withscript withpidfile withlogfile withstatedump withtrackdev withinterface witharp withroute withipvsadm withiptables withnetlink withvrrpv6 disablestatic disableshared enablereload enablemonitorsysconfdir=/etc/keepalived withkerneldir=/lib/modules/$(uname r)/build MULTI_PACKET=no withoutpam withoutvrrp withoutlua withoutcrypto withopenssl withoutbonding withoutipvsadm withoutlvsadm withoutnfs withoutvrrpv3 withoutcluster wi(HttpS://WWW.KeNgnIAO.cOM)thoutlbnsd withoutlnav withsystemd withscript withpidfile withlogfile withstatedump withtrackdev withinterface witharp withroute withipvsadm withiptables withnetlink withvrrpv6
make && sudo make install
```
配置Keepalived:
```
vi /etc/keepalived/keepalived.conf
```
在配置文件中,添加以下内容:
```
global_defs {
notification_email {
user@example.com # 发送报警邮件的邮箱地址
}
router_id LVS_DEVELOP # 路由器ID,用于标识该节点的唯一性
}
vrrp_instance VI_1 { # VRRP实例名称,可以自定义,这里使用默认的VI_1
state MASTER # 节点状态,可以是MASTER或BACKUP,MASTER为主节点,BACKUP为备份节点
interface eth0 # 虚拟网卡接口,根据实际情况进行修改,一般使用eth0作为主网卡接口
virtual_router_id 51 # VRRP的虚拟路由ID,范围是1~255,可以自定义,这里使用默认的51
priority 100 # VRRP优先级,范围是1~255,数值越大表示优先级越高,主节点的优先级要高于备份节点的优先级,这里设置为100
advert_int 1 # VRRP广播间隔时间,单位是秒,默认是1秒,可以根据实际需求进行调整
authentication { # VRRP认证方式的配置,根据实际情况进行修改,这里不使用认证,所以留空即可
auth_type PASS # 认证类型,可以是PASS或AH,PASS表示不进行认证,AH表示使用AH认证协议进行认证,这里使用PASS不进行认证
auth_pass 1111 # 认证密码,如果认证类型是PASS并且留空时,表示不使用密码进行认证;如果使用AH认证协议进行认证时,需要填写对应的密钥值,这里留空表示不使用密码进行认证
}
virtual_ipaddress { # VRRP虚拟IP地址的配置,根据实际情况进行修改,这里使用虚拟IP地址为192.168.0.100的子网段中的任意一个IP地址作为虚拟IP地址
192.168.0.100/24 dev eth0 label eth0:1 # IP地址和子网掩码的组合格式,dev表示使用的网卡接口名,label表示给虚拟IP地址添加一个标签便于识别和管理,这里是将虚拟IP地址绑定到eth0网卡上并添加了一个标签为eth0:1的标识符
}
}
```
保存并退出编辑器,然后启动Keepalived服务:
```
sudo systemctl start keepalived.service # 启动Keepalived服务
sudo systemctl enable keepalived.service # 设置Keepalived服务开机自启
```
3、测试高可用性集群功能
在另一台服务器上重复上述步骤安装和配置Nginx和Keepalived,然后分别在两台服务器上访问Web应用的域名或IP地址,确认负载均衡和故障转移是否正常工作,可以使用curl命令或者浏览器访问Web应用。
```
curl http://webapp.example.com # 如果当前服务器为主节点,则应该能够正常返回Web应用的内容;如果当前服务器为备份节点,则可能会返回错误或者无法连接的提示信息,这是因为在备份节点上没有运行Web应用的服务进程,但是可以通过访问其他正常的服务器来确认负载均衡功能是否正常工作,如果能够正常返回其他服务器上的Web应用的内容,则说明负载均衡功能是正常的,同时可以尝试停止其中一台服务器上的Keepalived服务或者Nginx服务,再次访问Web应用的域名或IP地址,观察是否能够自动切换到另一台服务器上继续提供服务,如果不能自动切换并且出现错误或者无法连接的提示信息,则说明故障转移功能存在问题,需要检查相应的日志文件以确定具体原因并进行修复。
相关阅读
-
苹果iOS 17.4 Beta版开放侧载功能,但iPad不在列
1月27日消息,苹果公司近日针对欧盟《数字市场法》作出了响应,上线了iOS 17.4 Beta版,向欧盟用户开放了侧载功能。然而,尽管iPadOS与iOS在本质上并无太大差异,但iPad并不支持侧载功能。这意味着,安装第三方应用商店以及从第
-
极氪20万台新能源汽车里程碑达成
1月8日消息,国内新能源汽车市场再传捷报。极氪汽车今日欣喜公布,经过26个月的不懈努力,其累计交付汽车数量已突破20万台大关。这一成就不仅彰显了极氪在新能源领域的强劲实力,更使其持续刷新着新势力品牌的最快交付纪录,同时保持着全球唯一的新能源
-
Win11系统intel核显控制面板怎么打开-打开intel核显控制面板的方法
你晓得吗?有些小伙伴想开自己电脑的intel核显控制面板来看显卡驱动信息。里面可以检查更新驱动。但是,他们不知道怎么开这个面板。如果也想试试看的话,可以看看下面的操作方法哦!打开intel核显控制面板的方法1. 右键桌面空白处,就能打开英特
-
win10怎么快速关闭屏幕?win10快速关闭屏幕方法
估计很多用 Win10 的人都会想要快速锁屏来保护个人隐私,但是也有人不知道怎么快速关掉屏幕。其实很简单,你可以直接按 Win + L 快捷键,或者右键点击桌面上的空白地方,然后选择快捷方式就可以啦。下面我们就来详细说一下 Win10 快速
-
极氪第二款MPV车型“CM2E”谍照曝光,或于2024年上半年亮相
1月17日消息,近日,知名汽车博主@SugarDesign在社交媒体上发布了极氪品牌旗下第二款MPV车型——内部代号“CM2E”的谍照。据推测,新车可能为小型MPV,有望于2024年上半年与大家正式见面。 从曝光的谍照中可以看出,极氪CM
-
Win11如何分区硬盘分区?win11磁盘怎么分区硬盘教程
很多用户都觉得系统自带的分区空间太小了,那Win11要怎么分硬盘啊?直接点开“此电脑”,然后点“管理”,再点“磁盘管理”就可以操作设置了。下面我们就来详细说说Win11怎么分硬盘吧!win11磁盘怎么分区硬盘教程1、首先右键“此电脑”,打开