在 Amazon Beanstalk 和 IIS 设置上部署站点

在 Amazon Beanstalk 和 IIS 设置上部署站点

我有兴趣使用 Amazon Elastic Beanstalk 来部署我的新网站。以下是我需要了解但无法得到答案的一些事项:

1) 我如何维护所有已部署和未来部署的机器的 IIS 设置? 2) 如果我可以维护,如果我在一台服务器上更改设置,它会自动在其他服务器上设置吗? 3) 我如何备份数据。在其他服务器中,我通常会创建 AMI 并在出现问题时部署到新服务器?

答案1

与@Christopher 的评论相反:

1) 通过 EB 部署自定义 AMI 是一种反模式。每次 EB 更新基础平台时,您都需要重新创建自定义 AMI。

2)是的,手动的服务器上的配置更改是一种反模式。但建议将配置指定为部署单元的一部分。

查看 AWS EB 文档在 Windows 服务器上定制软件

3) 您的服务器上不应有任何需要备份的状态。部署应用程序所需的一切都在部署包和 EB 配置中。EB 使用健康检查和自动扩展来确保您的环境始终运行。

答案2

Beanstalk 只不过是对各种 AWS 服务(例如自动扩展、S3 和 EC2 等)的调用的集合,以及一些使部署新应用程序版本变得容易的脚本和路由。如果你以这样的理解来理解它,它的结构就更有意义了:

  1. Beanstalk 附带库存 AMI,但您可以部署自定义的. 将您的 IIS 设置嵌入到 AMI 中(确保以现有的 Beanstalk AMI 为基础),它们将在所有自动扩展操作中持续存在。这仅适用于服务器配置。您的应用程序的新版本不应嵌入到 AMI 中,而是通过 beanstalk 本身传播到您的服务器。
  2. 在服务器实例化后对其进行配置更改是一种反模式。更改一个服务器不会将这些更改传播到其他服务器。相反,您应该为新配置剪切一个 AMI,启动第二个环境,更改域路由以实现零停机切换。第一次这样做时,这很违反直觉,特别是如果您习惯了数据中心部署。可以通过在实例化后更改环境的 AMI 来避免路由更改,但这会造成中断。

恐怕我不太明白你所说的问题 3。你指的是什么数据?如果你能在评论中告诉我,我很乐意用我所知道的任何信息来编辑这个答案。

相关内容