Ask Your Question
2

Is there a package like Google Cloud Messaging for OpenStack ?

asked 2014-06-27 02:40:18 -0500

rbk93 gravatar image

updated 2014-06-29 22:51:38 -0500

Hello OpenStack people,

I'm quite new using OpenStack and want to launch instances in a three-node architecture but not directly from the controller but from an android app. The server would have a list of games and the user could chose the game he wants from the app and then send a message to the cloud to launch a specific instance for this game (with the accurate ressources, etc.)

I see that there is a GCM (Google Cloud Messaging) package for android developers but is there a similar one for OpenStack for the use I need ?

Thanks,

Réda

edit retag flag offensive close merge delete

2 answers

Sort by » oldest newest most voted
3

answered 2014-06-30 13:11:32 -0500

Everett Toews gravatar image

To talk to an OpenStack cloud from Android you would need to use an SDK like OpenStackIntegration, or write your own message sending with Android's HttpClient or a 3rd party lib like OkHttp.

For your use case, I don't recommend any of them. Allowing users to talk directly to your cloud means they need to have their own credentials for your cloud or you would need to put your credentials in the app for them to use.

If they have their own credentials for your cloud then maybe using your cloud directly would work. But what if you want to change the architecture of the game they launch? You would have to ensure that everyone always has the most up-to-date version of your app and that's not possible. By putting that in your app you're exposing a lot of implementation details to your client.

If you would need to put your credentials in the app then that is something you should never ever do. Your app can be decompiled (pro-guard or not) and your credentials stolen.

My advice for you is to create a simple web service in your OpenStack cloud. Your Android app would then talk to this service (using HttpClient or OkHttp) and it would be your web service that launches instances in your cloud. Your web service could be written in any language and use one of the official OpenStack SDKs. Then you have more control over how games are launched and no security risks.

edit flag offensive delete link more

Comments

you are correct.

SGPJ ( 2014-07-01 00:50:58 -0500 )edit
0

answered 2014-07-09 09:33:35 -0500

rbk93 gravatar image

updated 2014-07-09 09:37:18 -0500

Hello. Thanks for your answer Everett. I see how to make the webservice and android app communicate. I've created a RESTful webservice that generates a JSON object from the GET/POST parameters it receives from the app. Nevertheless, I don't see how to launch instances on the cloud from the webservice. Is there any documentation or something helpful to know more about that ?

Réda

edit flag offensive delete link more

Comments

What programming language are you using? You might be able to find something that will help on http://developer.openstack.org/

Everett Toews ( 2014-07-10 22:39:49 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

[hide preview]

Get to know Ask OpenStack

Resources for moderators

Stats

Asked: 2014-06-27 02:40:18 -0500

Seen: 180 times

Last updated: Jul 09 '14