全能开发工程师手册:深入了解ipvsadmin

发布时间:2023-05-18

一、ipvsadmin命令

ipvsadmin是一个基于IPVS技术的负载均衡器管理工具,它可以通过命令行的方式配置和管理负载均衡器。以下是一些常用的ipvsadmin命令:

$ ipvsadmin -A|--add-service
$ ipvsadmin -E|--edit-service
$ ipvsadmin -D|--delete-service
$ ipvsadmin -L|--list-service
$ ipvsadmin -a|--add-server
$ ipvsadmin -e|--edit-server
$ ipvsadmin -d|--delete-server
$ ipvsadmin -l|--list-server

通过使用以上命令,我们可以很方便的添加、编辑、删除、查询服务或服务组、服务器,来实现负载均衡和高可用服务。

二、ipvsadmin单独使用

ipvsadmin可以单独使用,也可以结合keepalived、heartbeat等工具一起使用。单独使用时,可以通过配置文件保存负载均衡器的配置,例如:

virtual_server {
   service {
       name = "http"
       protocol = "tcp"
       port = 80
       scheduler = "wrr"
       persistence_timeout = 300
   }
   server {
       ip = "192.168.1.101"
       active = true
       weight = 1
   }
   server {
       ip = "192.168.1.102"
       active = true
       weight = 1
   }
}

以上配置表示:创建一个名为http的服务,使用TCP协议监听80端口,使用wrr调度算法,持久化时间为300秒。同时,有两个服务器分别为192.168.1.101和192.168.1.102,权重均为1,均处于可用状态。

三、ipvsadmin+keepalived区别

当ipvsadmin结合keepalived使用时,keepalived可以将多台实际服务器(real server)组成的负载均衡器模拟成一个虚拟服务器(virtual server),对外提供服务。当有服务器宕机时,keepalived可以及时将该服务器从负载均衡器中移除,保证服务的高可用性。相对于ipvsadmin单独使用,ipvsadmin+keepalived的优点在于能够实现自动化处理宕机等问题,提高了可靠性。

四、ipvsadmin不启动有影响吗?

如果不启动ipvsadmin服务,则不能使用ipvsadmin的命令行管理功能。但是,实际的负载均衡器仍然可以通过keepalived等工具进行管理。因此,ipvsadmin不启动对负载均衡器的正常运行不会产生影响。但是,在需要使用ipvsadmin修改负载均衡器配置时,必须启动ipvsadmin服务。

五、ipvsadmin和ipvsadm的区别

ipvsadm和ipvsadmin都是基于IPVS技术的负载均衡管理工具,它们的主要区别在于操作界面和交互方式。 ipvsadm是一个命令行工具,可以通过手动输入命令的方式进行负载均衡器的配置管理。而ipvsadmin则是一个带有图形界面的管理工具,可以通过鼠标操作来完成配置管理,相对比ipvsadm更加人性化易用。 总的来说,如果你喜欢单纯的命令行操作,那么ipvsadm是一个不错的选择。但是,如果你习惯使用图形界面,ipvsadmin会更加方便实用。