一般性问题
问:什么是 AWS Elastic Beanstalk?
AWS Elastic Beanstalk 让开发人员能够更加轻松地在 AWS 云中快速部署和管理应用程序。开发人员只需上传应用程序,Elastic Beanstalk 将自动处理容量预配置、负载均衡、Auto Scaling 和应用程序运行状况监控的部署细节。
问:哪些用户应该使用 AWS Elastic Beanstalk?
希望在 AWS 云中快速部署和管理应用程序的用户。无需熟悉云计算即可使用该服务。AWS Elastic Beanstalk 支持 Java、.NET、PHP、Node.js、Python、Ruby、Go 和 Docker Web 应用程序。
问:AWS Elastic Beanstalk 支持哪些语言和开发堆栈?
AWS Elastic Beanstalk 支持以下语言和开发堆栈:
适用于 Jave 应用程序的 Apache Tomcat
适用于 PHP 应用程序的 Apache HTTP Server
适用于 Python 应用程序的 Apache HTTP Server
Node.js 应用程序的 Nginx 或 Apache HTTP 服务器
适用于 Ruby 应用程序的 Passenger 或 Puma
适用于 .NET 应用程序的 Microsoft IIS 7.5、8.0 和 8.5
Java SE
Docker
Go
请参阅“支持的平台”,查看支持的语言和开发堆栈的最新完整列表。
问:AWS Elastic Beanstalk 是否还支持其他语言?
提供。AWS Elastic Beanstalk 经过精心设计,以便将来可以扩展支持多种开发堆栈和编程语言。AWS 正在与解决方案提供商合作创建其他 Elastic Beanstalk 服务所需的 API 和功能。
问:使用 AWS Elastic Beanstalk,开发人员现在可以实现哪些以前无法实现的事情?
通过创建一种运行某版应用程序的环境,AWS Elastic Beanstalk 可自动执行容量预配置、负载均衡、Auto Scaling 和应用程序部署的细节。您只需上传自己可部署的代码 (如 WAR 文件),剩余工作则可由 AWS Elastic Beanstalk 执行。借助 AWS Toolkit for Visual Studio 和 AWS Toolkit for Eclipse,即可将应用程序部署到 AWS Elastic Beanstalk 并进行管理,而不必退出 IDE。一旦应用程序运行,Elastic Beanstalk 将自动执行监控、应用程序版本部署、基本运行状况检查等管理任务,并促进日志文件访问。使用 Elastic Beanstalk,开发人员可以专注于开发应用程序,无须再处理配置服务器、设置负载均衡或管理扩展等面向部署的任务。
问:AWS Elastic Beanstalk 与现有的应用程序容器或平台即服务解决方案有何不同?
大多数现有的应用程序容器或平台即服务解决方案在减少所需的编程量的同时,会大大降低开发人员的灵活性和控制。开发人员需要集中关注供应商预先确定的所有解决方案,很少能够对其应用程序基础设施的各个部分采取控制。而使用 AWS Elastic Beanstalk,开发人员可保留对支持其应用程序的 AWS 资源的完全控制。如果开发人员决定要管理基础设施的某些(或全部)元素,可使用 Elastic Beanstalk 的管理功能无缝操作。
问:使用 AWS Elastic Beanstalk 可以控制应用程序的哪些元素?
使用 AWS Elastic Beanstalk,您可以:
选择与您的应用程序要求相匹配的操作系统(例如,Amazon Linux 或 Windows Server 2016)
从多个 Amazon EC2 实例中选择,包括按需实例、预留实例和 Spot 实例
从若干可用的数据库和存储选项中选择
实现登录访问 Amazon EC2 实例,从而即时直接排除故障
通过在多个可用区域运行,快速提高应用程序可靠性
通过在负载均衡器上启用 HTTPS 协议,增强应用程序安全性
访问内置 Amazon CloudWatch,监控和获取应用程序状况及其他重要事件的通知
调整应用程序服务器设置 (如 JVM 设置) 和传送环境变量
在 Amazon EC2 中并列运行其他应用程序组件,例如内存缓存服务
不登录应用程序服务器而访问日志文件
问:哪些云资源可支持 AWS Elastic Beanstalk 应用程序?
AWS Elastic Beanstalk 使用如下经过证实的 AWS 功能和服务来创建运行应用程序的环境:Amazon EC2、Amazon RDS、Elastic Load Balancing、Auto Scaling、Amazon S3 和 Amazon SNS。当前版本的 AWS Elastic Beanstalk 采用 Amazon Linux AMI 或 Windows Server 2012 R2 AMI。
问:AWS Elastic Beanstalk 支持哪种应用程序?
AWS Elastic Beanstalk 支持 Java、.NET、PHP、Node.js、Python、Ruby、Go 以及 Docker,是 Web 应用程序的理想之选。不过,鉴于 Elastic Beanstalk 为开放式架构,也可使用 Elastic Beanstalk 来部署非 Web 应用程序。预计将来还会支持其他应用程序类型和编程语言。请参阅支持的平台,了解更多信息。
问:AWS Elastic Beanstalk 采用哪种操作系统?
AWS Elastic Beanstalk 可在 Amazon Linux AMI 和 Windows Server AMI 中运行。这两种 AMI 均受 Amazon Web Services 支持并由其进行维护,旨在为 Amazon EC2 云计算提供稳定、安全和高性能的执行环境。