Articles of amazon ec2

VPC中的EC2实例以及对Internet的访问

我正在玩AWS。 我创build了一个VPC(带有10.1.0.0./24networking)和两个附加的EC2实例。 一个EC2有10.1.0.4,第二个10.1.0.5。 我为VPC分配了一个Elastic IP,并将其关联到属于10.1.0.4 EC2实例的networking接口。 VPC是由我创build的一个自定义的。 对我来说最重要的事情之一是,公共知识产权必须保留(支付提供商要求这样做)。 问题是,从第一个EC2(10.1.0.4)我可以访问互联网,但从第二个(10.1.0.5),这是完全不可能的。 必须说,第一个EC2(.0.4)应该是WebServer,而第二个(.0.5)是数据库服务器。 我究竟做错了什么? 上面的configuration是否适合我想实现的目标? 提前感谢您的任何提示。 彼得·

HAProxyvalidation的httpchk(健康检查)

我在EC2上使用HAProxy并使用httpchkpipe理节点可用性。 我曾经使用一个伪唯一path作为健康检查路线,以确保只有我的服务器响应健康检查。 今天早些时候,我有一个EC2服务器掉了,在haproxyconfiguration自动重新生成(控制器问题)之前,亚马逊已经把IP重新分配给谁的每一个200的请求(蜜jar?),我的HAProxy主机然后拉回服务器进入轮换,并开始分发我的一些stream量,直到控制器恢复,并从列表中删除IP。 TLDR; 有没有办法将服务器身份validation方法添加到HAProxy的httpchk?

EC2磁盘达到100%实用程序,但重新启动后罚款

我们一直在Amazon EC2上运行一些生产服务,主要使用t1.large和t1.xlarge实例(非EBS)。 每隔一个附加(临时磁盘),经常会进入100%util状态(由iostat -xtc报告)。 当磁盘进入这种状态时,它基本上是完全不可用的。 重新启动解决了这个问题,看起来没有任何损坏。 发生显然是随机的,每隔几周就会发生一次。 我不确定是否有任何软件相关,但是我们正在运行最新的Ubuntu 10.04(Lucid)。 这些临时磁盘目前在lvm(RAID0)下运行。 以前我们使用mdadm和lvm。 有没有其他人看过这种行为之前(不知道它是特定于EC2)和任何想法如何避免它或纠正它,而无需重新启动?

AWS Elastic Beanstalk Swap Environment Url是否将环境交换为git push?

我已经阅读了关于aws的零停机时间的文档,但似乎无法理解在这种情况下会发生什么? 我有一个在生产环境中运行的“红色” 我将环境复制为“蓝色” 我在我的应用程序中使用eb init来推送到称为蓝色的新环境。 我的新版本成功运行在蓝色环境中 我交换环境url(我没有这样做,害怕,我猜) 一段时间后,我的stream量被指示为蓝色,红色将显示零stream量监控。 现在的问题是, 如果我从命令行使用git aws.push ,它会推到红色还是蓝色? 如果推到红色,我有一个零宕机的过程。 如果它变成蓝色,这是否意味着我必须再次启动init? 如果我必须再次启动它意味着 破坏红色(旧)环境 将蓝色复制为红色 eb init再次用于红色环境 这似乎并不正确。 我可能会错过一些东西。 什么是正确的方法来做ebs零宕机? 我读了很多,但似乎不能得到这些观点。 谢谢!

带有PM2的Node.js服务器崩溃,错误ENOMEM – 但没有内存泄漏

我有一个EC2实例运行node.js服务器(基于Express)。 在新的环境中部署后,我的服务几乎立即崩溃, spawn ENOMEM像这样的spawn ENOMEM错误: 服务器日志不表示不正常的活动。 来自其他环境的差异仅仅是configurationstring,如DB主机名。 我已经开始在服务器上的所有可能的监控,但没有显示 没有更高的进程或机器的内存,CPU / RAM使用率没有高峰。 为了确定这不是一个内存问题,我尝试将实例从t2.micro放大到t2.large(2GB-> 8GB RAM),尽pipe在不同的环境中对微处理器执行相同的过程。 尽pipe如此,这个过程还是以几分钟的时间崩溃了。 我坚信这不是内存泄漏,但可能是某种内存分配问题。 有没有人遇到这样的问题? 任何forms的帮助表示赞赏。

通过ec2(请求密码)运行systemd作为默认用户的服务

我正在尝试使用以下Ansible脚本(playbook的一部分)来通过systemd为EC2(微)实例上的rails应用程序运行独angular兽: — – name: restart unicorn command: psql -h {{ db_host }} -U {{ db_user }} -d {{ db }} -c "SELECT true FROM pg_tables WHERE tablename = 'order_cycles';" register: table_exists ignore_errors: yes sudo: yes sudo_user: "{{ unicorn_user }}" notify: restart unicorn step 2 #TODO make sure both of these things run as one handler. […]

Apapche + php-fpm + mysql在function强大的服务器上速度太慢

我正在尝试加载我的团队使用jmeter在AWS ubuntu 14.04上开发和部署的LAMP应用程序。 我们使用AWS CDN来提供静态文件,mysql和apache在同一个主机上。 当只有一个用户在做东西时,响应时间是正常的,根据页面在2到5秒之间。 我的目标是在同一时间使500个连接的用户同时做出回应。 我从less数用户开始,在一个t2.small(1vCPU,2Gb RAM)上使用mod_php和prefork模块,并且只有40个连接用户满意。 一旦有100个,它的响应时间+ 20s就会非常慢。 在尝试了一些SO资源之后,我尝试了使用php-fpm和event module。 performance较好但仍然缓慢; + 15s的任何单个页面。 我决定将服务器升级到M4.2xlarge(8vCPU,32 Gb RAM)。 对于100个连接的用户来说,它performance正常,我很满意,但这是一个昂贵的,我想用最适合的服务器规格来find更好的性能。 无论如何,我试图testing这个M4.2xlarge与330连接用户做东西一致,它变得太慢,每页+ 15~ + 20s。 一直试图调整事件configuration和fpm过程没有运气(在大多数情况下,我有+90℅cpu,但没有足够的内存不被使用,这就是为什么我在那里我们有一个限制)。 我觉得我很亲密,但我做不到。 我会更新我的问题与任何文件,日志或ouptut你会问。

AWS Amazon EC2 – 使用PEM密钥对的非root用户的无密码SSHlogin

我们已经在AWS上运行了两个集群(HAProxy / Solr,PGPool / PostgreSQL),并且我们已经设置了脚本来允许新的从属实例被自动包含到集群中,通过更新他们的IP来configurationS3上的configuration文件,然后通过SSH连接到主实例来踢他们下载修改后的configuration并重新启动服务。 这一切都很好,但在testing中,我们使用我们的主要pem为SSH,这意味着它需要存储在一个实例。 不好。 我想要一个可以使用AWS密钥对的非root用户,他们将拥有sudo访问权限来运行download-config-and-restart脚本,但是没有别的。 rbash似乎是要走的路,但我知道这可能是不安全的,除非正确设置。 那么这种方法有什么安全漏洞呢? 为user.pem创build的新AWS密钥对(不是真的叫'user') 实例上的新用户:用户 用户的公钥是〜user / .ssh / authorized_keys(通过用user.pem创build新的实例,并从/root/.ssh/authorized_keys复制) 用户的私钥在〜user / .ssh / user.pem中 'user'具有/ home / user / bin / rbash的loginshell 〜user / bin /包含到/ bin / rbash和/ usr / bin / sudo的符号链接 / etc / sudoers有条目“user ALL =(root)NOPASSWD:[脚本path] 〜user / .bashrc将PATH设置为/ home / user / […]

Apache不会立即注意到文档根目录中的更改

我们使用capistrano进行网站部署,我们的Apache文档根目录是特定代码版本的符号链接。 部署过程将符号链接从旧版本切换到新版本,作为部署的最后一步。 我们正在将我们的Web服务器从运行RHEL 5.6的真实服务器迁移到运行Ubuntu 11.10的Amazon EC2虚拟机,并且新服务器遇到了一个问题:Apache在切换符号链接时没有立即注意到文档根目录的变化。 这可能需要一秒左右( 我想我已经看了几分钟 )。 这有点像Apachecaching了符号链接的物理path一段时间。 有谁知道一些Apache设置,我可以看看它来“扫描”更快的服务文件的变化。 思考: 我读了虚拟机上的磁盘速度慢得多(因为它们是networking连接存储)。 也许文件系统caching不知何故工作呢? 如果是的话,有什么可以做的吗? 该网站运行PHP代码。 也许RHEL和Ubuntu之间有一些PHPconfiguration的区别? 我检查了realpath_cache_ttl但两台服务器都注释掉了: 例如 ; Duration of time, in seconds for which to cache realpath information for a given ; file or directory. For systems with rarely changing files, consider increasing this ; value. ; http://www.php.net/manual/en/ini.core.php#ini.realpath-cache-ttl ;realpath_cache_ttl = 120 我们确实使用APC操作码caching但不认为这是由于实验的问题。 […]

自定义Centos5 AMI内核恐慌

我试图在亚马逊上构build一个Custom Centos 5 AMI,并在启动时引起内核恐慌。 我花了差不多一个星期的时间,我无法弄清楚什么是错的。 我遵循以下配方: http : //blog.maclawran.ca/gotchas-porting-centos-58-from-virtualbox-to 我也尝试了其他类似的食谱在互联网上有相同的结果。 我从上面的配方中唯一改变的是: 使用最新的Centos ISO / repos(5.9) 有一个单独的分区(/ boot inside /) 根分区使用ext4而不是ext3 步骤非常多,如下所示: 在Virtual Box上安装Centos 将.vdi磁盘转换为.img 将磁盘映像上传到AWS 将图像复制到卷 对initrd,fstab,grub.conf进行一些更改 快照卷 创buildAMI 启动新的实例 EC2系统日志 Xen Minimal OS! start_info: 0xac4000(VA) nr_pages: 0x26700 shared_inf: 0xbfa11000(MA) pt_base: 0xac7000(VA) nr_pt_frames: 0x9 mfn_list: 0x990000(VA) mod_start: 0x0(VA) mod_len: 0 flags: 0x0 cmd_line: root=/dev/sda1 ro […]