阿里云负载均衡配置多域名 阿里云slb限流措施方法

在使用阿里云服务的过程中,针对TCP负载均衡场景,会出现这样的问题:如果一个应用的客户端镜像和服务器镜像都部署在同一个节点(ECS)上,由于SLB的限制,应用的客户端无法通过SLB访问本地服务器。本文试图以基于TCP协议的常用redis为例,一步步解决这个问题,同时向大家展示容...

在使用阿里云服务的过程中,针对TCP负载均衡场景,会出现这样的问题:如果一个应用的客户端镜像和服务器镜像都部署在同一个节点(ECS)上,由于SLB的限制,应用的客户端无法通过SLB访问本地服务器。本文试图以基于TCP协议的常用redis为例,一步步解决这个问题,同时向大家展示容器服务的概念。

解决方案1:通过调度容器,可以防止客户机和服务器容器部署在同一个节点上。

示例应用程序模板(使用lb标签,使用swarm fileter函数)

redis-***ster:端口:

–6379:6379/tcp图像:‘雷迪斯:阿尔卑斯’

标签:

aliyun . lb . port _ 6379:TCP://proxy _ test:6379 redis-client:i***ge:‘雷迪斯:阿尔卑斯’

链接:

–redis-主环境:

–‘亲和力:aliyun.lb.port_6379!= TCP://proxy _ test:6379 ’

命令:redis-CLI-h 120.25.131.***

stdin_open: true tty: true

注意事项:

如果发现调度不生效,进入服务列表,选择你需要调度的服务,选择重新调度,选择强制重新调度强制重新调度会丢弃已有容器的volume,请做好相应的备份迁移工作

解决方案2:容器集群内部的客户端使用link访问服务器,集群外部使用SLB。

示例模板(使用lb标签)

redis-***ster:端口:

–6379:6379/tcp图像:‘雷迪斯:阿尔卑斯’

标签:

aliyun . lb . port _ 6379:TCP://proxy _ test:6379 redis-client:i***ge:‘雷迪斯:阿尔卑斯’

链接:

–redis-***ster命令:redis-CLI-h redis-***ster stdin _ open:true tty:true

解决方案3:容器集群内部的客户端使用自定义路由(基于HAProxy)作为代理访问服务器,而集群外部的客户端使用SLB。

示例模板应用(使用lb标签,自定义路由镜像)

lb:图片:registry.aliyuncs.com/acs/proxy:0.5

端口:

–‘6379:6379/TCP ’

重新启动:总是标签:

# addon使代理镜像能够订阅注册表并动态加载服务的路由。

aliyun . custom _ addon:“代理”

#为每个虚拟机部署该映像的容器。

aliyun . global:“真”

#前端装订Slb,使用lb标签

aliyun . lb . port _ 6379:TCP://proxy _ test:6379

#告诉系统自定义路由需要等待主从启动后才能启动,并且依赖于主从。

aliyun.depends: redis-***ster,redis-slave环境:

#支持装载路线的后端集装箱的范围,”*”代表整个集群,默认为应用内服务ADDITIONAL _ SERVICES:“*”

EXTRA _ DEFAULT _ SETTINGS:“log rsyslog local0,log global,option httplog & # 8221

#配置HAProxy在tcp mode模式下工作:“tcp & # 8221

链接:

–rsyslog:rsyslogrsyslog:i***ge:registry . cn-Hangzhou . aliyuncs . com/linhuatest/rsyslog:latestredis-***ster:ports:

–6379/tcp图像:‘雷迪斯:阿尔卑斯’

标签:

#告诉自定义路由暴露端口6379。

aliyun . proxy . TCP _ PORTS:“6379”

#告诉系统需要将此服务的路由添加到自定义路由服务中。

aliyun . proxy . required:“真”redis从属:端口:

–6379/tcp图像:‘雷迪斯:阿尔卑斯’

链接:

–redis-主标签:

#告诉自定义路由暴露端口6379。

aliyun . proxy . TCP _ PORTS:“6379”

#告诉系统需要将此服务的路由添加到自定义路由服务中。

aliyun . proxy . required:“真”

#告诉系统slave需要等待***ster启动后才能启动,它依赖于***ster。

aliyun.depends: redis-***ster命令:redis-server –slave of redis-***ster 6379 redis-client:i***ge:‘雷迪斯:阿尔卑斯’

链接:

–lb:***.example.com标签:

aliyun.depends: lb命令:redis-CLI-h ***.example.com stdin _ open:true tty:true

该方案实现了redis的主从架构,同时通过自定义路由镜像进行负载均衡,在一定程度上实现了高可用性。

本文来自西绿柿投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/495460.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 04-08
下一篇 04-08

相关推荐

  • 阿里云负载均衡配置多域名 阿里云slb限流措施方法

    在使用阿里云服务的过程中,针对TCP负载均衡场景,会出现这样的问题:如果一个应用的客户端镜像和服务器镜像都部署在同一个节点(ECS)上,由于SLB的限制,应用的客户端无法通过SLB访问本地服务器。本文试图以基于TCP协议的常用redis为例,一步步解决这个问题,同时向大家展示容

    2023-04-08 16:25:01
    980 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信