Articles of amazon web services

从公共Wifi连接到AWS EC2-VPC时很难

我有一个运行在AWS VPC(免费层)上的EC2实例,在其上运行一个网站。 我还使用RDS MySQL数据库实例来满足我的数据库需求,并设置了安全组以允许以下操作: EC2安全组 – 入站: 允许通过端口80访问所有HTTPstream量 允许访问来自2个IP地址的SSHstream量,我通常通过端口22来访问 允许通过端口3306访问所有MySQLstream量 EC2安全组 – 出站: 允许访问所有端口的所有stream量 RDS安全组 – 入站: 允许通过端口3306从我的EC2安全组访问MySQLstream量 RDS安全组 – 出站: 允许访问所有端口的所有stream量 通常,当我在安全组中提到的两个IP之外时,我在EC2实例的默认安全组中创build了一个新的入站规则,允许通过端口22从我当前所在的IP进行SSH访问。 今天,出于某种奇怪的原因,我无法通过SSH连接到EC2实例。 我正试图从我坐在咖啡厅的公共WiFi上。 试过各种方法 – PuTTY,Sublime SFTP,Filezilla。 纳达。 我很想知道2件事情,真的: 我究竟做错了什么? 如何避免这种持续处理AWS中的安全组? 我现在无法连接的原因是什么? 重要说明:EC2实例已启动,可以通过HTTP通过端口80访问 – 这意味着我可以访问我设置的站点的URL,而且所有内容都是hunky-dory。 清除caching – 仍然完美加载。

并行处理和磁盘IO性能。 更多核心或更多的服务器?

我在Ubuntu 12.04上的一个AWS EC2实例(c3.8xlarge)上有一个很大的分析工作。 目标是以100%的CPU加载服务器,运行尽可能多的内存允许的任务(不同的金额,但一般1-3gb每个工作)。 我最初的想法是提供一个大型实例,并运行32个同步处理作业 – 每个核心一个。 然而,这些工作会从文件(通常是同一个文件)中进行大量的读取,大量的gzipping / unzipping,以及基本上大量的磁盘重量的东西。 以前,当我在m3.xlarge节点(15GB内存,4核心)上运行一个testing时,我可以在4个同时作业中获得100%的CPU利用率。 然而,我最初的结果是使用60GB内存的32核心的情况更糟。 我怀疑服务器硬盘上的瓶颈,这是目前通用的SSD(不configurationIOPS)。 所以问题是 – 这里有什么更好的? 我是否尝试为磁盘提供更高的IOPS,或尝试某种RAID设置,以便大型服务器可以处理更多作业? 或者,我总是要通过在群集中启动几个较小的服务器来获得更好的整体吞吐量,而不会在一个磁盘上同时运行30多个作业的磁盘瓶颈? 这里不是HPC专家,所有的build议都表示感谢。

可以创buildvpc请求主机

我很聪明,从阅读的东西,我在做什么应该工作。 我有以下文件称为aws.yml — – hosts: localhost connection: local gather_facts: no vars: aws_region: us-east-1 tasks: – name: Main VPC ec2_vpc: state: present cidr_block: 10.5.0.0/16 resource_tags: {"environment": "prod"} region: "{{ aws_region }}" dns_hostnames: no dns_support: yes instance_tenancy: default internet_gateway: yes subnets: – cidr: 10.5.151.96/27 az: "{{ aws_region }}a" resource_tags: {"Name": "private"} – cidr: 10.5.151.128/27 az: "{{ aws_region […]

如何查找预留实例预留不包含哪些Amazon AWS EC2实例?

假设我有20个正在运行的EC2实例和10个活动的预留实例保留。 使用AWS控制台或AWS CLI ,确定哪个正在运行的EC2实例未被预留实例预留“覆盖”的最快方法是什么? 为了更加清晰地理解所需的结果,请考虑以下内容(在AWS控制台中我不知道这一点): 获取一个区域中所有running实例的列表。 您现在可以在AWS控制台中通过AWS CLI执行此操作。 获取同一区域中所有active预留实例预留的列表。 您现在可以在AWS控制台中通过AWS CLI执行此操作 。 交叉检查两个列表:每次在区域Y中看到大小为X的running实例,并且在区域Y中存在大小为X的预留实例保留时,请将其从running列表中删除。 修改后的running列表中的其余实例都是那些未被预留实例预留所覆盖的实例。 我正在寻找一种方法来获得#4,而不必手动将AWS控制台中可用的两个列表复制到Excel中,并手动将running实例关掉running因为我看到了相应的RI保留。 我可以编写一个使用CLI的脚本来完成这个任务,但是我认为可能有些东西已经存在,因为这是分析成本效率的一个显而易见的方法。

您可以在AWS弹性beanstalk中将环境variables重新映射/复制/别名为新的吗?

现在我的数据库variables被定义为RDS_* ,但我想重新映射到我的应用程序的约定。 这将有助于避免在我的项目中写入AWS特有的检测,这显然是可取的。

自动将EBS卷附加到竞价型实例

我需要一些跨终点的持久性存储。 我解决问题的方法是 编写一个启动脚本来附加和挂载持久性卷 快照此状态并注册一个私人AMI 启动基于专用AMI的竞价型实例 在这个论坛[ 1 ]的search表明这是正确的程序 我的启动脚本: #!/bin/sh echo "executing startup script" # attach the EBS volume to this machine aws ec2 attach-volume –volume-id vol-7bef1d96 –instance-id $(wget -q -O – http://169.254.169.254/latest/meta-data/instance-id ) –device /dev/xvdg sleep 10 # mount the attached EBS volume echo "mounting the attached volume" sudo mount /dev/xvdg1 /home/ubuntu/persistent/ #run script […]

在EB CLI上切换区域

我知道如何使用EB CLI切换区域的唯一方法是eb init 。 这感觉就像一个黑客,因为除了select我的地区,我不得不重新回答一些我已经回答的问题。 有没有办法在EB CLI上切换区域而不经过所有的eb init步骤?

面对我的服务器上的黑客活动

我最近将我的托pipe服务器切换到了AWS。 并在最初一切工作正常,但最近我面临的问题,我的服务器,它倒下了好几次。 我已经密切监视它,并知道CPU利用率达到100%几次,每次我需要重新启动我的实例。 所以我已经检查了访问日志和错误日志,似乎一些黑客活动正在我的服务器上进行。 请看下面我的错误日志文件的日志: [Wed Sep 23 14:25:56.081268 2015] [:error] [pid 18791] [client 193.0.***.***:59940] script '/var/www/html/includes/custom.php' not found or unable to stat, referer: -1' OR 2+20-20-1=0+0+0+1 or 'Q2fRfUkq'=' [Wed Sep 23 14:25:56.122526 2015] [:error] [pid 18780] [client 193.0.***.***:59939] script '/var/www/html/includes/custom.php' not found or unable to stat, referer: @@EKtcl [Wed Sep 23 14:25:56.365583 2015] [:error] […]

AWS VPC Endpoint SecurityGroupEgress规则

我正尝试使用AWS VPC端点来访问S3资源,但没有运气。 你能帮忙吗? 细节: 我有一个安全组内的EC2实例。 这是在一个VPC和一个networking端点和一个路由表项的0.0.0.0/0的子网内。 但是,我不希望这个特定的EC2实例能够与互联网交谈,但是我希望它能够与位于https://s3-eu-west-1.amazonaws.com的S3存储桶交谈/XXXXX/YYYYYY.sh 。 作为响应,我重载了securityGroup上的默认允许出口规则,因此通过向端口22添加出口规则来拒绝出站连接。亚马逊文档告诉我,本地(私有)AWS地址仍将被允许。 考虑到这一点,我添加了一个VPC端点到我的VPC中,并用pl-6da54004(com.amazonaws.eu-west-1.s3):: vpce-9f47a1f6更新了我的路由表。 这样做,我无法访问我的EC2实例内的我的S3资源。 我尝试和wget https://s3-eu-west-1.amazonaws.com/XXXXX/YYYYYY.sh没有运气。 你有什么想法是错的? 我的想法是: 我的ec2实例似乎将S3域parsing为54.231.130.244,但是这对每个实例都是不一样的。 我是否需要为S3 IP范围添加securityGroupEgress规则或路由? 如果是的话,范围是多less? 也许我应该通过不同的域名访问我的S3资源,而不是parsing为内部IP地址? 谢谢你,托比

ELB报告一些请求的backend_status_code为“0”

我在我的ELB日志中发现了一些我不能解释的奇怪条目。 他们都像这样(parsing成JSON): { "backend": "-", "backend_processing_time": "-1", "backend_status_code": 0, "client_ip": "XXX.XXX.XXX.XXX", "client_port": "52084", "elb": "ELB1-PROD", "elb_status_code": 504, "http_method": "POST", "http_version": "HTTP/1.1", "received_bytes": 16051, "request_processing_time": "-1", "request_uri": "https://example.com:443/example/", "response_processing_time": "-1", "sent_bytes": 0, "ssl_cipher": "ECDHE-RSA-AES128-GCM-SHA256", "ssl_protocol": "TLSv1.2", "timestamp": "2015-10-29T04:41:47.251500Z", "user_agent": "client/4.0" } 例如"backend_processing_time": "-1"或"backend_status_code": 0看起来真的很奇怪。 任何想法这可能意味着什么? 我怀疑后端服务器是过载的,但是当发生这些错误时,我们没有比平常更高的负载,并且错误都是由同一个客户端IP触发的。