在Datapipeline使用自定义的AMI(带s3cmd)自定义、Datapipeline、s3cmd、AMI

2023-09-11 09:01:11 作者:嫁谁不好就嫁给我吧い

如何安装用于在管道上的AMI s3cmd? 这应该是一个相当基本的事情,但我似乎不能把它做: 下面是我尝试过:

How can I install s3cmd on a AMI that is used in the pipeline? This should be a fairly basic thing to do but I can't seem to get it done: Here's what I've tried:

  在启动时没有图像-id选项管道=>一切工作正常   导航到EC2和创建的运行实例的图像,以确保所有需要的东西在管道中运行安装在我的自定义AMI   手工启动这个AMI作为一个实例   通过SSH连接到机器并安装S3cmd   创建本机的另一图像,安装这次s3cmd   关闭实例   又开始酝酿中,这一次与新创建的AMI作为图像ID和S3cmd安装    Started a Pipeline without the Image-id option => Everything works fine Navigated to EC2 and created an Image of the running Instance to make sure all the needed stuff to run in the pipeline is installed on my custom AMI Started this AMI manually as an Instance SSH'd into the machine and installed S3cmd Created another Image of the machine, this time with s3cmd installed Shut down the Instance Started the Pipeline again, this time with the newly created AMI as Image-id and S3cmd installed

现在的资源开始跑,但我的活动(ShellCommandActivity)卡在WAITING_FOR_RUNNER状态和脚本从来没有被执行。

Now the Resource starts "RUNNING" but my Activity (ShellCommandActivity) is stuck in the WAITING_FOR_RUNNER state and the script never gets executed.

我有什么做的就是使用自定义映像运行的管道?还是甚至有一个更简单的方法来使用s3cmd在管道?

What do I have to do to get the pipeline running with a custom image? Or is there even an easier way to use s3cmd in a pipeline?

感谢您!

推荐答案

我想通了,现在,通过使用一个干净亚马逊的Linux AMI(例如从市场上),并安装S3cmd,而不是创建一个AMI出正在运行的管道资源。我看到这个AMI有不同的内核版本,所以这可能是这个问题。

I figured it out now, by using a "clean" Amazon Linux AMI (from the marketplace for example) and installing S3cmd, rather than creating an AMI out of a running Pipeline Resource. I saw that this AMI has a different Kernel version, so this could have been the problem.