cloudstack-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Prachi Damle <Prachi.Da...@citrix.com>
Subject RE: CS4.1 S3 AWS, problem with End Point Reference
Date Mon, 08 Jul 2013 19:16:51 GMT
Hi Michael,

I haven't worked with S3 API, I have woked on EC2 only.  But if you are facing any errors,
I suggest to take a look at following log files under your installation:
awsapi.log / catalina.out

These files should show more information about why your requests fail.

Prachi

-----Original Message-----
From: Michael Lukzak [mailto:miszko@vp.pl] 
Sent: Monday, July 08, 2013 11:53 AM
To: Sebastien Goasguen
Cc: users@cloudstack.apache.org; Prachi Damle
Subject: Re: CS4.1 S3 AWS, problem with End Point Reference

Hi!

I do some steps. I installed a fresh OS and CS v4.0.2 (from RPS).
After configurations (amazon ec2 and s3 are enabled, cloud-bridge configured, etc.) S3 works.
When I go to adress
http://[ip]:7080/awsapi/rest/AmazonS3 I got response "Bad request" which is good answer ;)

Boto works, and I can make bucket, read and write file.

When I do the same steps but I use v4.1 there is a problem with endpoint. So it seems that
there is only problem with v4.1.

BTW anyone has a good expierence with S3 Broswer or other similiar software?
I tried use this S3 Broswer but I stuck on some error.

S3 Broswer don't want to talk with custom endpoint if he looks like http://[ip]:7080/awsapi/rest/AmazonS3
So I proxied it to http://[ip] and S3 Broswer start communicating.
Now I have problem with cert keys, but there is a progress :) I write some news if I go further.

--
Michael

> Prachi, I am copying you on this thread, you might have some ideas.

> thanks,

> -sebastien

> On Jun 28, 2013, at 8:11 PM, Michael Lukzak <miszko@vp.pl> wrote:

>> I do fresh install (I used RPMs from website).
>> EC2 and S3 are enabled (I turned off and turned on).
>> EC2 works, but S3 not.

>> Reponse from boto:
>> boto.exception.BotoServerError: BotoServerError: 500 Internal Server 
>> 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/?max-keys=0</soapenv:Text></soapenv:Reason
>> >

>> So I don't know next I should do...
>> I should try too change hosts or serviceEndpoint in cloud-bridge.properties?
>> But what serviceEndPoint should be?
>> I tried to use endpoint like /awsapi/rest/AmazonS3 but still the same.

>> Can someone reproduce this steps and check if S3 works ?

>> Best regards,
>> Michael

>>> Yes, I tested using boto.
>>> I run two examples from doc
>>> https://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.0/htm
>>> l/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 <miszko@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)








Mime
View raw message