amazon-web-services - AWS ALB 与 Docker 群

标签 amazon-web-services docker amazon-ec2 docker-swarm aws-alb

我有一个在 AWS EC2 上运行的应用程序。为了获得高可用性,我们计划设置 AWS 负载均衡器并将应用程序托管在至少 2 个 EC2 实例中。

我们还听说过 Docker swarm,其中我们可以在 2 个单独的 EC2 实例上创建一个具有 2 个管理器的服务,而 swarm 将负责其余的工作(而不是使用带有 2 个 EC2 的 ALB)。它将平衡集群内所有容器的负载,并且如果有任何事情导致容器停止运行,它还会重新启动容器。

所以我想知道哪个是我的案例的最佳选择。该应用程序不会得到繁重的负载/流量。为什么我选择负载均衡器是为了高可用性。如果 1 个实例出现故障,另一个实例将处理此问题。

如果还有其他选择可以满足我的要求,我们将不胜感激。
谢谢。

最佳答案

我认为这是一个无状态的应用程序。

Swarm 和 ALB 的组合是您可以选择的,但您迟早需要合并自动缩放等,这意味着您需要管理和维护 swarm 集群。
使用 ALB,您将获得真正好的指标,而使用 Swarm 时您肯定会错过这些指标。

但是,您确实有一些更好的选择可以为您管理集群。您只需要管理和维护 docker 镜像 -

  • 使用 ECS。
  • 使用 EKS(仅在 us-east-1 中,就像现在一样)
  • 使用 ElasticBeanstalk 多容器。

  • 引用 -
    https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_ecs.html
    https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html
    https://aws.amazon.com/eks/

    关于amazon-web-services - AWS ALB 与 Docker 群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52940099/

    相关文章:

    amazon-web-services - 云形成错误: 'CodeUri' requires Bucket and Key properties to be specified

    java - 用 Java 进行模板化邮件合并

    typescript - 使用 CDK 将文件上传到 S3 存储桶

    javascript - 如何将 AWS SDK 定义用于 TypeScript?

    apache - HTTPS 网站的 ELB 和 Apache 配置

    docker - 无法加载共享库 'kernel32.dll'

    linux - kubernetes 在创建 pod 时出现 CrashLoopBackOff 错误

    Docker 注册表 : Can't find image

    amazon-s3 - 结合wget和aws s3 cp上传数据到S3无需本地保存

    linux - 如何以编程方式在 influxdb 中创建数据库和用户?