我在美国东部(弗吉尼亚州)地区的一个Amazon EC2实例上托pipe了基于ExpressionEngine的网站。 我使用Ubuntu。 该网站允许成员发布他们的内容,并显示给其他成员和未login的用户。 目标:我需要开始在全球范围内服务于同一个网站,同样快到香港,纽约和洛杉矶。 我考虑了两个解决scheme 1.为三个区域设置三个独立的EC2实例:弗吉尼亚州,俄勒冈州和新加坡。 使用Amazon Rot53地理位置根据浏览器的IP地址将stream量定向到实例。 临:该网站将加载该地区的快速。 Contra:这些将基本上是三个独立的网站。 除非我错了? 在距离所有三个位置(Ireliand)相同的区域设置一个实例,并将服务器提升到可用的最高性能。 亲:这将是所有地区的同一网站。 Contra:使其足够快,花费很多。 我的挑战: a)我不知道如何在多个Ubuntu实例之间实时同步服务器设置,数据库和内容。 如果有知识的人可以向我解释如何做到这一点,我将不胜感激。 b)我不完全熟悉所有Amazon AWS资源。 AWS是否有一个内置的方法,使我能够在所有三个选定的位置同样快速地为全球范围内的单个基于PHP / MySQL的会员网站提供服务?
在AWS中,我们的自动扩展组正在不同的可用区域中启动新的实例(以获得高可用性),而这些Web实例当然需要在端口3306上访问数据库(RDS)服务。 现在,我的RDS安全组应该允许哪些IP地址用于端口3306? 由于每个新启动的实例每次都有不同的IP地址,那么我们如何将它们添加到安全组? 顺便说一句:这不仅仅是RDS安全组的问题,而是所有安全组的问题,因为我不能限制它们。
我有6个WordPress网站运行在单个EC2实例上。 所有的网站都连接到同一RDS实例中的数据库。 今天早些时候,最大的网站stream量达到峰值,RDS实例进入瓶颈 – 一小时内CPU利用率为100%。 它影响了我所有的网站,因为它们都是永久加载的。 为了防止这个问题再次发生,下面哪一个最重要,以便我首先投入时间和精力? (以后我会努力,现在只需要优先考虑) 改善所有网站的caching 微调数据库服务器 微调我的Apache服务器 我的网站会对用户体验产生什么影响? 一些快速search显示,我应该限制并发连接数到我的networking服务器,但不会阻止用户访问我的网站? 更多背景: 我最大的网站每月访问量为14万,页面浏览量为66万。 其他5个网站加起来应该比这less得多。 我正在使用一个大的EC2实例作为Web服务器 我正在使用一个中等RDS实例作为数据库服务器 我已经做了什么: 使用W3总caching插件为大多数网站caching,尤其是最大的(我几乎可以做任何其他的caching方面,我可以做的最大的网站) 我是在浪费资源,还是根本没有足够的资源用于我的网站 – 或者说,我怎样才能自己回答这个问题呢?
我有几个网站stream量非常高 – 所有托pipe在Heroku上,所有这些网站都访问一个db.m1.large mySQL Amazon RDS实例 – 并且希望知道升级到具有更高处理能力的实例是否会带来性能优势或记忆。 下面的屏幕截图显示了这些指标的样子。 这是分析问题的正确方法吗?如果是这样,是否表明有需要升级?
我有我的客户端应用程序调用我的服务器上的一个PHP脚本logging一些信息到远程MySQL服务器。 脚本工作正常,但偶尔(只偶尔)脚本无法连接。 当连接失败时,我设置了脚本来向我发送错误邮件,并从mysql_error()中得到以下错误: Unknown MySQL server host '[myDBhostaddress]' (2) 当然,[myDBhostaddress]是我的db主机的正确地址。 对于大多数时间脚本工作,因此我不认为地址或login凭据是错误的。 我试图重现这个问题,但没有运气。 我可以从我的本地机器(我的服务器)login到我的mysql服务器。 从命令行连接工程,testingPHP脚本工程,手动调用发送给我错误邮件的脚本也工作! 现在我对这个问题感到困惑,因为我不知道如何处理这个问题。 我甚至不知道问题的原因。 会不会是MySQL服务器重载? 这是入侵者的攻击吗? 如果有帮助,我的PHP脚本生活在亚马逊的EC2和亚马逊的RDS的MySQL服务器。
我们已经在AWS上创build了一个名为“lolbob”的MySQL RDS实例,并使用在实例创build期间创build的用户(也称为“lolbob”)通过端口3306转储数据,但由于我们有一些存储过程需要SUPER权限在MySQL中。 在search了一下之后,我们得出结论:这个已知问题(TM)的推荐解决scheme是 将log_bin_trust_function_creators参数添加到用于实例的数据库参数组 ,并应用/重新引导实例。 使用SSHlogin到实例本身,并使用rdsadmin用户的命令行中的mysql客户端程序将SUPER权限授予默认实例db用户。 有一个特殊的rdsadmin用户,因为安全原因,所有的权限只能从本地主机访问,否则我们可以使用它。 现在我通常是命令行的粉丝,但这应该是2015年的PaaS云吗? 所以问题是(你可能已经猜到了),我们怎么才能让我们的新实例的默认用户在默认情况下拥有MySQL的SUPER权限? 如果这是不可能的,下一个最好的事情是什么? 例如,有可能以某种方式从AWS控制台更改该用户的设置? 除了必须使用SSHlogin并使用命令行的mysql客户端程序之外的任何东西!
我正在考虑更改我们的RDS实例当前所在的子网。 子网组目前对于a&c区域都有/20 。 我为&c创build了新的/22子网,并将它们关联到子网组,删除了旧networking。 我一直在对rds dns名称进行dig ,并且正在返回的IP仍然来自旧/20子网中的一个。 我正在寻找如何解决这个问题的build议,所以我可以删除旧的eni和子网。 我试过打开/closures“multi-az”以及强制删除旧的(和正在使用的)eni(不会分离)。 快照数据库和恢复使用新的子网组(即停机时间)是否还有什么我可以做的?
我正在尝试创build一个可以限制用户访问不同地区RDS的策略。 但是,我想给他们pipe理员访问只有一个地区,即ap-southeast-1。 我制定了一些政策,但是他们不是为新加坡地区,而是在美东地区工作。 为什么这在东方而不是在新加坡? 政策示例: { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt———-", "Effect": "Allow", "Action": [ "rds:*" ], "Condition": { "StringEquals": { "ec2:Region": "ap-southeast-1" } }, "Resource": [ "*" ] } ] } { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt———-", "Action": [ "rds:*", "cloudwatch:DescribeAlarms", "cloudwatch:GetMetricStatistics", "ec2:DescribeAccountAttributes", "ec2:DescribeAvailabilityZones", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "sns:ListSubscriptions", "sns:ListTopics", "logs:DescribeLogStreams", […]
当我尝试从我的vps连接到RDS时,它说连接被拒绝。 当我尝试从本地或其他VPS连接它,它工作正常。 我发现它一定是我的vps上的防火墙问题。 sudo iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 我运行iptables -L时得到这个输出。 这个命令netstat -ntlp | grep 3306 netstat -ntlp | grep 3306给 – tcp6 0 0 :::3306 :::* LISTEN 这里出了什么问题? 编辑:正如安德烈所说,我试图telnet。 这是我得到的输出。 […]
我现在有一个AWS RDS SQL Server实例,使用它的应用程序在一天的特定时段内可以看到它的用途。 (9-10和6-7),在这些时候,我们看到数据库performance的巨大放缓。 现在我们显然可以扩大支持EC2的实例,但是这个时间框架看起来像是浪费了大量的资源。 有什么办法可以有一个更灵活的解决scheme? IE像弹性beanstalk允许我们在高峰时间添加额外的“节点”?