LVS的调度方法有十几中,每种方法的调度标准和适用场景不同。大体有两大类,分别为固定调度方法或称为静态调度方法,另一类是动态调度方法。
常用的具体算法有十种。
1.轮询调度(rr)
将所有请求平均的分发到每个集群节点上,即轮流调度。
2.加权轮询调度(wrr)
由于不同的服务器性能不同,因此要考虑让性能高的节点多承担一些请求,这就需要定义每个节点的权重。调度器根据该节点的权重来判断分发给它的请求量。
也就是以多个节点它们之间的权重比例来分发。
3.源地址hash(Sourcehash,sh)
用于实现会话绑定到某个具体节点。根据请求的来源地址进行请求的分发,用于实现将某个客户端的所有请求都分发到一个固定的服务器上,
与Nginx中的ip_hash算法一样,也是根据客户端IP的hash值来计算请求转发的目标节点。只要客户端IP没有改变,以后的所有请求都转发到一个
固定的服务器节点。
这种调度算法在一定程度上会破坏公平调度的效果