标签: ec2-ami

如何在Amazon Linux AMI for EC2上使用/安装"make"?

我是Amazon EC2的新用户.

我想pptpd在EC2 上编译包,但收到以下错误:

[root@ip-10-112-xxx-xxx /]# /var/tmp/rpm-tmp.2eILT0: line 58: /usr/bin/make: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我搜索了整个根目录树,但是make不可用:

[root@ip-10-112-59-187 /]# find . -name "make"
./etc/mail/make
Run Code Online (Sandbox Code Playgroud)

我想知道make最初是否真的安装在Amazon Linux AMI上?如果没有,我该如何安装?

amazon-ec2 amazon-web-services ec2-ami amazon-ami

5
推荐指数
2
解决办法
7334
查看次数

我如何知道Amazon EC2操作何时完成?

除了轮询,我怎么知道长时间运行的Amazon EC2操作何时完成?例如,使用CreateImageAPI函数可能需要几分钟的时间.

现在我这样做:

// MAKE THE API CALL
var createRequest = new CreateImageRequest().WithInstanceId("i-123456").WithName("MyNewAMI");
var createResponse = myAmazonEC2Client.CreateImage(createRequest);
var imageId = createResponse.CreateImageResult.ImageId;

// ICKY POLLING CODE
bool isImaging = true;
while (isImaging)
{
    var describeRequest = new DescribeImagesRequest().WithImageId(imageId);
    var describeResponse = myAmazonEC2Client.DescribeImages(describeRequest);
    isImaging = describeResponse.DescribeImagesResult.Image.Single().ImageState == "pending";
    Thread.Sleep(10000); // sleep for 10 seconds
}

// CreateImage IS COMPLETE; MOVE ON WITH OUR WORK
Run Code Online (Sandbox Code Playgroud)

我讨厌这个.在打电话之后CreateImage,我想以某种方式得到通知它已经完成并继续前进.这可能吗?我在这个例子中使用的是AWS .NET SDK,但我并不是专门针对C#解决方案.

更新:交叉发布到AWS论坛

amazon-ec2 amazon-web-services ec2-ami

5
推荐指数
1
解决办法
306
查看次数

R + httr和EC2 api身份验证问题

我想使用R包httr通过他们的API访问EC2服务.但我有点不确定如何开始,因为它不属于通常的"Oauth2.0"身份验证格式,其中你有通常的:密钥,秘密,令牌和签名系统.我认为EC2使用"签名版本2"方法,但我不清楚它是如何工作的.

查看EC2提供的有关在http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/using-query-api.html上发出查询请求的文档

我想我需要签名的价值......但不知道如何得到它

我已尝试使用一些给定的命令httr,如下所示.我可以适应大部分的URL字符串参数来表示我,我想做例如事情AWSAccessKeyId,ImageId,endpointAction等....但就是不知道哪里去获得签名值.

同样在给出的一些例子中,他们似乎也没有提供秘密访问密钥......

所以尝试过的命令如下所示,改变了一些值来代表我,但得到了以下内容:

require(httr)
GET("https://ec2.amazonaws.com/
?Action=RunInstances
&ImageId=ami-60a54009
&MaxCount=3
&MinCount=1
&Placement.AvailabilityZone=us-east-1b
&Monitoring.Enabled=true
&AWSAccessKeyId=0GS7553JW74RRM612K02EXAMPLE
&Version=2012-10-01
&Expires=2010-10-10T12:00:00Z
&Signature=lBP67vCvGlDMBQ1dofZxg8E8SUEXAMPLE
&SignatureVersion=2
&SignatureMethod=HmacSHA256")
Run Code Online (Sandbox Code Playgroud)

我得到了答复:

Response [http://aws.amazon.com/ec2/]
  Status: 200
  Content-type: text/html; charset=UTF-8


  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <link rel="icon" type="image/ico" href="//d36cz9buwru1tt.cloudfront.net/favicon.ico">
  <link rel="shortcut icon" type="image/ico" href="//d36cz9buwru1tt.cloudfront.net/favicon.ico">
  <meta name="description" content="Amazon Elastic Compute Cloud delivers scalable, pay-as-you-go compute capacity in the cloud. " /><meta …
Run Code Online (Sandbox Code Playgroud)

r amazon-ec2 ec2-ami ec2-api-tools httr

5
推荐指数
1
解决办法
1076
查看次数

无法在Amazon EC2上设置cron-job

我有一个运行我的网站的Amazon EC2实例(Ubuntu Server 13.04 - 64位[ami-bf1d8a8f]).我需要设置一个Cron Job来每天收到一封电子邮件提醒.

有没有人有任何建议或可能的解决方案?

谢谢你的时间.

php amazon-ec2 ec2-ami

5
推荐指数
1
解决办法
5161
查看次数

运行apt-get upgrade后如何避免GRUB错误 - Ubuntu

我在EC2上运行ubuntu 14.04

运行apt-get升级后

我被提示屏幕,要求我重新安装GRUB引导装载程序

GRUB引导加载程序先前已安装到不再存在的磁盘,或者由于某种原因其唯一标识符已更改.确保已安装的GRUB核心映像与GRUB模块和grub.cfg保持同步非常重要.请再次检查以确保将GRUB写入相应的引导设备.

  • 我如何知道应该选择哪种设备?

  • 如果我在我的机器上安装了一些额外的EBS,我应该选择它们怎么办?

  • 我可以在升级期间避免此提示或提供命令的某些默认值吗?

以下提示是

可以使用新版本的/boot/grub/menu.lst,但当前安装的版本已在本地修改.

  1. 安装包维护者的版本
  2. 保持当前安装的本地版本
  3. 显示版本之间的差异
  4. 显示版本之间的并排差异
  5. 显示可用版本之间的3向差异
  6. 在可用版本之间进行3向合并(实验性)
  7. 启动一个新的shell来检查这种情况

这里的q相同:

  • 我怎么知道我应该选择哪一个?

  • 我可以在升级期间避免此提示或提供命令的某些默认值吗?

linux ubuntu amazon-ec2 amazon-web-services ec2-ami

5
推荐指数
1
解决办法
2082
查看次数

Spark:如何增加奴隶的驱动器大小

如何启动具有每个具有100GB驱动器的从属的群集.

./spark-ec2 -k xx -i xx.pem -s 1 --hadoop-major-version=yarn --region=us-east-1 \
--zone=us-east-1b  --spark-version=1.6.1 \
--vpc-id=vpc-xx --subnet-id=subnet-xx --ami=ami-yyyyyy \
 launch cluster-test
Run Code Online (Sandbox Code Playgroud)

我使用了大小为100GB的AMI; 然而,Spark调整了大小并启动​​了8GB驱动器.如何将此限制增加到100GB?

amazon-ec2 ec2-ami apache-spark spark-ec2

5
推荐指数
1
解决办法
72
查看次数

如何使用 Terraform 格式化和挂载临时磁盘?

我正在编写 Packer 和 Terraform 代码以在 aws 上创建一个不可变的基础设施。但是,在磁盘上安装 ext4 并挂载它似乎不是很简单。

步骤看起来很简单:

  • 在包含所有软件的 t2.micro 上使用打包程序创建 ami,首先用于测试,然后用于生产。
  • 从这个 ami 启动一个 r3.4xlarge 实例,它有一个 300GB 的临时磁盘。出于性能原因,将此磁盘格式化为 ext4,挂载它并将 /var/lib/docker 重定向到新文件系统。
  • 完成其余的应用程序启动。

首先:

最佳实践是使用您将使用它的相同实例类型创建 ami 还是拥有一个“通用”映像并从中启动多个实例类型?什么哲学是最好的?

  • 打包程序(软件版本)-> terraform(实例 + 挂载磁盘)-> 部署?
  • 打包器(软件版本)-> 打包器(特定于实例类型的安装)-> terraform(实例)-> 部署?
  • 打包程序(软件版本,特定于实例的安装)-> terraform -> 部署?

后者看起来越来越好,但每个实例类型都需要一个 ami。

到目前为止我尝试过的:

根据这个答案,最好使用 user_data 工作方式而不是供应商方式。所以我要走那条路。

这个答案似乎很有希望,但太旧了,不再有效。我可以更新它,但可能有不同的更好的方法。

这个答案似乎也很有希望,但抱怨的是 ${DEVICE}。我想知道该变量来自哪里,因为 template_file 中没有指定变量。如果我将自己的 DEVICE 变量设置为 xvdb,则它会运行,但不会产生结果,因为 xvdb 在 lsblk 中可见但在 blkid 中不可见。

这是我的代码。format_disks.sh 文件与上述文件相同。任何帮助是极大的赞赏。

# Create a new instance of the latest Ubuntu 16.04 …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services ec2-ami terraform

5
推荐指数
1
解决办法
2719
查看次数

尝试在 AWS EC2 中的实例存储上启动 Ubuntu 18.04

我正在尝试在 AWS 上启动具有设备类型的 Ubuntu 18.04 instance-stored。我搜索 Ubuntu 18.04 并找到了这个 ( ami-02e8efe84b4da2817):

在此输入图像描述

好的,然后我选择可用的最简单的实例类型m5d.large

在此输入图像描述

...但是当我启动实例时,出现以下错误:


实例类型“m5d.large”不支持使用实例存储根设备启动失败的AMI“ami-02e8efe84b4da2817”。

如果我遵循了所有启动步骤,为什么会出现此错误?我需要做什么才能在 上运行 Ubuntu 18.04 instance-stored?提前致谢。

amazon-ec2 amazon-web-services ec2-ami

5
推荐指数
1
解决办法
1479
查看次数

GPU 驱动程序无法在 AWS Ubuntu 深度学习 AMI 上运行

GPU 驱动程序似乎无法在我过去几个小时设置的深度学习 AMI (Ubuntu 180.04) g4dn.xlarge 实例上运行。nvidia-smi给出输出:

NVIDIA-SMI 失败,因为它无法与 NVIDIA 驱动程序通信。确保已安装并运行最新的 NVIDIA 驱动程序。

torch.cuda.is_available()返回false

有谁知道为什么会发生这种情况?

gpu amazon-ec2 ec2-ami pytorch

5
推荐指数
0
解决办法
2343
查看次数

无法使用 ssh 从 Windows 10 CMD 连接到 EC2 Linux 实例

我有一个正在运行的EC2实例Linux OS( Amazon Linux AMI release 2018.03)。

鉴于在命令提示符下Windows 10SSH可用的客户端,我试图在实例设置期间使用作为密钥对提供的私钥(文件)SSH进入我的实例。EC2SSH.pemAWSEC2

我正在使用的命令cmd是:

ssh -i private_key.pem ec2-user@3.133.96.240
Run Code Online (Sandbox Code Playgroud)

这里private_key.pem是提供的私钥文件的名称AWS

但我不断收到错误消息:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'private_key.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "private_key.pem": bad permissions
ec2-user@3.133.96.240: Permission denied …
Run Code Online (Sandbox Code Playgroud)

ssh acl amazon-ec2 amazon-web-services ec2-ami

5
推荐指数
2
解决办法
1713
查看次数