Articles of amazon web services

ECS停止任务不释放端口

我有一个ELB的ECS集群。 昨晚我看到一个任务卡在重启循环。 从服务事件日志,它说: “服务xxxxx无法放置任务,因为没有容器实例满足其所有要求。最接近匹配的容器实例xxxxxxxxxxxxxx已经在使用您的任务所需的端口。 但是,我已经检查过,所有这些任务都已经死了,当时什么都不该用。 更新服务无助于创build新的任务定义,然后更新帮助。 终止实例,并允许ELB重新启动它有帮助。 任何想法为什么服务不能保证端口的任务?

使用AWS Elastic Transcoder(用于WAV到AAC)与Lambda和ffmpeg的优点是什么?

我使用Elastic Transcoder与Lambda进行了WAV-AAC转换之间的价格比较。 我不得不说,AWS ET比Lambda更昂贵。 使用ET转码的9分钟audio文件:$ 0.04在1536MB Lambda实例(33秒运行时,不包括免费层)上转码的同一文件:请求$ 0.0000002,执行时间$ 0.000825165。 当然,Lambda转码花费了33秒,ET上的相同工作大概占了三分之一左右。 但是ET的成本对我来说没有意义。 我在这里错过了什么吗? 我应该补充说,这些转码是用户通过上传(类似于SoundCloud将上传的audio和转码转换为MP3)的用户调用,我不发送批量作业。 所以也许E​​T不是我的用例的正确申请。

设置phpmyadmin只连接到远程服务器

我一直坚持这一点,希望你能提供一些洞察我做错了什么。 我有一个新鲜的亚马逊EC2(Ubuntu 16.04)实例连接到RDS(MySQL)数据库,并试图安装phpMyAdmin在亚马逊EC2实例,以pipe理RDS数据库。 我遇到的麻烦是如何configurationphpmyadmin,以便它不会安装本地数据库,而只是连接到RDS实例。 (当问我是否想让phpmyadmin为我设置一个数据库的时候,我select了否。) 第一次尝试: 我已经尝试将以下内容添加到我的/etc/phpmyadmin/config.header.inc.php中: $i++; $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Server parameters */ $cfg['Servers'][$i]['host'] = '*************'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysql if your server does not have mysqli */ $cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['AllowNoPassword'] = false; *************是我的RDS实例的作者端点。 但是,这样做只会产生以下不可用的login页面: Borkedlogin页面 第二次尝试: 我还尝试将/etc/phpmyadmin/config-db.php中的$dbserver更改为我的RDS实例的写入程序端点,这会在login页面上产生以下警告: 警告1: Notice in ./index.php#603 Use of undefined constant PMA_DRIZZLE […]

复制桶的s3内容,包括所有版本

我有几个S3存储桶,我想把它们交给另一个组织,因为我们正在将一个现有的托pipe客户端交给他们。 在查看文档之后,如果我不再想要为存储桶负责,似乎最简单的select是将新存储桶的内容复制到由新组织控制的新存储桶中,并使任何现有应用程序写入文件从现在起到新的水桶。 斗不是很大: aws s3 ls –human-readable –recursive –summarize s3://some-client-bucket # (snip… lots of files listed, all less than 10mb) # Total Objects: 22764 # Total Size: 2.4 GiB 但是,有些文件是版本化的,我每天都会看到一些去年的文件快照,我也希望能够跨越这些文件。 有没有一个简单的方法来做到这一点? 我知道如何将一个存储桶的当前内容复制到由另一个组织控制的新存储内容,然后授予我访问权限,如下所示: aws s3 sync s3://some-client-bucket s3://new-client-bucket –recursive 但是,我不认为这也会跨越这些版本,而我一直依靠S3的每个文件版本,而不是自己的时间戳文件。 我是否需要偷工减料? 下载每个版本化的文件 用时间戳重命名 将其上传到新的存储桶 或者是S3有一些漂亮的额外function为我自动做到这一点?

使用跨账户访问AWS控制台的第三方?

有两个公司:客户和承包商。 两个都有AWS账户。 我正在寻找简单但安全的方式,让承包商团队的工作人员可以访问客户端的AWS 控制台 。 是的,我在承包商方面。 到目前为止我能记得的方式: 在客户的账户中创build一个用户并提供login/密码。 据我所知这不是build议。 另外,承包商有很多客户来pipe理所有的凭证,而且在工作date间很不舒服地切换账户(主要原因)。 联邦。 可能的错误:客户端需要添加联邦提供者,如果提供者是承包商的AD,那么对于我来说,看起来并不比创build账户更好。 使用第三方(第四方)身份提供商(谷歌)对我来说不好看,因为我的偏执狂抗议公开承包商的证书,仅供内部使用公共类BigBrother服务。 也许我错了,或者在这里错过了一些东西,很高兴听到你的有根据的意见。 使用跨账户访问(推荐)。 第三个看起来是最正确的,但问题是:到目前为止,我找不到一个现成的方式来这样做。 我的发现: 如何使用外部ID , 提供对AWS账户的访问以及如何启用跨账户访问控制台 。 它们都不是现成的,而是让你知道在哪里继续前进。 另外我知道Rackspace有自己的解决scheme,但无法find代码。 所以我会重复一遍:我正在寻找简单而安全的方式,让承包商团队的工作人员能够访问客户端的AWS控制台。 我会很乐意省下一些努力,而不是重新发明自行车。 你知道/有这样的解决scheme吗?

AWS EC2 Storage Gateway – KMS

我已经部署了一个EC2 Storage Gateway(卷存储模式),并使用AWS KMS密钥对所有EBS卷进行了encryption,这一切都很好。 我没有想到的是,一旦你创build了卷,它隐藏了后端S3存储桶,所以你不能分配KMS密钥。 有谁知道,如果你可以指定一个关键的S3桶使用?

正确的地方宣传OpenVPN路由到EC2实例?

build立 我有一个OpenVPN服务器在AWS中运行良好。 我的团队中的每个人都可以使用它来访问AWS中的任何服务器。 需要 现在我有一个新的需要。 现在,AWS中的服务器需要能够通过VPN连接到一台(但一切正常)。 从VPN服务器本身,我可以到达机器(这是一个路由器)和它可以在networking上看到的所有机器。 但是,AWS中的其他服务器都不可以。 问题 哪里是正确的地方广告(数据中心的机器)请求10.10.10.0/16(远程VPN连接站点)的请求应通过我的VPN服务器路由? 我使用VPN服务器地址上的哪个接口? 细节 AWS VPC CIDR:172.31.0.0/16 openvpn.conf: push "route 172.31.0.0 255.255.0.0" OpenVPN服务器IP:172.31.17.151 OpenVPN服务器客户端CIDR:172.141.0.0/17 openvpn.conf: server 172.141.0.0 255.255.128.0 客户:10.10.10.1 openvpn.conf: route 10.10.10.0 255.255.255.0 openvpn.conf: push "route 10.10.10.0 255.255.255.0" ccd / commonname: ifconfig-push 10.10.10.1 10.10.10.2 ccd / commonname: iroute 10.10.10.0 255.255.255.0 客户端:10.10.10.101 OpenVPN的ifconfig : eth0 Link encap:Ethernet HWaddr […]

AWS EC2实例需要多个ENI吗?

AWS允许您将多个弹性networking接口(ENI)连接到EC2实例。 除了“使它看起来像一个本地服务器”,是否有任何情况下,实际上需要多个ENI? 我已经考虑过在内部环境中要做这些事情的原因,但是这些原因似乎都不适用于AWS: 链路聚合 链接冗余 独立的pipe理界面 在线IDS / IPS 在线防火墙 AWS隐含的路由器总是“坐在”每个ENI和其他所有东西之间,所以不可能再放置另一个实例(运行,比如嗅探器)。 亚马逊自己的文档甚至不清楚为什么你需要一个实例上的多个ENI。 它只是说多个接口是“有用的,当你想要:” 创build一个pipe理networking。 在您的VPC中使用networking和安全设备。 在不同的子网上创build具有工作负载/angular色的双宿主实例。 创build一个低预算,高可用性的解决scheme。 但是这并不能解释为什么ENI是必需的,甚至是用于这些用例的理想select。 (显然,在不同子网上的双宿主实例需要多个ENI,但是这并不能解释为什么你首先需要一个双宿主实例)。 我唯一可以想到的用例是一个运行容器的实例(例如Docker),并且您想要将各个容器映射到不同子网中的主机IP地址。 什么是多个ENI的使用情况,如果有的话?

如何解决通过控制台检索到的EC2系统日志的长度限制?

我正在运行ami-ccf405a5,这是一个从AWS控制台的东西微型实例中的alestic.com的Ubuntu 10.10 Maverick EBS启动。 我使用用户数据字段来加载脚本,其中的开始部分在下面,更新和安装软件包,创build新用户并设置其环境。 #!/bin/bash set -e -x export DEBIAN_FRONTEND=noninteractive function die(){ echo -e "$@" >> /dev/console exit 1} aptitude -yq update && aptitude -yq safe-upgrade aptitude -yq install irb libopenssl-ruby libreadline-ruby rdoc ri ruby rake ruby-dev rubygems 我发现AWS控制台上的“ec2-get-console-output INSTANCEID”和“获取系统日志”只会输出846行或68k的日志,并在最后一个aptitude语句的中间切断。 有没有办法获得更多的系统日志来跟踪我的用户数据脚本的进度?

如何selectAmazon EC2内核?

当启动一个实例时,我得到了这个最神秘的列表: 关于哪个内核做什么,似乎在Amazon上绝对没有文档。 他们很好地解释了这些内核的用途 ,但是不知道这些数字是什么意思,内核似乎是完全无用的。 我在哪里可以找出给定内核的含义,或给定操作系统的最新内核?