zoukankan      html  css  js  c++  java
  • 品尝阿里云容器服务:负载均衡与容器的关系

    最近我们开始尝试基于阿里云容器服务使用Docer进行生产环境的自动化部署,首先遇到的一个问题是 —— 如何部署负载均衡(这里的负载均衡是指阿里云负载均衡SLB)?面对这个问题,我们首先关注的是这个问题 —— 阿里云负载均衡与容器究竟是什么关系?

    在阿里云容器服务中创建集群时(这个使用容器服务的第一步操作),默认会自动创建负载均衡。

    这个负载均衡依然是我们熟知的那个负载均衡,后端服务器依然是云服务器(ECS)。

    最大的不同之处是监听的配置是基于TCP的4层负载均衡。

    从这个监听配置可以得知,在使用阿里云容器服务时,负载均衡与容器没有直接的关系,它们感知不到容器的存在,只是作为4层负载均衡(也支持7层负载均衡,详见这里),负责将请求通过TCP转发到后端ECS的9080端口上,只不过这些ECS是容器服务集群中的节点(容器主机)。

    这时我们有产生了另外一个疑问 —— 容器主机的9080端口与容器内应用监听的端口之间又是什么关系呢?

    从阿里云容器服务的帮助文档-简单路由(支持 HTTP/HTTPS)中得知,在容器主机内运行着一个专门提供路由服务(acsrouting)的容器。

    在容器服务控制台的“应用列表”中可以看到这个acsrouting应用:

    点击上图中的应用名称"acsrouting",会显示这个应用中的服务acsrouting_routing:

    从上图中的端口映射中可以知道,原来与容器主机(ECS,集群节点)的9080端口发生关系的是acsrouting_routing容器的80端口。

    所以,当使用阿里云容器服务时,请求是这样被转发+路由到运行实际Web站点的容器中的:请求 -> 负载均衡80端口 -> ECS(容器主机)的9080端口 -> acsrouting的80端口 -> 运行Web站点的容器的80端口。

    需要注意的是 acsrouting 的路由是基于域名的。

  • 相关阅读:
    操作~拷贝clone()
    属性/css~储存
    属性/css~位置.offset()&offsetParent()&position()&scrollTop()&scrollLeft()
    属性/css~尺寸.height()
    设置,获取,删除cookie方法
    Cookie
    属性/css~css.css()
    Python井字游戏
    Asp.net vNext 学习之路(三)
    使用C#发送Http 请求实现模拟登陆(以博客园为例)
  • 原文地址:https://www.cnblogs.com/dudu/p/6928615.html
Copyright © 2011-2022 走看看