我试图在EC2实例上构build一个静态链接的“hello world”Haskell程序,以便在AWS Lambda上运行它。 我对“简单”stack.yaml的唯一修改是: ghc-options: "*": -static -optc-static -optl-static -optl-pthread 我第一次得到以下错误: [ec2-user@ip-172-31-0-238 lambdatest]$ stack build lambdatest-0.1.0.0: configure Configuring lambdatest-0.1.0.0… lambdatest-0.1.0.0: build Preprocessing executable 'lambdatest' for lambdatest-0.1.0.0… Linking .stack-work/dist/x86_64-linux/Cabal-1.22.4.0/build/lambdatest/lambdatest … /usr/bin/ld: cannot find -lgmp /usr/bin/ld: cannot find -lm /usr/bin/ld: cannot find -lrt /usr/bin/ld: cannot find -ldl /usr/bin/ld: cannot find -lpthread /usr/bin/ld: cannot find -lc collect2: error: […]
我目前有一个EC2实例启动并在亚马逊Linux上运行,并使用FileZilla通过SFTP将我的项目(包含React / NodeJS / Express)转移到EC2实例上。 对于EC2的安全组,我打开了一个3000端口(protocol:tcp,source:0.0.0.0/0),这也是我的Express的定义。 于是我把它连接到了EC2实例中,运行了这个项目的Express,并且看到它在监听端口内的3000端口。 但是,一旦我打了公共DNS与ec2…us-west-1.compute.amazonaws.com:3000 ,它说,该网站无法联系 – ec2 … us-west-1.compute.amazonaws。 com采取太迟来回应。 有什么可能是这个问题,我怎么能从这里连接到它? 预先感谢您,并将upvote /接受答案。
我在ec2上使用mongodb和nodejs,我想部署它以便每天支持10,000个请求。 我想确保,如果实例终止或重新启动(?)以某种方式数据库不会丢失。 我知道我需要创build一个EBS卷来存储数据。 我试过http://www.mongodb.org/display/DOCS/Amazon+EC2+Quickstart#AmazonEC2Quickstart-ConfigureStorage,但没有奏效。 我得到了我应该运行的点[ec2-user @ domU -…〜] $ sudo chown mongod:mongod / data但是我得到:chown:无效的用户:`mongod:mongod' 通过:sudo chown mongod.mongod / data仍然无法运行mongod工作: $sudo /etc/init.d/mongod start Starting mongod: forked process: 1694 all output going to: /log/mongod.log [FAILED][ec2-user@domU-… /]$ sudo mongod –dbpath=/data Mon Oct 29 21:46:56 [initandlisten] MongoDB starting : pid=1675 port=27017 dbpath=/data 64-bit host=domU-… Mon Oct 29 21:46:56 [initandlisten] […]
我想使用mdadm来编写m1.large EC2实例上的两个临时存储设备的条带(显然,amis并不总是包含设备信息,所以一旦数组启动后,我不能只创build一个新的ami)。 问题是,EC2实例上的临时存储通常是用文件系统预先格式化的,导致mdadm说: mdadm: /dev/sdb appears to contain an ext2fs file system size=440366080K mtime=Mon Jan 2 20:32:06 2012 mdadm: /dev/sdc appears to contain an ext2fs file system size=440366080K mtime=Wed Dec 31 19:00:00 1969 Continue creating array? 并等待input。 我敢肯定有一种方法可以在mdadm中为非交互式情况(例如在fsck -y中)自动回答yes,但是我似乎无法弄清楚(不是–force)。 我知道我可以用dd来清零这些设备,但这似乎是一个相当大胆的解决scheme,我相信很容易做到。
我已经为即将到来的项目设置了Amazon EC2实例。 他们都是微型实例,运行Ubuntu Server 64bit。 这是我迄今为止设置的: Web服务器 – Apache 数据库服务器 – MySQL 开发服务器 – Apache和MySQL 文件服务器 – SVN&Bacula(备份完成到S3桶) 目前,只有一个Web服务器,但最终会有更多。 我的第一个问题是,Amazon EC2实例彼此之间进行通信的最佳,最安全的方式是什么? 目前我使用SSH,是最好的方法吗? 根据亚马逊,使用其弹性IP地址进行通信的实例将收取数据传输费用。 但是,使用其私有IP地址进行通信的实例可以免费进行。 不幸的是,如果实例停止并重新启动,则显示私有IP更改。 那么这就是我的第二个问题,如果不是静态的,那么您如何利用Amazon实例的私有IP? 我知道这些实例很可能不会被停止并开始非常频繁的使用,但是如果IP地址在不同的configuration文件中,那么将不得不通过所有的configuration文件来改变它。 我主要关心Web服务器,它需要访问数据库服务器和文件服务器,在执行备份时需要访问所有的实例。 注意:我以前从未使用过Bacula,也没有安装它,但是我假设它需要客户端的IP地址来备份它们。 ServerFault会是一个更好的地方发布这个问题?
我有一个简单的cloud-init用户数据,我传递给ec2。 我通过右键单击实例并在其中设置用户数据,将此数据设置在我的ec2实例上。 以下是我的云初始用户数据 #cloud-config runcmd: – [ ls, -l, / ] – [ sh, -xc, "echo $(date) ': hello world!'" ] – [ sh, -c, echo "=========hello world'=========" ] – [ touch, /home/ec2-user/hello.txt ] final_message: "The system is finally up, after 10 seconds" 我从这里得到了这个例子,我添加了触摸命令 我的期望是看到/var/log/cloud-init.log上的数据。 但是我没有看到它。 此外,我没有看到任何错误,也没有看到hello.txt文件创build 有什么我失踪了吗? 我正在运行一个亚马逊Linux实例,而不是一个Ubuntu实例
我试图在运行Amazon Linux的EC2实例上安装g ++ 5.x; 在亚马逊的中央仓库中,最新版本是4.8.3。 我可以做什么configuration让yumfind一个新的gcc-c ++包?
我正在debuggingmonit开始/停止程序语句。 在我的/etc/monit.conf文件中,我的start program语句如下所示: check process node with pidfile /home/ec2-user/blah/node.pid start program = "/bin/su -c 'export APP_ENV=development; /home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js start &> /tmp/monit.out ' " stop program = "/bin/su -c '/home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js stop'"" 我已经在一个shell中testing过了 $ sudo su # env -i PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/sh # /bin/su -c '/usr/bin/env APP_ENV=development; /home/ec2-user/local/bin/node /home/ec2-user/example.com/current/api.js start &> /tmp/monit.out ' 运行这个会在/tmp/monit.out文件中返回正确的输出: Starting nodejs daemon… […]
我正在使用亚马逊Linux AMI,并对其进行一些自定义修改(添加了axis2server等)并将其保存为新的AMI。 现在我想要做的是当AMI启动时,启动axis2server(ie.axis2server应该在实例启动时自动启动)。 为此,我使用了下面的init脚本,并运行以下命令: chkconfig –add axisservice 但是当我从镜像中启动一个新的实例时,axis2server没有启动。 我只需要在启动时执行脚本/home/ec2-user/axis2-1.6.1/bin/axis2server.sh。 我在这里错过了什么? #! /bin/sh # Basic support for IRIX style chkconfig ### # chkconfig: 235 98 55 # description: Manages the services you are controlling with the chkconfig command ### case "$1" in start) echo -n "Starting axisservice" touch ~/temp.txt cd /home/ec2-user/axis2-1.6.1/bin ./axis2server.sh & echo "." ;; […]
我对Linux比较陌生。 在我们的一个项目中,我们使用亚马逊的EC2实例来处理一些文件。 我们上传文件到S3服务器后处理。 使用现有的AMI启动EC2实例 最近我得到一个错误没有剩余磁盘空间,因此处理文件被暂停。 我清理了一些较旧的文件,并继续处理。 现在,当我用df -h查看可用空间时 Filesystem Size Used Avail Use% Mounted on /dev/xvda1 9.9G 5.7G 3.7G 61% / none 3.7G 0 3.7G 0% /dev/shm /dev/xvdb 414G 199M 393G 1% /mnt /dev/xvdc 414G 199M 393G 1% /data 我可以看到我的文件只影响/ dev / xvda1。 我有以下查询 当我看到我的文件只影响/ dev / xvda1时,其他分区的用途是什么 看起来我们只是有效地使用了10 GB的空间,而其他的则被浪费了。 我怎样才能使用其他空间? 我可以将一些磁盘空间移动到/ dev / xvda1或直接将文件存储在其他区域吗?