Articles of 亚马逊 EC2

如何将支持MP3的SoX二进制文件与AWS的Linux AMI的局限性一起打包到NodeJS AWS Lambda函数中?

我在过去3个月里一直在处理这个问题,而且完全陷入困境。 我正在尝试打包使用SoX的NodeJS AWS Lambda函数,并将其依赖项转换为MP3文件。 我可以通过按照这里引用的指令来获取我的代码来识别SoX二进制文件的自定义位置。 我最终将此代码添加到我的Lambda函数调用的开始,以更新process.env PATHvariables以包括自定义二进制文件的path。 process.env['PATH'] = process.env['PATH'] + ':' + path.join(process.env['LAMBDA_TASK_ROOT'], 'binaries'); 这导致我的process.env PATH更新如下所示: /usr/local/lib64/node-v4.3.x/bin:/usr/local/bin:/usr/bin/:/bin:/var/task/binaries 这看起来是正确的, binaries是包含我编译的sox二进制binaries的目录。 由于我使用的是NodeJS,因此我必须修改sox-audio NPM模块,以便使用更新后的process.envvariables来执行child_process exec和spawn调用。 这允许代码find二进制文件,但在执行过程中仍然出现错误。 Sox process exited with code 127 and signal null 我明白,虽然它可以find我包含的SoX二进制文件,但它不能find一个与SoX一起使用的命令,但没有更多的信息,我不知道它是什么。 我想这是因为我不确定是否有包含二进制文件的所有文件。 为了在支持MP3的情况下编写一个完整的SoX编译版本,我创build了一个新的EC2 linux实例,然后按照这里提供的说明进行操作。 我一行一行地确保我可以得到它的工作,并安装了一些依赖项以启用编译(如开发人员工具 ),并通过导出export PATH=$PATH:/usr/local/bin导出构buildPATH能够得到与MP3支持安装的完整版本。 我testing了它,它的工作方式就像我需要它。 由于AWS Lambda函数与AWS EC2实例在Linux(Amazon Linux AMI)的相同精简版上运行,理论上,如果我可以导出SoX构build并将其包含在我的Lambda包中,那么我应该能够使其工作。 那是我遇到麻烦的地方。 什么构成了自己? /usr/local/bin有一个SoX linux可执行文件,它是一个单独的文件,但是其中还有许多文件,这些文件似乎都与使SoX及其依赖项相关。 这里是我正在构build的/usr/local/bin中的文件列表。 我尝试通过FTP导出所有这些文件,然后将它们导入到另一个干净的EC2实例中,但即使在运行export PATH=$PATH:/usr/local/bin由于依赖性问题,SoX将无法运行。 很明显,仅仅导出这些文件是不够的。 我如何导出以及导出哪些内容,从而将我的SoX构build与支持MP3的EC2实例关联起来,并将其包含在我的AWS […]

BASH – 如何获得EOF标签内的variables值?

我有这个脚本,但我需要得到$variables值工作在每个块以EOF开始,EOF结束。 它不读取variables值,但把$我 /var/tmp/vpn.sh我有: #!/bin/bash amazonEth0="10.0.0.18" amazonWan0="4.9.2.9" vpnServer="4.8.8.6" hosttoHost1="10.109.0.20/32" hosttoHost2="10.109.0.21/32" hosttoHost3="10.109.58.6/32" hosttoHost4="10.109.59.3/32" for i in 1 2 3 4 do cat > /tmp/test$i.conf << \EOF #Step 3 conn test"$i" #auto=start type=tunnel authby=secret pfs=no aggrmode=no ikelifetime=28800s lifetime=3600s ike=aes128-md5;modp1024! phase2alg=aes128-md5;modp1024 forceencaps=yes left=$amazonLan0 leftid=$amazonWan0 leftsourceip=$amazonWan0 right=$vpnServer rightsubnet=$hosttoHost$i EOF done ### Run me cat > /var/tmp/vpn.sh << \EOF service ipsec […]

在服务器端完全运行PHP脚本

我遇到了一个问题,那就是腻子经常断开连接。 所以,当我从terminal运行PHP脚本时,它总是被打断。 剧本应该运行几个小时,所以我没有任何运气。 我怎么能从服务器端完全运行这个? 我正在阅读关于cron的工作,但是我现在很难理解。 有什么替代我的需要克伦? 我有几个脚本PHP文件需要一个一个地运行,或者一次运行两个。 有任何想法吗?

有关在亚马逊云ec2上设置git的虚拟问题

首先,对于我可能在这里抛出的虚拟问题表示歉意。 如果你能指出我应该从哪里去的方向,那将是很好的。 我完全不熟悉版本控制(以及git)和云系统。 但是,我必须在AWS EC2实例上开发基于php的web应用程序,并为将来的开发人员提供有用的代码。 我成功地创build了运行PHP / MySQL的EC2实例,并使用Elastic IP映射了该域。 所以这个网站现在可以通过80端口公开访问。 我也安装了git,使用$sudo yum install git和configed user.name和user.email 然后,我去到网站的根文件夹(例如public_html)并运行创build折叠“.git”的“ git init ”,然后使用“ git add . ”添加文件git add . “并提交” git commit -m 'initial upload' “ 这是正确的路吗? 将项目文件夹放在/ public_html(任何人可以访问的地方)都可以。 如果以上是好的,那么我应该从哪里去? 我希望在EC2上运行git服务器,允许开发人员从本地机器(例如Eclipse)连接,同时能够保留备份并比较不同的代码。 我想给开发者什么细节,以便他们可以连接到git服务器和项目工作? 我快速的方向或几个关键字做更多的研究会有所帮助。

亚马逊EC2 – 磁盘满

当我在Amazon EC2服务器上运行df -h时,这是输出: [ec2-user@ip-XXXX ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda1 25G 25G 0 100% / tmpfs 4.0G 0 4.0G 0% /dev/shm 出于某种原因,有些东西正在吞噬我的存储空间。 我试图find所有的大文件/文件夹,这就是我回来了: [ec2-user@ip-XXXX ~]$ sudo du -a / | sort -n -r | head -n 10 993580 / 639296 /usr 237284 /usr/share 217908 /usr/lib 206884 /opt 150236 /opt/app 150232 […]

如何在运行Amazon Linux Distro的EC2 t2.micro实例上安装PHP 7

我想在AWS EC2 T2.Micro实例上安装最新的PHP 7.0。 到目前为止,我已经读过,目前AWS不支持PHP 7.但是,嘿..这只是一个虚拟服务器在云端,我完全控制其configuration,所以必须有一些方法让PHP 7运行在这个一。 任何帮助非常感谢。 我的箱子如下 $ cat /etc/*-release ————————————— NAME="Amazon Linux AMI" VERSION="2015.09" ID="amzn" ID_LIKE="rhel fedora" VERSION_ID="2015.09" PRETTY_NAME="Amazon Linux AMI 2015.09" ANSI_COLOR="0;33" CPE_NAME="[*not significant*]" HOME_URL="http://aws.amazon.com/amazon-linux-ami/" Amazon Linux AMI release 2015.09 $ uname -a ————————————— Linux ip-xxx-xxx-xxx-xxx 4.1.13-18.26.amzn1.x86_64 #1 [date] x86_64 x86_64 x86_64 GNU/Linux $ uname -mrs ————————————— Linux 4.1.13-18.26.amzn1.x86_64 x86_64 $ […]

使用外部SMTP服务器发送电子邮件时已达到Amazon EC2邮件限制

你好 我使用grails MailSender服务(使用下面的Java邮件API)从Amazon EC2 linux实例发送大量电子邮件。 我已经configuration邮件API使用端口25上的外部SMTP服务器来发送电子邮件,我可以从外部电子邮件服务器日志中确认邮件确实由他们发送。 但是,亚马逊AWS已经给我发了一封电子邮件,说我已经达到了发送SMTP端口25的邮件发送限制。 我无法理解,当我一直使用外部smtp服务器发送电子邮件时,我是如何达到极限的。 此外,我从Java邮件API获取间歇性连接超时错误连接到外部smtp服务器。 任何帮助是极大的赞赏。 谢谢

如何正确设置EC2负载平衡以实现实时文件同步?

我是新来的EC2。 我读了很多关于它,看了很多video和教程,非常熟悉如何工作。 我仍然有几个问题,我似乎无法find直接的答案。 如果我有3个负载均衡的实例(linux)全部服务于同一个站点,并且该站点是一个dynamic的php / mysql驱动,用户每秒都会发布文件论坛线程,那么数据库和文件如何实时同步到所有3个实例。 我是否需要在RDS上有每个实例只需指向它的数据库? 用户文件如何? 如果用户上传了一个文件到网站,那么这个文件应该立即在所有实例上可用,这是如何实现的。 我不认为有3个副本3实例是非常实用的。 如果我修改了这个网站,比如说改变CSS文件中的内容,我该如何同步更改到所有的实例。 EBS或S3如何在所有这些方面发挥作用。

Linux启动时启动java程序(EC2实例)

我的服务器程序需要在启动EC2实例时启动。 在即时通讯只是从我的SSH启动它与以下命令: java -jar ~/DocumentManager/DocumentServer-0.2.jar 我试图将这添加到.bashrc和/etc/rc.local文件,但他们似乎只有当我ssh进入工作。 任何人都知道如何做到这一点,所以我的应用程序的实例是在计算机启动时启动的? 谢谢, 本

在Amazon EC2中创build子域

我如何在Amazon EC2上创build子域名? 在httpd.conf中添加虚拟主机是不够的。还是需要做其他更改? 谢谢