gpt4 book ai didi

amazon-web-services - 如何使用 PHP 和 MySQL 为 Amazon EC2 网站设置基本的 Auto Scaling

转载 作者:行者123 更新时间:2023-12-04 08:18:06 25 4
gpt4 key购买 nike

我有一个完全存储在 Amazon EC2 微型实例上的基本 PHP/MySQL 网站。流量将暂时增加,我想实现基本的自动缩放,主要是为了给我更多的 CPU 能力,因为这似乎是瓶颈。所以我知道我的主要限制是:

  • 保留 MySQL 数据库数据
  • 保留网站文件(位于/var/www/* )

  • 谁能指出最好的方法来做到这一点?

    P.S. Because my server setup is not that complex, I am willing to rebuild / re-upload all of it if I have to.. I just need to get the Auto Scaling in place correctly.

    最佳答案

    我遇到了类似的问题,这就是我所做的。

    准备应用服务器以进行自动扩展(能够同时在多个实例上运行):

  • 我将我的 SQL 数据库(MySQL 和 MSSQL)移到了 RDS;
  • 我修改了我的程序,所以它不会写入本地
    卷/驱动器,而是将所有文件放在 S3 存储桶中;

  • 我测试了这个实例以确保我的应用服务器与我的数据库和其他写入存储完全分开。一切就绪后:
  • 将我的所有更改推送到存储库;
  • 安排了一个将在我的服务器启动时(以及每 2 小时后)运行的任务,该任务将执行 git pull origin master来自存储库(以确保新实例上的代码始终是最新的);
  • 创建了此实例的自定义 AMI;
  • 创建了一个负载均衡器;
  • 创建了一个使用我创建的 AMI 的启动配置/自动缩放器组;

  • 现在自动缩放器已全部设置:
  • 我更改了指向我的站点的 DNS 条目以使用 DNS CNAME
    指向负载均衡器端点(DNS 名称)而不是
    我最初关联到我的 EC2 实例的弹性 IP(从那里我们
    创建了 AMI 并进行了测试);

  • Take note: DON'T use the static IP address assigned to your Load Balancer because they will change very frequently. You really need to setup a CNAME pointing to the Load-Balancer end-point.



    我需要做的一些维护:
  • 我将存储库的副本克隆到本地副本,在其中进行测试和更新。当我需要更改生产服务器上的任何内容时,我只需将我的更改推送到存储库,我的生产服务器每 2 小时就会提取一次。
  • 当我上次创建 AMI 时对我的代码进行了太多更新时,我重新创建了 AMI 以减少从存储库中提取所需的时间。

  • 顺便说一句,我正在使用 T1.micro实例。这就是首先使用自动缩放的整个想法。我们不想一直在我们的应用程序处于闲置状态时花费在中型服务器上。

    关于amazon-web-services - 如何使用 PHP 和 MySQL 为 Amazon EC2 网站设置基本的 Auto Scaling,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21049637/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com