Articles of 亚马逊 EC2

关于亚马逊EC2和S3的混淆

计划在Amazon Web Services中托pipe一个带有MySQL DB的PHP网站,我应该select哪些AWS组件? 该网站只是一个具有自定义CMS的dynamic网站,但预计将有大量数据上传到CMS。 我正在考虑使用Amazon EC2,并使用以下设置: 具有1024GB x 2磁性EBS卷的t2.medium Linux 数据传输input和输出:200和300 GB /月 但是我从其他人那里听说,我可以使用Amazon S3托pipe网站,并使用以下设置: 存储:3000GB PUT / COPY / POST / LIST请求:20000 GET和其他请求:10000 数据传输input和输出:200和300 GB /月 CloudFront月度量:1000 GB /月(平均对象大小30KB) 有什么区别? 我应该select哪一个?

在jenkins或S3上encryption并在EC2实例上解密

我想使用AWS CodeDeploy在应用程序上自动部署新代码。 我正在使用AWS来运行我的应用程序。 我想要做的是以下几点: 在jenkins中构build应用程序(也在AWS上运行) 在S3上发送已编译的应用程序,以及由CodeDeploy挂钩(AfterInstall)自动设置的一些环境variables CodeDeploy将负责其余的步骤 我想知道的是,在S3上encryption这些env vars(它们是在一个文本文件中)并在实例内解密它们时,是否有AWS实践? 如果没有,你有什么指示我怎么能达到我想要的(在S3上这些环境的一些安全性)? PS在S3中上传这些环境variables并设置每个部署的原因是因为它们往往会改变。 我不想在形象中烤他们。 此外,远离环境variables是不可取的。

EC2实例停止后重启

我有一个EC2实例,我试图停止Running instances -> Actions -> Instance State -> Stop但几分钟后,它会自动启动。 是否有这种行为的原因?

Amazon ECS负载均衡器设置为端口9090不起作用

我在Amazon Web Services中创build了经典的负载平衡器,并且已将侦听器端口设置为9090.并且我已将负载平衡器与具有2个EC2实例的集群关联。 我已经为9090的实例给出了入站规则。 为了在集群中创build服务,我创build了如下的任务定义。 { "family": “my-spring-task“, "containerDefinitions": [{ "image": “my-docker-group/my-spring-app“, "name": "my-spring-app", "cpu": 10, "memory": 256, "essential": true, "portMappings": [{ "containerPort": 9090, "hostPort": 9090 }] }] } 然后我创build这个服务,给出上面的任务定义。 aws ecs register-task-definition –cli-input-json file://service90-task.json aws ecs create-service –cluster service90-cluster –service-name service90-service –load-balancers loadBalancerName=service90-load-balancer,containerName=my-spring-app,containerPort=9090 –task-definition service90-task –role ecs-service-role –desired-count 0 我的计划是运行一个Spring引导项目,它是用gradle和docker插件构build的。 我有运行端口8080的项目。它正在按预期工作。 但是当我尝试在9090端口上运行服务时,由于运行状况检查失败而无法运行。 我需要build议如何使端口9090或任何端口号。

AWS ELB是否有限制?

我正在运行一个OpsWorks堆栈: 跨4个可用区域运行10个c3.2xlarge实例。 CPU在每个实例上从不超过5%。 每个实例都通过一个memcached层连接到一个db.r3.8xlarge(32 vCPU,244 GiB RAM)RDS实例。 数据库的CPU在15-20%之间保持良好。 每个EC2实例与RDS设置为250个连接(共2,500个连接)。 每个实例的记忆都在逐渐增加,但我认为这是一个单独的问题。 load_1 , load_5 , load_10指标都是load_10 。 连接的活跃并发用户(基于3分钟的窗口)在2500-3000个连接之间卡住。 我们尝试增加RDS实例的大小,虽然它确实阻止了我们的RDS,但我们试图弄清楚为什么连接连接似乎是挂钩的。 ELB中是否有一些限制连接的设置? 通话延迟非常高。 我只是想找出一些可能会扼杀这个,因为所有的硬件似乎运行良好。

nginx php-fpm:连接上游时,权限被拒绝

安装nginx和php-fpm之后,甚至在设置所有必要的权限之后,下面的错误就不会发生: [error] 2443#0: *2 connect() to unix:/run/php-fpm/php-fpm.pid failed (111: Connection refused) while connecting to upstream 这是我所有的configuration: /etc/php-fpm.d/www.conf [www] user = nginx group = nginx listen = /run/php-fpm/php-fpm.pid listen.owner = nginx listen.group = nginx listen.mode = 0660 listen.allowed_clients = 127.0.0.1 pm = dynamic pm.max_children = 50 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 35 slowlog […]

AWS Horizo​​ntaly缩放应用程序

我有一个NodeJS程序,有50个工人准备处理请求。 该脚本保持与分发请求的服务的连接。 我想自动调整这个脚本,这样当有45名工作人员忙(我可以通过编程的方式来确定这个脚本)时,CPU达到70%,或者达到了一些networking指标,一个新的脚本实例在新的EC2实例上启动,现在是100名工人。 在AWS上执行此操作的最佳方式是什么? 我只需要一个正确的方向推。 我应该使用弹性豆茎? 我不需要负载平衡器,因为工作人员保持连接。 连接永远不会被请求发起。

webdav,控制对文件夹的访问

在我的webdav共享的根(/ var / www / webdav /)我有两个文件夹: valid myuser 我想valid文件夹可以访问任何有效的用户。 所以我做了: Alias /webdav /var/www/webdav/ <Location /webdav> DAV On AuthType Digest AuthName "webdav" AuthUserFile /etc/apache2/users.password Require valid-user </Location> 而且,我希望myuser文件夹只能被myuser访问,所以: Alias /myuser /var/www/webdav/myuser <Location /myuser> DAV On AuthType Digest AuthName "webdav" AuthUserFile /etc/apache2/users.password Require user myuser </Location> 问题:另一个用户(不是myuser)正在访问webdav / myuser /。 我做错了什么?

在Amazon Linux AMI 2017.03上更改为静态DNS服务器

我疯了,因为这应该很容易,尤其是当遵循亚马逊文档。 我一直在使用这个从亚马逊的参考 。 只是试图更改AWS EC2实例用来parsing域名的DNS服务器。 编辑/ etc / sysconfig / network-scripts / ifcfg-eth0,设置PEERDNS = no,添加DNS1 = 10.0.0.11,保存,重启,不掷骰子:仍然可以在/etc/resolve.conf中看到10.0.0.2名称服务器, ping到内部服务器的FQDN(server.mycorp.company.com)将失败,因为它需要我们的内部DNS服务器来parsing名称。 如果我手动编辑resolv.conf并更改nameserver行以反映我们的DNS服务器10.0.0.11,ping工作。 据我所知,服务器正在运行最新的Amazon Linux AMI 2017.03。 完成/ etc / sysconfig / networking-scripts / ifcfg-eth0: DEVICE=eth0 BOOTPROTO=dhcp ONBOOT=yes TYPE=Ethernet USERCTL=yes PEERDNS=no DHCPV6C=yes DHCPV6C_OPTIONS=-nw PERSISTENT_DHCLIENT=yes RES_OPTIONS="timeout:2 attempts:5" DHCP_ARP_CHECK=no DNS1=10.0.0.11 * IP地址已经改变,以保护无辜

在不使用“source_profile”的情况下在EC2主机上切换IAMangular色

我有一个EC2 Ubuntu主机,我有一个用户帐户,负责在不同的时间运行不同的任务。 每个任务都需要由相应的IAMangular色表示的特定权限(我称之为“个人档案angular色”)。 这个想法是授予这个用户在需要时承担这些angular色的权限。 现在, ~/.aws/credentialsconfiguration如下所示: [default] aws_access_key_id = XXX aws_secret_access_key = YYY [profile1] role_arn = arn:aws:iam::XXXXXXXXXX:role/role-for-profile1 source_profile = default [profile2] role_arn = arn:aws:iam::XXXXXXXXXX:role/role-for-profile2 source_profile = default … [profileN] role_arn = arn:aws:iam::XXXXXXXXXX:role/role-for-profileN source_profile = default defaultconfiguration文件中的用户具有一个权限:承担以role-for-profile开始的任何angular色。 JSON策略如下所示: { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1494333413000", "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Resource": [ "arn:aws:iam::XXXXXXXXXX:role/role-for-profile*" ] […]