当我们从AMI启动实例时.首先可以访问实例(ssh).一旦我们停止/启动实例或重新启动它,机器就会通过ssh无法访问,我们可以ping它.我们在系统日志中看到以下错误.
AMI ID used - ami-72dc9220
Instance - i-0896a15f -
Linux rhel6.4 M1.large instance.
../
******************* BLKFRONT for device/vbd/2049 **********
backend at /local/domain/0/backend/vbd/236/2049
Failed to read /local/domain/0/backend/vbd/236/2049/feature-barrier.
Failed to read /local/domain/0/backend/vbd/236/2049/feature-flush-cache.
14680064 sectors of 512 bytes
**************************
Thread "kbdfront": pointer: 0x21e0130010, stack: 0x3720000
FBFRONT for device/vfb/0 **********
KBDFRONT for device/vkbd/0 **********
Failed to read device/vfb/0/backend-id.
Failed to read device/vkbd/0/backend-id.
Error ENOENT when reading the backend path device/vkbd/0/backend
Thread "kbdfront" exited.
Error ENOENT when reading the backend path device/vfb/0/backend
./
Run Code Online (Sandbox Code Playgroud) s3cmdepel-testing通过运行从repo 安装:
yum --enablerepo epel-testing install s3cmd
Run Code Online (Sandbox Code Playgroud)
然后我调用了配置工具,s3cmd --configure但是我收到了这个错误:
Test access with supplied credentials? [Y/n]
Please wait, attempting to list all buckets...
ERROR: Test failed: 400 (InvalidToken): The provided token is malformed or otherwise invalid.
Invoked as: /usr/bin/s3cmd --configureProblem: AttributeError: 'S3Error' object has no attribute 'find'
S3cmd: 1.5.0-beta1
python: 2.6.8 (unknown, Mar 14 2013, 09:31:22)
[GCC 4.6.2 20111027 (Red Hat 4.6.2-2)]
Traceback (most recent call last):
File "/usr/bin/s3cmd", line 2323, in <module>
main()
File "/usr/bin/s3cmd", line …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试使用Amazon ec2-api-tools和ec2-ami-tools工具实用程序来备份我的EC2实例.
我正在使用亚马逊的标准Ubuntu 14.04 AMI.
要下载并安装所需的实用程序,我已更新/etc/apt/sources以下内容:
deb http://us.archive.ubuntu.com/ubuntu/ trusty multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates multiverse
Run Code Online (Sandbox Code Playgroud)
我现在可以按预期捆绑图像,但是当我尝试将AMI上传到存储桶时,我收到以下错误:
The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
Run Code Online (Sandbox Code Playgroud)
我正在使用法兰克福数据中心.从在线研究来看,2014年1月的新中心似乎不支持旧的身份验证方案.
我已尝试按照http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html上的指南启用V4,但是当我尝试更新CLI配置时,我收到以下错误:
root@ip-10-0-1-54:/mnt/bundle# aws configure set default.s3.signature_version s3v4
usage: aws [options] <command> <subcommand> [parameters]
aws: error: argument subcommand: Invalid choice, valid choices are:
list
Run Code Online (Sandbox Code Playgroud)
有谁知道如何修复错误,所以我可以将我的捆绑备份到S3?
我正在尝试从一个帐户A复制AMI,但由另一个帐户B拥有.我之前已经构建了此AMI.帐户A具有AMI的启动权限,但是当我复制时,我收到此错误消息:Images from AWS Marketplace cannot be copied to another AWS account.
所以,我做了一个DescribeImage,我得到了这个:
productCodes
item
productCode 7w73f3XXXXXXXXXXXXXX /productCode
type marketplace /type
/item
/productCodes
我认为我的问题来自productCode和type.因此我的问题是,如何删除productCode并输入?
最好的祝福,
我在 AWS 爱尔兰地区进行了设置,现在我想要在我的中国使用该 AMI。有谁知道完成任务的最佳实践是什么?任何帮助将不胜感激。
提前致谢。
我正在尝试从AWS账户清除我的快照和AMI,以删除我知道需要取消注册AMI的快照.但是当我尝试通过控制台取消注册时,我收到以下错误."尝试取消注册amis时发生错误"
有人对这个问题有所了解吗?
我正在跟踪一个教程,可以在这里找到在ec2实例上设置无头硒刮刀的教程:
https://krbnite.github.io/Driving-Headless-Chrome-with-Selenium-on-AWS-EC2/
我正在使用的教程似乎假定使用Ubuntu发行版,而我正在使用的ec2实例是aws ami。由于这样的apt-get对我不可用,因此我使用yum安装东西。
安装过程的第一步如下:
wget -q -O - "https://dl-ssl.google.com/linux/linux_signing_key.pub" | sudo apt-key add -
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我得到以下是我的aws ami实例上的预期错误:
sudo: apt-key: command not found
Run Code Online (Sandbox Code Playgroud)
我不知道如果不使用apt,apt-get或apt-key而是使用yum,等效命令将是什么。我盲目尝试了以下方法,但它们没有起作用:
wget -q -O - "https://dl-ssl.google.com/linux/linux_signing_key.pub" | sudo yum add -
wget -q -O - "https://dl-ssl.google.com/linux/linux_signing_key.pub" | sudo yum-key add -
Run Code Online (Sandbox Code Playgroud)
谢谢
我已经开始使用亚马逊的新推送模板,到目前为止喜欢它,但是我最近刚从我的一个实例创建了一个图像,然后我创建了一个新版本的启动模板并使用了新的AMI.
将我的自动缩放组更新为新版本的模板时,保存后会出现以下错误:
错误您必须使用有效的完整形式的启动模板.无法在根设备上修改snapshotId
我需要重新创建AMI吗?
如果有人有任何建议,将不胜感激.
我正在尝试使用层在 Lambda 上部署 .so 文件。这些文件是使用 Amazon Linux docker 映像编译的。我将图层以 zip 格式上传,所需文件位于 /lib/ 中。但是我的代码无法读取这些文件。
from ctypes.util import find_library
def lambda_handler(event, context):
liblept=find_library('lept') # present in /opt/lib
libpng=find_library('png') # present in Lambda's default library
print(liblept) # gives None
print(libpng) # gives libpng.so.4
Run Code Online (Sandbox Code Playgroud)
我尝试将 /opt/lib 添加到LD_LIBRARY_PATH环境变量,但它不起作用。事实证明 LD_LIBRARY_PATH 默认有 /opt/lib -
print(os.environ.get("LD_LIBRARY_PATH"))
Run Code Online (Sandbox Code Playgroud)
输出
/var/lang/lib:/lib64:/usr/lib64:/var/runtime:/var/runtime/lib:/var/task:/var/task/lib:/opt/lib
Run Code Online (Sandbox Code Playgroud) 我在 VPC1 中有一个 EC2 实例。它有两个块设备:/dev/sda1根设备)和/dev/sdb
我想使用 boto3 将此 EC2 实例移动到 VPC2。VPC1 和 VPC2 位于 us-east-1 上。
我有什么选择?我猜我需要从以下选项中选择 1。
哪种方法更有意义?基本上,我试图创建一个脚本,这些 EC2 实例的所有者可以执行该脚本以将其 Ec2 实例从 VPC1“移动”到 VPC2。
谢谢并注意安全。
amazon-ami ×10
amazon-ec2 ×7
amazon ×2
python ×2
amazon-s3 ×1
apt ×1
autoscaling ×1
aws-lambda ×1
boto3 ×1
bundle ×1
ctypes ×1
linux ×1
rhel ×1
s3cmd ×1
vpc ×1
yum ×1