IntroductionThe AWS properties file specifies the Amazon web services credentials, the EC2KeyPair and which AMIs to launch. | Property | Description | | imageId.m1.small | The 32 bit image to run (currently ami-6f2cc906) | | imageId.m1.large | The 64 bit image to run (currently ami-0129cc68) | | imageId.m1.xlarge | The 64 bit image to run (currently ami-0129cc68) | | accountId | AWS account id | | accessKey | AWS access key | | secretKey | AWS secret key | | keyName | The name of the key pair | | keyPairFile | The location of the AWS key pair file | | sshDir | The directory containing the ssh executable, e.g. c:/cygwin/bin | | startupScript | An optional startup script |
This is a standard Java properties file: imageId.m1.small=ami-6f2cc906
imageId.m1.large=ami-0129cc68
imageId.m1.xlarge=ami-0129cc68
accessKey=...
secretKey=...
|
If I specify a different image for, say, imageId.m1.small, will the mvn plugin use it? If so, what are the requirements for that image to work with cloudtools?
Cloud Tools makes certain undocumented assumptions about the locations of installed software, the names of the MySQL and Tomcat service. I have talked with people who have used it with their own AMIs however.
Is there more documentation regarding these images? I am having an issue with the default image and would like to upgrade some of the packages.
i am trying to deploy application on EC2 , what value i need to give in aws.properties file for this "sshDir"
yes i installed ssh client on my server, to connect amazon image is i need to install ssh server software on perticular image.
thanks in advance rechard.
sshDir needs to be set to the directory containing the ssh client executable.
Amazon AMIs already have sshd installed.
You just need to ensure that you have the ssh client installed on the machine that you run the maven/grails plugins on.
Hi Chris, I did as mentioned in the screencast. I was trying to deploy a mytest webapp. I am getting this error
It simply says 'null'. Is there a log file that I can look into it ?
thanks Murali
Two things:
First, please send questions such as this to the mailing list.
Second, I think it is failing because it cannot SSH into the instance. Things to check: 1. Security group allows SSH? 2. Path to ssh command specified correctly in AWSproperty 3. Path to keyPairFile is specified correctly. (paths should be forward /'s not \'s even on windows)
Thanks Chris, The problem was with the path separator in windows.
Hi,
I get this error when I try to use "mvn cloudtools:deploy":
org.jets3t.service.S3ServiceException?: S3 PUT failed. XML Error Message: <?xml version="1.0" encoding="UTF-8"?><Error><Code>InvalidAccessKeyId?</Code><Message>The AWS Access Key Id you provided does not exist in our records.
Any hints what could be wrong?
This is the full stack trace: DOWN S3AKIAJZGOOTROJFKH5FEA.crsSell-1.0-SNAPSHOT-tmp-war? => Local/tmp/crsSell-1.0-SNAPSHOT-tmp-war? WARN org.jets3t.service.impl.rest.httpclient.RestS3Service? Unable to access bucket: AKIAJZGOOTROJFKH5FEA.crsSell-1.0-SNAPSHOT-tmp-war org.jets3t.service.S3ServiceException?: S3 HEAD request failed. ResponseCode?=403, ResponseMessage?=Forbidden at org.jets3t.service.impl.rest.httpclient.RestS3Service?.performRequest(RestS3Service?.java:339) at org.jets3t.service.impl.rest.httpclient.RestS3Service?.performRestHead(RestS3Service?.java:488) at org.jets3t.service.impl.rest.httpclient.RestS3Service?.isBucketAccessible(RestS3Service?.java:714) at org.jets3t.apps.synchronize.Synchronize.run(Synchronize.java:695) at org.jets3t.apps.synchronize.Synchronize.main(Synchronize.java:999) WARN org.jets3t.service.impl.rest.httpclient.RestS3Service? Unable to access bucket: AKIAJZGOOTROJFKH5FEA.crsSell-1.0-SNAPSHOT-tmp-war org.jets3t.service.S3ServiceException?: S3 HEAD request failed. ResponseCode?=403, ResponseMessage?=Forbidden at org.jets3t.service.impl.rest.httpclient.RestS3Service?.performRequest(RestS3Service?.java:339) at org.jets3t.service.impl.rest.httpclient.RestS3Service?.performRestHead(RestS3Service?.java:488) at org.jets3t.service.impl.rest.httpclient.RestS3Service?.isBucketAccessible(RestS3Service?.java:714) at org.jets3t.service.S3Service?.createBucket(S3Service?.java:499) at org.jets3t.apps.synchronize.Synchronize.run(Synchronize.java:697) at org.jets3t.apps.synchronize.Synchronize.main(Synchronize.java:999) Exception in thread "main" org.jets3t.apps.synchronize.SynchronizeException?: Unable to create/connect to S3 bucket: AKIAJZGOOTROJFKH5FEA.crsSell-1.0-SNAPSHOT-tmp-war at org.jets3t.apps.synchronize.Synchronize.run(Synchronize.java:702) at org.jets3t.apps.synchronize.Synchronize.main(Synchronize.java:999)