本文目录:
- 1、阿里云ECS服务器SLB负载均衡实践
- 2、关于阿里云SLB(负载均衡)配置HTTPS证书一些记录
- 3、阿里云自建k8s集群使用slb负载均衡
阿里云ECS服务器SLB负载均衡实践
负载均衡构建在原有网络结构之上,它提供了一种透明且廉价有效的方法扩展服务器和网络设备的带宽、加强网络数据处理能力、增加吞吐量、提高网络的可用性和灵活性。
拥有大量用户的企业,经常会面临如下的难题:在高并发的情况下,经常会导致服务器响应速度慢,严重的情况会直接导致服务器停止服务。此时,会导致企业的业务中断,影响客户的正常访问。
负载均衡应运而生
u需求:本次实验最低需求两台云服务器ECS/u
上图创建了两台云服务器ECS实例和一个负载均衡实例,它们各自拥有各自的弹性IP地址
在浏览器两个页面分别输入两台云服务器ECS的弹性IP访问
比较两台ECS的访问结果,发现部署的网站内容相同,只是显示的后端服务器IP不同。
在阿里云登陆界面选择用RAM用户登录
使用实验提供的 子用户名称 和 子用户名密码 登陆阿里云管理控制台
img src="" alt="4.登陆.png" /
img src="" alt="5.登陆.png" /
登录后点击左侧 导航栏的 产品与服务 选择 负载均衡
img src="" alt="6.png" /
a. 在控制台点击左侧 实例管理 ,在右侧页面中的红框处看到负载均衡的 公网服务地址
该公网服务地址即为负载均衡实例的弹性IP地址
b.在浏览器上输入a的公网服务地址并访问
可见后端服务器IP尾数为131(ECS-2),但当我们刷新一遍后,如下图
后端服务器IP尾数变为130(第二台ECS-1)
当我们不停的刷新,会发现后端服务器IP 实在这两台ECS的 内外地址 之间轮流转换
因为我们在第二步配置的两台ECS的权重是相同的
下一步我们试着改变两台ECS的权重不相同看看效果如何
a.进入控制台--选择负载均衡--实例管理--点击进入实例--默认服务器组,进入如下图所示
b.勾选两台服务器--点击修改权重
c.设置权重 30,90,效果如下图
d.在浏览器中,刷新多次 负载均衡服务地址 的页面,统计页面的 后端服务器IP 。
可以发现:每 4 次刷新,将有 3 次访问 权重 为 90 的 ECS实例, 1 次访问权重为 30 的 ECS实例。
用户可以根据实际情况调整负载均衡器的请求分发,一般将 配置高的服务器设置的权重调高 , 配置较低的服务器设置的权重调低 。这样可以避免在高并发时,配置较低的服务器因为压力较大服务异常的发生。
a.实例管理界面---监听---修改监听配置
b.点击修改
c.开启会话保持、可选择修改会话保持超时时间
d.依次点击下一步,不修改
e. 再次在浏览器中输入 负载均衡 的 IP地址 , 多次刷新 ,发现在会话保持的超时时间内请求 只会分发到某一台 ECS 上(究竟是哪一台 ECS 没有规定),时间超出后,重新按照权重比例分发。
a.进入实例
b.点击停止
img src="" alt="28.png" /
c.返回,显示如下图所示,ECS-2已关闭
d.在监听页面和实例管理页面,健康状态显示异常
e. 再次刷新浏览器中 负载均衡 的 IP地址 ,此时,请求发送到 健康检查状态 为 正常 的ECS-1上。
关于阿里云SLB(负载均衡)配置HTTPS证书一些记录
因为业务背景问题,目前应用后端的接口和前端服务是放置在不同的服务器上,而前端页面现在说需要加上https,但是我们的前端页面目前请求应用后端的接口的时候使用的还是http,所以导致了,请求http的接口时候出现了异常!
如图示:
解决的办法就是,我们的也给需要给我们的应用接口加上对应的https支持!
之前已经给对应的接口的域名买好了对应的证书!
问题描述:
因为忘了,我们的应用接口的域名是指向了阿里云SLB上的服务器,所以一开始的时候是在后端进行配置相关的SSL,可是配置来配置还是无法生效!
请求的时候会说超时:
首先后端的集群的应用服务器NGINX的配置是:
后知后觉才记得,域名的指向的是负载服务器的IP,我们需要在负载层服务器那里进行配置。
于是乎打开了阿里云的负载均衡,查看一下对应的一些配置信息,
所以尝试了添加对应的新的监听处理!
添加基本配置:
配置对应的监控检查:
然后再配置对应的转发策略:
结果:
第I一次添加的时候,我开启了对应 使用虚拟服务组
导致下面的问题的提示(理论上其实应该是没影响的,暂且没继续尝试):
并且访问对应的后端接口返回的是502:
因为对于http还是没有什么问题,所以排除了后端问题的可能性!
后来删除继续重新添加:
但是还是出现异常信息,
后来查阅各种资料,在阿里云的官方文档上有对应的排错步骤:
参考资料信息:
排查步骤
PS:
检查负载均衡状态,是否有后端ECS健康检查失败的情况,如果有健康检查失败,解决健康检查失败问题。
后来觉得应该有可能是原因是健康检查检查引起的问题异常:
,因为默认他应该是会在对应的server下的一个默认的路径去检查服务的情况,由于我没指定对应的检查URL地址,所有在转到80的时候就异常了!!
后来直接的关闭健康检查!就可以了!!
阿里云自建k8s集群使用slb负载均衡
环境:
阿里云坑爹的文档,害我搞了3天才搞定
添加 --cloud-provider=external --provider-id=region_id.instance_id替换为上面获取到的id(provider-id是阿里云控制器用来识别ecs,添加路由表,添加负载均衡监听和虚拟服务器组)
不需要--hostname-override,会导致kubeadm join无法正常结束
(未验证)如果是已经加入集群的node,只修改kubectl并重启没用,估计可以直接修改node的spec,添加 providerID: cn-hongkong.i-xxxx
获取阿里云账户access_key,需要负载均衡和专用网络VPC路由表权限
官方资源文档:
需要修改下面3项
云控制器镜像版本目前是:cloud-controller-manager-amd64:v1.9.3.10-gfb99107-aliyun
有几个问题
注解文档:
注意!!!老版注解前缀为alicloud,很多网上的其他文档用的是新版前缀alibaba-cloud(坑爹)
将云控制器配置文件调整为ConfigMap挂载方式(推荐)
也可以按照官方文档创建etc/kubernetes/cloud-controller-manager.conf,改为下面data的内容
修改${ca_data}替换为下面的证书内容
修改${k8s_master_url} 为集群地址
安装
【阿里云负载均衡】的内容来源于互联网,如引用不当,请联系我们修改。
网友留言: