我最近在 Amazon EC2 上设置了一个微实例,我想知道跨实例共享数据库的过程是怎样的。最简单的解决方案是让一个实例专门运行数据库,然后让所有其他实例直接与它通信吗?
此外,我在多个网站上看到,EC2 实例不应被视为“可靠”。考虑到这一点,我是否必须为我的数据库设置多个故障转移实例?
谢谢
答案1
这是“视情况而定”的问题之一;您当然可以让多个 EC2 实例访问单个数据库,并通过 AWS 安全组控制访问。如果数据库服务器的资源需求足够小,您可以将数据库服务器与访问它的客户端之一放在一起。
如果数据库的正常运行时间要求足够严格,则应考虑使用单独的实例进行故障转移。这完全取决于您能承受多少停机时间。一定要使用 EBS 卷来存储数据库文件,因为即使运行数据库服务器的 EC2 实例发生故障,这些文件仍会保留下来。
使用 EC2 或任何其他按需基础设施服务的一般原则是,您应该始终在设计实例时假设它们会在某个时候意外停机。同样,您想要达到何种程度取决于您的正常运行时间要求。