Rancher通过Aliyun-slb服务对接阿里云SLB教程

概要

阿里云负载均衡(Server Load Balancer)是将访问流量根据转发策略分发到后端多台云服务器(Elastic Compute Service,简称 ECS)的流量分发控制服务。

负载均衡服务通过设置虚拟服务地址,将位于同一地域的多台ECS实例虚拟成一个高性能、高可用的应用服务池;再根据应用指定的方式,将来自客户端的网络请求分发到云服务器池中。负载均衡服务是ECS面向多机方案的一个配套服务,需要同ECS结合使用。

负载均衡服务会检查云服务器池中ECS实例的健康状态,自动隔离异常状态的ECS实例,从而解决了单台ECS实例的单点问题,提高了应用的整体服务能力。在标准的负载均衡功能之外,负载均衡服务还具备TCP与HTTP抗DDoS攻击的特性,增强了应用服务的防护能力。

此篇文章中,我将演示Rancher如何通过Aliyun-slb服务对接阿里云SLB 。Rancher的安装这里就不再叙述,具体安装方法可参照部署文档http://rancher.com/docs/rancher/v1.6/en/ 或观看在线培训。以下文章基于一套已经搭建好的Rancher系统。

Aliyun-SLB应用原理

首先,我们需要在阿里云SLB页面创建SLB实例,记录实例的ID号,然后进入实例创建一条监听策略,策略中配置了前端端口和后端服务器端口。

按阿里云SLB原始的工作方式,需要手动添加有对应端口的服务器到后端服务器池,这样通过前段端口发来的请求会自动转发到后端服务器。而通过Aliyun-SLB可以实现自动把对应后端服务器添加到后端服务器池中。

Aliyun-SLB 应用通过API与阿里云平台对接, Rancher中启动服务时添加一个标签来表示这个服务需要使用阿里云负载均衡,启动的应用需要映射宿主机端口。 Aliyun-SLB应用根据创建应用映射的宿主机端口去检测阿里云负载均衡有没有监听相应的端口。如果端口检测通过,那么Aliyun-SLB会把服务的相关参数传递给负载均衡;否则会提示刷新配置失败,负载均衡没有监听某某端口。

Aliyun-SLB 服务安装

添加Aliyun-SLB应用商店

通过Rancher_server-ip:8080登录WEB后,在系统管理|系统设置中添加一个自定义商店。

名称:SLB

地址:https://github.com/niusmallnan/slb-catalog.git

版本:master

保存后,在应用商店|全部  中搜索slb可以看到相应的应用。

Aliyun-slb安装

点击详情后进入配置界面:

名称:保持默认;

描述:可选;

配置选择

SLB Access Key ID:  AccessKey管理器中查看;

SLB Secret Access Key:AccessKey管理器中查看;

SLB Region:SLB所在区域。进入SLB首页后,选中你SLB服务所在的区域,查看浏览器的地址。比如,如果是华南区,查看浏览器地址

那么cn-shenzhen就是它的区域;

Aliyun VPC ID:VPC ID,进入VPC网络首页,找到你ECS绑定的VPC网络并点击进去,页面的中间有一个ID;

ECS Private IP Lookup :这个地方需要选择true,原因后面讲解;

最后点击启动,等待应用启动完成。

Aliyun SLB配置

登录阿里云控制台,进入负载均衡首页。右上角点击创建负载均衡,根据需要创建好负载均衡后,如图:

点击负载均衡名称进入负载均衡配置界面,点击左侧监听,接着点击右上角添加监听。

如下图,因为接下来要启动一个nginx服务来演示,所以这里前端通过http协议监听8888端口,后端(ECS服务器)容器映射到8888端口上;

宽带和调度算法保持默认;

虚拟服务器组:把多个运行相同服务的主机捆绑在一起,这个适用于手动配置SLB,Aliyun SLB动态配置不需要勾选;

高级配置保持默认;

监控检测中端口设置8888,其他默认;

其他的保持默认,返回负载均衡列表。

配置好的负载均衡如下图:

因为Aliyun SLB应用动态注册可用的服务信息到负载均衡实例上,后端服务器这里就不需要设置。

现在,我们回到前面讲到的ECS Private IP Lookup 开关,如果设置没有打开,ECS服务器的IP地址无法传递给负载均衡实例,最后会导致负载均衡实例无法动态获取到后端服务器。

示例服务配置

接下来创建一个nginx应用栈并创建一个nginx服务。创建服务的时候有几个地方要设置:

1、端口映射

服务映射到宿主机的端口必须与负载均衡里面配置的端口相同;

2、服务容器标签

创建容器的时候需要指定一个标签:io.rancher.service.external_lb.endpoint=xxxx,  后面的XXXX为创建的负载均衡实例ID,这个ID在负载均衡首页可以看到。

nginx服务跑起来之后,我们看Aliyun SLB服务的日志:

我起了两个nginx实例分别运行在两台主机上。

现在可以正常访问了。进入负载均衡首页查看,已经获取到后端服务器了。

负载均衡测试

首先修改nginx默认页面的内容并刷新,因为默认为轮询,所以每刷新一次页面就会变化:

原文来源:Rancher Labs

时间: 2024-08-29 01:46:27

Rancher通过Aliyun-slb服务对接阿里云SLB教程的相关文章

阿里云 IOT 对接设备开发 C# 开发设备对接阿里云 IOT平台

原文:阿里云 IOT 对接设备开发 C# 开发设备对接阿里云 IOT平台 一,创建阿里云 IOT 产品.设备 目前阿里云每月赠送 100 万条流量,可以免费使用基础版.高级版,开通后即可免费使用. 阿里云 IOT 平台地址 https://iot.console.aliyun.com/product 登陆开通后,新建测试产品.设备. 创建产品 产品的定义是,一类硬件.功能.外形完全相同的设备.所以,添加一个产品后,我们就可以在此类别下添加成千上万个设备. 下面的信息要选.设备.非网关,原因后面说

阿里云SLB后Nginx、Tomcat获取真实IP

一.SLB后Nginx如何获取真实IP 前提:nginx作为slb获取真实ip是使用 http_realip_module,默认一键安装包安装的nginx没有安装这个模块需要重新重新编译nginx并加装. 查看是否安装此模块:./nginx -V 如没有安装此模块,需重新编译nginx增加 --with-http_realip_module 1.阿里云SLB需要开启获取真实IP(默认已开启) 2.修改Nginx配置文件nginx.conf 添加: http { log_format main '

[网站公告]3月10日23:00-4:00阿里云SLB升级,会有4-8次连接闪断

大家好,阿里云将于3月10日23:00-4:00对负载均衡服务(SLB)做升级操作,升级期间SLB网络连接会有约4-8次闪断.由此给您带来麻烦,敬请谅解! 阿里云SLB升级公告内容如下: 尊敬的用户:  您好,为了更好的优化后端系统,阿里云将于3月10日23点到11日4点对负载均衡服务(SLB)做升级操作,升级详情如下: 1.北京REGION升级SLB支持HTTPS. 2.杭州REGION升级SLB支持HTTPS. 3.金融云杭州集群升级SLB支持HTTPS. 升级期间影响: 北京REGION新

阿里云发布企业数字化及上云外包平台服务:阿里云众包平台

摘要: 阿里云正式发布旗下众包平台业务(网址:https://zhongbao.aliyun.com/),支持包括:网站定制开发,APP.电商系统等软件开发,商标.商品LOGO.VI.产品包装设计.营销推广.大数据人工智能等各类企业上云.数字化转型服务. 阿里云正式发布旗下众包平台业务(网址:https://zhongbao.aliyun.com/),支持包括:网站定制开发,APP.电商系统等软件开发,商标.商品LOGO.VI.产品包装设计.营销推广.大数据人工智能等各类企业上云.数字化转型服务

解决阿里云SLB无法添加https证书的问题

私钥是在Linux中通过下面的openssl命令生成的: openssl req -new -newkey rsa:2048 -nodes -keyout cnblogs.key -out cnblogs.csr 证书是通过cnblogs.csr在godaddy上生成的. 生成的私钥/证书在自己的搭建的nginx服务器上可以正常使用. 但是在阿里云SLB证书管理中创建证书总是失败,具体的错误信息:"The specified parameter ServerCertificate format

关于阿里云SLB remote addr显示为公网IP分析

nginx日志设置如下 log_format access '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" '                  '"$http_user_agent" "$request_body" "$http_x_forwarded_for"

[网站公告]17:55-18:20阿里云SLB故障造成网站不能正常访问

(注:由于阿里云SLB管理控制台监控数据不准,实际故障时间是18:07-18:20.) 17:55-18:2018:07-18:20,我们使用的阿里云SLB(负载均衡)中有3台出现突发故障,造成全站无法访问,给您带来了麻烦,请谅解! 目前已经恢复正常,从阿里云那得知的故障原因是--由于杭州地区的SLB所在网络控制系统出现异常导致. 故障感言:如果淘宝在阿里云上,SLB的网络控制系统敢出现异常吗? SLB故障之后的后遗症: [网站公告]17:55-18:20阿里云SLB故障造成网站不能正常访问,布

[云上天气预报-有时有闪电]2月3日23:00-4:00阿里云SLB升级期间网络会闪断

大家好,2月3日23:00-2月4日4:00,阿里云将对SLB(负载均衡)进行升级,在升级期间,SLB会有约4-8次的网络闪断.由此给您带来麻烦,望谅解! 阿里云官方公告内容如下: 尊敬的用户: 您好,为了更好的优化后端系统,阿里云SLB将于2月3日23:00-2月4日4:00进行升级,升级详情如下: 2015-02-03 23:00:00,杭州和青岛REGION升级slb组件keepalived. 升级期间杭州和青岛VIP连接约有4-8次闪断,需要访问VIP的客户端主动重连恢复. 本次升级主要

阿里云slb实现多域名https

刚开始接锅,没注意原来站点的https配置在slb上,在服务器上配置一顿操作猛如虎,细细检查一遍,感觉良好,一测试发现不对劲,检查发现原来https配置在阿里云slb上,阿里云还是做得不错的 ,但是现在要实现多域名,这个有点麻烦,查了下,刚好阿里云新上线了slb 支持sni. 配置过程: 1.先配置监听,80的直接转发,443的转发到后端80端口,上传证书,其余的默认就好 2.这里证书可以直接上传,也可以去证书管理页面填写 将需要配置https的证书添加 创建虚拟服务器组:每个域名对应一个虚拟服