阿里云slb转发策略的健康检查问题
问题:
1、slb的转发策略默认是否开启健康检查
2、slb的http(s)监听的健康检查配置是否对转发策略后端的虚拟服务器组的健康检查有影响
3、创建的虚拟服务器组的转发策略域名或者url对虚拟服务器组的健康检查是否有影响
实验:
准备环境:
1、一台slb,http监听,80端口,公网ip:1*
2、两台ecs,一台配置nginx(用于虚拟服务器组)2,一台没有web服务(用于默认后端服务)3
实验流程:
1、2*配置nginx,端口是90
2、配置时slb的http监听,健康检查配置:端口是80,域名是www.baidu.com;后端服务器是3*;结果肯定是健康检查异常。
3、创建虚拟服务器组:kn_test,组内ecs:2*,端口是90;
4、添加转发策略:kn.com,url路径是/,转发到kn_test
5、等待5分钟,预期得到的结果应该是健康检查异常处不会报2异常,实际和预期一样;然后关闭2的nginx,等待5分钟,预期应该会报健康检查异常,实际和预期一致报90端口异常;关闭健康检查,监听主页面健康检查状态不会提示虚拟服务器组或者后端默认服务器组健康检查异常
得到的结论可以证实:(1)slb的监听的健康检查的开启决定了转发策略里面的虚拟服务器组的健康检查是否开启
(2)slb的http(s)监听的健康检查配置对转发策略后端的虚拟服务器组的健康检查没有任何影响
6、配置nginx的虚拟主机,其中一个default站点,一个kn.com站点,不同的网站根目录,正常通过其他域名访问到default站点是403;访问kn.com是200,实现成功。
curl -I -X HEAD -H HOST:www.kn.com 127.0.0.1:90 ,结果是403
curl -I -X HEAD -H HOST:kn.com 127.0.0.1:90 ,结果是200
7、然后修改转发策略,修改后的域名是www.kn.com,开启健康检查,预期应该是健康检查正常,等待5分钟,实际却是健康检查异常,因为发现转发策略可以配置健康检查规则,一口老血!
实验结论:猜测不如实际动手操作一番,实际动手操作一番,不如多在控制台点点。