我的应用程序部署在 AWS 上的 ElasticBeanStalk 上。它正在访问需要在实例上安装 SSL 证书的 API。每次实例重建时,我都必须手动运行 keytool 命令来导入证书文件。每当 EBS 重建 EC2 实例时,已安装的证书都会丢失,我必须再次传输证书文件并再次安装证书。
我认为 ebextensions 可以解决这个问题,但我无法理解使用它的确切方法。
请在这里帮助我一些方向。
我的应用程序部署在 AWS 上的 ElasticBeanStalk 上。它正在访问需要在实例上安装 SSL 证书的 API。每次实例重建时,我都必须手动运行 keytool 命令来导入证书文件。每当 EBS 重建 EC2 实例时,已安装的证书都会丢失,我必须再次传输证书文件并再次安装证书。
我认为 ebextensions 可以解决这个问题,但我无法理解使用它的确切方法。
请在这里帮助我一些方向。
首先,您需要创建所需的文件,然后将其放入 S3 存储桶中。我建议您对其进行加密,并且出于安全目的,该文件没有公共权限。从那里,在您的应用程序根目录中,您将在应用程序源根目录中创建一个.ebextensions
文件夹。在那里,您将创建一个任意.config
命名的文件。
该文件需要说明从哪里获取您需要的证书以及放置它的位置。AWS 文档详细说明了如何从 S3 中获取文件并将其放在某处。这里描述了它所讨论的实例配置文件。这基本上是一种允许您的实例与 S3 通信而无需将凭据存储在某个文件中的方法。您需要确保它至少对存储桶具有读取权限才能提取文件。
一旦这一切都完成了,beantalk 应该在实例上拥有文件。另一种选择是使用文件系统上已有的密钥生成自定义 AMI 。请注意它在文档中提到的性能注意事项。