标签: amazon-ec2

mydomain.com:8080 路由 - Amazon Web Services、Route 53、EC2、MEAN

我使用 amazon Route 53 购买了一个域名,创建了一个弹性 IP 地址并将其附加到运行 MEAN bitnami 堆栈的 Amazon EC2 实例,然后我创建了一个用于静态 Web 托管的 S3 存储桶,“将所有请求重定向”到 www.domainname.com 。

但是,当我转到根域时,加载的页面是 Bitnami 祝贺页面:您现在正在云中运行 Bitnami MEAN 3.2.11-0。我创建了一个文件夹,上传了 MEAN Angular 2/express 应用程序并执行了 Node server.js,我只能在 mydomain.com:8080 上访问我的 Web 应用程序,但其他任何内容都会重定向到 Bitnami 祝贺页面。这是哪个设置在执行此操作?是亚马逊设置的吗?Bitnami 设置?或者我的服务器端代码中的某些内容。我在服务器代码中唯一提到 8080 的地方是这里,当我运行服务器时,它会打印在 8080 上运行的 API:

const port = process.env.PORT || '8080';
app.set('port', port);
const server = http.createServer(app);
server.listen(port, () => console.log(`API running on: ${port}` + ' or ' + process.env.PORT));
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 bitnami amazon-web-services express mean-stack

0
推荐指数
1
解决办法
656
查看次数

如何使用 boto 获取正在运行的 EC2 实例的 self Instance Id?

使用 python boto API(不是 Boto3),如何获取在用户数据中运行脚本的 CPU 的自实例 ID。

amazon-ec2 boto amazon-web-services

0
推荐指数
1
解决办法
2262
查看次数

Amazon EC2 实例 pinging 但无法从外部访问 django 服务器

我在 ec2 实例上有我的 django 应用程序。我可以在 localhost:8000 上的 ec2 实例上运行它。当我尝试从 ec2 实例外部访问该 django 应用程序时,它不会显示“无法访问此站点”。正在执行 ping 操作

python django amazon-ec2 amazon-web-services

0
推荐指数
1
解决办法
1173
查看次数

PHP SDK 无法在附加了 IAM 角色的 EC2 实例上获取 AWS 凭证

简单的问题。但无法让它发挥作用。

我为 EC2 创建了一个 IAM 角色,具有对 CloudWatch 的完全访问权限。我启动了一个附加了此 IAM 角色的新 EC2 实例。我在此 EC2 实例上编写了一个简单的 PHP 应用程序,该应用程序尝试将指标发布到 CloudWatch。

我在 nginx 日志中收到此错误:

2017/08/23 11:44:06 [error] 32142#32142: *5 FastCGI sent in stderr:
"PHP message: PHP Fatal error:
Uncaught Aws\Exception\CredentialsException:
Cannot read credentials from /var/www/.aws/credentials
in /var/www/app/vendor/aws/aws-sdk-php/src/Credentials/CredentialProvider.php:394
Run Code Online (Sandbox Code Playgroud)

从同一个 EC2 实例,命令:

curl http://169.254.169.254/latest/meta-data/iam/security-credentials/<role-attached-to-ec2-instance>
Run Code Online (Sandbox Code Playgroud)

返回 200 OK,响应中包含访问密钥和秘密。

这是我尝试编写 CloudWatch 指标的 PHP 代码:

<?php

require 'vendor/autoload.php';
use Aws\CloudWatch\CloudWatchClient;
use Aws\Exception\AwsException;

$count = $_GET["count"];
publishMetric($count);

function publishMetric($count) {
    $client = new CloudWatchClient([
            'profile' => 'default',
            'region' => 'us-east-1', …
Run Code Online (Sandbox Code Playgroud)

php amazon-ec2 amazon-web-services

0
推荐指数
1
解决办法
3172
查看次数

如果服务器重新启动,我是否需要在 EC2 上手动重新启动我的应用程序?

这是我第一次使用 EC2,所以请记住这一点。我创建了一个 EC2 实例,并在其上放置了一个非常基本的 Nodejs/express 应用程序。我通过个人计算机上的终端连接到 ec2 服务器并运行 node app.js 来启动应用程序,一切运行正常。我感到困惑的部分是这将运行多长时间。理想情况下,我只是希望它坐在那里,不要碰它,并让它运行数年。它会这样做吗?如果不是我需要做什么?如果服务器由于某种原因重新启动怎么办?这里的常见做法是什么?

amazon-ec2 amazon-web-services node.js

0
推荐指数
1
解决办法
1282
查看次数

如何访问与实例关联的iam-info?

我是 EC2 新手,目前正在学习如何使用它。我目前正在尝试实际操作 IAM、S3 和 EC2。这是我第一次使用 IAM。我正在尝试在目录中创建一个文件,其中包含元数据并包括主机名、iam-info 和安全组。我能够检索实例主机名和安全组。但是,我无法检索 iam-info。我尝试使用以下命令来检索 iam-info:

http://169.254.169.254/latest/dynamic/iam/info

我想使用curl 命令获取输出并将其重定向到我的目录中的文件中。但是,我也在使用 nginx,它会中断curl命令的执行并显示错误。我浏览了 AWS 中的 EC2 指南:

http://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_iam-ec2.html

我浏览了实例身份指南,我无法在此处复制该指南,因为这是我的第一个问题,并且只允许我使用 2 个链接。执行后元数据文件的内容应类似于以下内容:

{
  "Code" : "Success",
  "LastUpdated" : "2016-04-05T16:45:21Z",
  "InstanceProfileArn" : "arn:aws:iam::234179547755:instance-profile/S3-access",
  "InstanceProfileId" : "AIPAIKSVFD6G6V26PMAGO"
}
Run Code Online (Sandbox Code Playgroud)

curl nginx amazon-ec2 amazon-web-services amazon-iam

0
推荐指数
1
解决办法
1208
查看次数

EC2 上是否需要运行某些内容才能通过运行状况检查?

好吧,这似乎是一个愚蠢的问题,但我不得不说我有点困惑。我不明白为什么我的 ELB(经典)--> EC2 运行状况检查在 AWS 中失败。

因此,按照我配置的方式,我的 ELB 的运行状况检查将尝试 ping 上的实例TCP:8080

我的 ELB 上有 3 个端口侦听器,根据我的理解,这应该不重要,因为它处理源自外部的流量,但我将列出它,以防我忽略某些内容:1.) HTTP:80 --> HTTP:8080 2.) HTTPS:443 --> HTTP:8080 3.)TCP:2222 --> TCP:2222

我还尝试将运行状况检查配置为 pingTCP:2222以防万一,同样的交易。

此外,我的 EC2 还拥有启用 ELB 安全组的安全TCP:8080TCP:2222

它失败的原因是因为虽然 EC2 实例允许流量,但它仍然需要在该端口上运行某些东西来为流量提供服务?

目前,所有 EC2 都是 AWS 提供的简单 Linux AMI。

请原谅我对网络空间有点陌生。

amazon-ec2 amazon-web-services amazon-elb

0
推荐指数
1
解决办法
352
查看次数

使用 Cloudformation 将多个 BlockDeviceMappings 安装到 EC2 实例

我尝试使用 cloudformation 将多个 EBS 卷安装到我的 EC2 实例,但由于某种原因,仅安装了我指定的最后一个 EBS 卷。

EG:
NewEC2Instance:
    Type: AWS::EC2::Instance
    DependsOn: OldSecurityGroup
    Properties:
      ImageId: !Ref pImageId
      InstanceType: !Ref pInstanceType
      BlockDeviceMappings:
        -
          DeviceName: /dev/sda1
          Ebs:
            VolumeSize: 10
          DeviceName: /dev/sdf
          Ebs:
            VolumeSize: 11
            Encrypted: true
          DeviceName: /dev/sdg
          Ebs:
            VolumeSize: 12
            Encrypted: true 
          DeviceName: /dev/sdh
          Ebs:
            VolumeSize: 100
            Encrypted: true 
Run Code Online (Sandbox Code Playgroud)

对于上面的代码,仅创建 100Gb /dev/sdh。

我认为 Cloudformation 正在覆盖 EBS 卷。

有人知道为什么吗?请帮忙!

amazon-ec2 amazon-ebs amazon-web-services aws-cloudformation

0
推荐指数
1
解决办法
3076
查看次数

在 Jenkins 中使用 AWS 命令​​获取 EC2 实例的 CPU 利用率的最佳方法是什么

我正在编写一个 Jenkins 作业来显示特定时间的 CPU 利用率,并且我的 Jenkins 作业能够使用 AWS cli 处理 AWS 命令​​。

有没有简单的方法可以获取 CPU 利用率?

amazon-ec2 aws-cli

0
推荐指数
1
解决办法
3561
查看次数

如何对AWS私有子网EC2实例进行负载平衡

如果我创建 ELB 并尝试附加私有子网实例,我的运行状况检查会失败:OutOfService。

问题 1:我可以获得内部/私有 IP(不是 IP,而是 dns 名称)用于负载平衡。即无法访问互联网?

问题 2:如果我的应用程序负载均衡器有一个公共 dnsname。如何附加私有子网中没有弹性 IP 的 EC2 实例(无法访问 Internet)。我正在寻找最好的方法。我们是否应该——

ELB --> 公有子网 EC2 实例(代理配置- */* [private_ip]:[port]/* ) ---> 来自私有子网/EC2 实例的服务,并在此处进行运行状况检查。

reverse-proxy amazon-ec2 amazon-web-services amazon-elb

0
推荐指数
1
解决办法
5007
查看次数