Yes, I tested using boto. I run two examples from doc https://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.0/html/Installation_Guide/aws-api-examples.html
EC2 test script works ok, without error. But in S3 I get a error, logs shows cze 28, 2013 11:08:44 PM org.apache.axis2.engine.AxisEngine receive SEVERE: The service cannot be found for the endpoint reference (EPR) /awsapi/services/AmazonEC2/ org.apache.axis2.AxisFault: The service cannot be found for the endpoint reference (EPR) /awsapi/services/AmazonEC2/ I tried to use other path like as You say, but error is still the same. host=http://localhost:7080/awsapi/rest/AmazonS3 storage.root=/mnt/S3 storage.multipartDir=__multipart__uploads__ bucket.dns=false serviceEndpoint=localhost:7080 I read this doc too, (this is for older version of CS) and still no luck. https://cwiki.apache.org/CLOUDSTACK/s3-api-in-cloudstack.html Any other ideas? BTW, my CS4.1 was build from source with nonOSS. Michael > On Jun 28, 2013, at 3:01 PM, Michael Lukzak <mis...@vp.pl> wrote: >> Maybe someone have idea why S3 fails with error EPR? >> On documentation there is nothing about EPR. >> I'm doing exactly like documentations says. Any clue? >> > How do you test the service ? boto ? > in your properties file it looks like the host is localhost:7080/awsapi > but you tried to get awsapi/rest/AmazonS3 > I think you need to fix the properties file. > can you try, > -sebastien >> Best regards, >> Michael >> >>> Hi, >> >>> I have tried to configure Amazon S3 in CS4.1 but I have a problem with >>> one error. API AmazonEC2 works (tested), but S3 not. >> >>> My steps >>> 1) I enabled S3 API (from UI) >>> 2) mkdir -p /mnt/S3 and owned to cloud.cloud >>> 3) In cloud-bridge.properties I set storage.root to /mnt/S3 >> >>> Now looks that: >>> host=http://localhost:7080/awsapi >>> storage.root=/mnt/S3 >>> storage.multipartDir=__multipart__uploads__ >>> bucket.dns=false >>> serviceEndpoint=localhost:7080 >> >>> 4) CS was restarted >>> 5) I generated new api key and secret key for user >>> 6) New private key and self-signet cert was generated and saved >>> 7) Using cloudstack-aws-api-register I registered user, all ok >> >>> And now I have a problem. >>> When I try to open a link >> >>> http://[MY_IP]:7080/awsapi/rest/AmazonS3/ >> >>> I will get error >> >>> <soapenv:Reason >>> xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> >>> <soapenv:Text xml:lang="en-US"> >>> The service cannot be found for the endpoint >>> reference (EPR) /awsapi/services/AmazonEC2/ >>> </soapenv:Text> >>> </soapenv:Reason> >> >>> I can't find what is wrong. >> >>> In catalina.out I found only this >>> czw 26, 2013 8:26:17 PM org.apache.axis2.engine.AxisEngine receive >>> SEVERE: The service cannot be found for the endpoint reference (EPR) >>> /awsapi/services/AmazonEC2/ >>> org.apache.axis2.AxisFault: The service cannot be found for the >>> endpoint reference (EPR) /awsapi/services/AmazonEC2/ >>> at >>> org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:65) >>> at org.apache.axis2.engine.Phase.invoke(Phase.java:334) >>> at >>> org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:254) >>> at >>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:160) >>> at >>> org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:135) >>> at >>> org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:130) >>> at >>> org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:825) >>> at >>> org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:271) >>> at >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:617) >>> at >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:717) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) >>> at >>> com.cloud.bridge.service.EC2MainServlet.doGetOrPost(EC2MainServlet.java:114) >>> at >>> com.cloud.bridge.service.EC2MainServlet.doGet(EC2MainServlet.java:84) >>> at >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:617) >>> at >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:717) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) >>> at >>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) >>> at >>> org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:415) >>> at >>> org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:342) >>> at >>> org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:286) >>> at >>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) >>> at >>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>> at >>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:555) >>> at >>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>> at >>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) >>> at >>> org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:889) >>> at >>> org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:721) >>> at >>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2274) >>> at >>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>> at java.lang.Thread.run(Thread.java:722) >>