Articles of 弹性beanstalk

AWS Elastic Beanstalk实例 – debuggingCPU低但内存使用率高

我正在Amazon Elastic Beanstalk上运行一个小的t1.micro实例。 该应用程序本身是一个Java Web服务器,通过.warfile upload,响应来自远程Herokunetworking应用程序的请求。 在部署应用程序时,从Heroku应用程序的请求中将多部分表单数据作为文件inputstream和application / json的组合发送到它。 出于某种原因,无论何时发出请求,实例的健康状况都会迅速跳转到“警告”状态,并随着进一步的请求不可避免地跳转到“严重”状态,从而停止响应任何请求。 我一直在努力弄清楚为什么会发生这种情况。 我从“健康”选项卡中看到的一件事情是,响应请求时,内存使用率几乎一直在> 97%,而另一方面,空闲的CPU几乎总是> 99%。 这对我来说似乎很奇怪。 例如,假设我决定将一个50KB的.pptx文件发布到Java Web服务器(足够大以致一致地崩溃实例)。 我将它上传并以Heroku应用程序的stream的formsPOST到Elastic Beanstalk实例。 该实例快速跳转到警告状态,然后在我认为正在尝试读取/写入stream的30秒左右之后,再次跳转到严重并崩溃。 为什么将一个50KB的文件作为一个stream发送到实例足以导致实例崩溃? 我发现很难下载日志,因为它们似乎永远需要AWS才能生成。 有没有简单的方法来增加实例的内存(即我应该跳到更高层次的实例)? 谢谢你的帮助。

如何使用Docker将此Web应用程序(Sentry)部署到Amazon Elastic Beanstalk?

我正在尝试将stream行的Web应用程序( Sentry )部署到Amazon Elastic Beanstalk。 Beanstalk支持Docker容器,Docker Hub 在这里已经有了Sentry的configuration。 我已经尝试了以下Dockerrun.aws.json : { "AWSEBDockerrunVersion": "1", "Image": { "Name": "sentry" }, "Ports": [ { "ContainerPort": "8080" } ], "Volumes": [ { "HostDirectory": "/var/app/sentry", "ContainerDirectory": "/etc/sentry" } ], "Logging": "/var/log/sentry" } 但是,当我把它上传到Beanstalk,它没有部署它说“找不到初始化文件”。 我还拥有在Beanstalk环境variables中configuration的所有环境variables(SENTRY_SECRET_KEY,SENTRY_DB_NAME等)。 我错过了什么吗? 我是否需要编写Dockerfile而不是Dockerrun.aws.json ?

尝试使用Elastic Beanstalk应用程序获得静态IP

我的目标是将Web应用程序部署到Elastic Beanstalk,并允许用户从其公司networking访问该应用程序。 他们的networking使用IP地址和IP地址范围来控制对网站的访问。 我不知道有什么方法来定义一个静态IP到EB环境。 可能吗? 我正在考虑的一种替代方法是设置在EC2实例上运行的反向代理。 该实例将被分配一个弹性IP,并且请求将被转发到EB环境。 这似乎是一个可行的方法?

TravisCI不上传用grunt创build的文件

下面是我的.travis.yml,我使用grunt来编译我的sass,并尽量减lessjs和图像,似乎工作正常,但没有这些文件部署到Elastic Beanstalk。 我添加了skip_cleanup: true根据文档应该解决这个问题,但无济于事。 language: php before_install: – nvm install 0.10.38 – npm set progress=false – npm install -g grunt-cli grunt grunt-bower -loglevel=error – gem install dpl script: – echo "success" before_deploy: – cd ${TRAVIS_BUILD_DIR}/wp-content/themes/myapp && npm install –loglevel=error – cd ${TRAVIS_BUILD_DIR}/wp-content/themes/myapp && grunt build – cd ${TRAVIS_BUILD_DIR} – ls ${TRAVIS_BUILD_DIR}/wp-content/themes/myapp env: – ELASTIC_BEANSTALK_LABEL=$TRAVIS_COMMIT deploy: […]

将ElastiCache群集添加到Elastic Beanstalk应用程序

我有一个利用Docker平台的Elastic Beanstalk应用程序设置。 一切运行顺利,我可以使用eb deploy cli命令重新部署应用程序。 该应用程序安装在一个自定义VPC(我几乎不了解),并可通过networking访问。 我想添加一个Memcached ElastiCache集群到我的应用程序。 我尝试通过控制台手动创build群集,但我似乎无法连接到它(不pipe我如何设置)从我的应用程序(我试过从Elastic Beanstalk实例telnetting)。 我已经添加了一个.ebextensions目录到我的应用程序,并尝试添加一个EB指令为我创buildcaching集群。 我曾尝试使用AWS示例模板,但没有奏效。 我已经尝试更改设置,甚至尝试简化指令到最低限度所需的参数,以获得EB创build群集。 没有什么我正在做的似乎工作。 下面是我目前的文件: Resources: MyElastiCache: Type: "AWS::ElastiCache::CacheCluster" Properties: CacheNodeType: "cache.t2.small" NumCacheNodes: "1" Engine: "memcached" VpcSecurityGroupIds: – sg-XXXXXXXX CacheSubnetGroupName: "subnet-XXXXXXXX" 对于VpcSecurityGroupIds ,我已经尝试了EC2安全组和VPC安全组。 似乎也没有帮助。 CacheSubnetGroupName是我的VPC中的一个子网的ID。 这是非常令人沮丧的,因为需要5分钟来testing最小的变化,因为每次尝试新的东西时,EB都必须重新部署我的应用程序。 任何帮助将不胜感激。 编辑:这是我最近的尝试。 Resources: MyElastiCacheSubnetGroup: Type: "AWS::ElastiCache::SubnetGroup" Properties: Description: "Blah blah blah" SubnetIds: – subnet-XXXXXXXX – subnet-XXXXXXXX – subnet-XXXXXXXX – […]

Amazon Elastic Beanstalk具有对Amazon S3的文件访问权限

我的Amazon Elastic Beanstalk和Amazon S3安装程序有问题。 从EB实例我想加载一个文件与节点( fs.readFileSync ),我试了fs.readFileSync的configuration – 但他们没有工作,所以你是我最后的希望。 这是我的.ebextensions/key.config : Resources: AWSEBAutoScalingGroup: Metadata: AWS::CloudFormation::Authentication: S3Auth: type: S3 buckets: mybucket roleName: aws-elasticbeanstalk-ec2-role files: /var/app/dummy.txt: authentication: S3Auth source: https://s3.eu-central-1.amazonaws.com/mybucket/dummy.txt 这里从S3的桶政策 { "Version": "2008-10-17", "Id": "BeanstalkS3", "Statement": [ { "Sid": "e-123-123", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123123:role/aws-elasticbeanstalk-ec2-role" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::mybucket/resources/environments/logs/*" }, { "Sid": "e-123-123", "Effect": […]

弹性benstalk本地运行失败,错误

当我在Docker上运行多个docker(示例)elastic bean时,它失败了 eb local run Pulling image php:fpm… ERROR: TypeError :: the JSON object must be str, not 'bytes' 与debugging > eb local run –debug > requests.exceptions.HTTPError: 404 Client Error: > Not Found for url: > http+docker://localunixsocket/v1.17/containers/create?name=elasticbeanstalk_phpapp_1 > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): […]

如何为Amazon EC2configurationPuma?

使用Amazon Web Services(AWS),我创build了一个Elastic Beanstalk应用程序,其中包含运行Ruby(Puma)的最新平台版本的Amazon Linux。 我应该添加一个Pumaconfiguration文件(如config/puma.rb )到我的应用程序吗? 而且,如果是的话,我应该怎么做呢? 具体来说,我应该为线程和工作人员设置什么?

用于多实例configuration的域/子域和服务器证书

我在AWS Elastic Beanstalk上构build应用程序(这是一个负载平衡器,其中有一组实例在他身后工作)。 我想为我的弹性beanstalk添加子域并使用SSL。 我可以在负载平衡器上设置HTTPS。 但是,我也需要将其设置在他后面的实例上。 是否有可能将我的子域绑定到负载均衡器,并在他身后的实例上使用服务器证书? 我的理由是,我必须通过nginxvalidation我的实例上的客户端证书。 但是为了validation客户端证书,我还需要在服务器证书中使用SSL。 负载均衡器背后的实例是否有可能使用相同的服务器证书,而这些实例不在任何子域下 – 也不在服务器证书中注册的子域下面?

如何通过Dockerfile在AWS Elasticbeanstalk多容器泊坞窗应用程序上安装npm&composer依赖关系?

预期结果 您是否会build议如何通过AWS Elasticbeanstalk多容器Docker应用程序上的Dockerfile在我的webroot中安装npm和composer依赖项? 现在的情况 我一直在Docker容器中通过Dockerfile构build我的文件,代码如下: // Dockerfile … # npm WORKDIR /var/www/tmp_html RUN mkdir -p npm WORKDIR /var/www/tmp_html/npm COPY php-app/package.json package.json RUN npm update && npm install # composer … // similar to above # Switch working directory back to webroot WORKDIR /var/www/html 部署后,当我ssh到实例的php:fpm容器,我可以看到以下结构: root@3f8bf1xc2a78:/var/www# ls html tmp_html 构build的文件在/ tmp_html中,我试图把它们移到/ html。 通过我的Dockerfile像这样: ONBUILD RUN mv […]