AWS容器服务 / function serverless / Load Balancer介绍

容易服务

  1. ECS (Elastic Container Service)
    – aws管理master node, 用户管理worker node
    – AWS自研的容器编排服务
    – ECS免费,只需根据使用EC2的数量(worker node)付款

  2. EKS (Elastic Kubernetes Service)
    – aws管理master node, 用户管理worker node
    – 兼容于Kubernetes
    – 收费为一个集群每小时0.1USD,然后还需要根据使用EC2的数量(worker node)付款

  3. Fargate
    – 拥有兼容EKS或ECS的版本
    – serverless架构
    – 只需根据用量付费

Lambda
– serverless架构
– 把代码部署上去加上api gateway就能直接上线使用了,无需管理infra
– 收费方式,根据执行次数和每秒使用的RAM额度进行计算
– 缺点是最长只能执行15分钟,所以适合开发小型应用


API Gateway
– serverless架构
– 一个API网关,对接后端的服务,可以用于创建、发布、维护、监控和保护任意规模的REST、HTTP 和WebSocket API


Lightsail
– 单机版的vps,把db / application装在同一台机


Batch
– 批量大规模启动或停止EC2


Application Load Balancer
– 应用层使用,支持 OSI 7 层
– 支持 grpc / http / https / websocket
– 支持分散流量到后端的服务
– ALB默认已经打开CrossZone并且无法关闭,只能在TargetGroup层面关闭

  • Routing based on path in URL ( example.com/users & example.com/posts )
  • Routing based on hostname in URL ( one.example.com & other.example.com )
  • Routing based on Query String, Headers ( example.com/users?id=123&order=false )
  • 如果在后端的EC2需要获取client ip的话需要获取header的X-Forwarded-For


Network Load Balancer
– 网络层使用,支持OSI 4 层
– 支持TCP / UDP 和 grpc / http / https / websocket
– 支持短时间快速链接大流量
– 简单的说就是对于特定IP的开放特定的port
– 支持分散流量到后端的服务
– CrossZone流量分散只有ALB是免费的,NLB和GLB需要为跨AZ流量付费,CrossZone分散流量也比较均匀

Gateway Load Balancer
– 支持OSI 3 层 Geneve Protocol
– 这LB不是做流量分发的,是安全作用的
– 把流量导入到第三方进行防火墙、入侵侦测与预防系统,以及深层封包检查系统
– 流程是:流量 -> GLB -> EC2 进行第三方安全侦测 -> GLB -> 后端EC2

ALB & NLB Sticky Session
– 可以实现粘性,以便同一客户端始终重定向到负载均衡器后面的同一实例
– 可以自定义cookie在app层面,但不能使用的cookie(AWSALB, AWSALBAPP, AWSALBTG)

Loading

Facebook评论