Licode and high availability?

We are getting close to committing to using Licode as a piece of our vide
chat solution. As such we are now focusing on the high availability
aspects of Licode. We plan to run licode on AWS instances. What is the
best way to achieve high availability using Licode? Can it be load
balanced or should it be some kind of failover? What are the pieces of the
architecture that need to be common in a load balanced environment? For
example we would have a separate mongodb server. Do we need a separate
rabbitmq server as well? What else?

If anyone has a load balancing design that is working for them it would be
great to hear from you.

Thanks,

robo

Hi Alvaro,

We are just getting started with the separation now that we have the new
master branch. I am interested in both “high availability” as well as
“scalability”. Right now I have mongo separate as well as rabbitmq
separate. Mongo gives me high availability with the replica set and if I
need scalability I can go with sharding. I am learning rabbitmq clustering
right now with shared queues but I am hoping I can figure that out quickly.
So now down to licode. From what you said it appears that I can have
multiple erizoControllers - great. That gives me high availability. Now
the question is about nuve. Can I have multiple nuve servers? If so how
do I configure that. When I tried to run 2 licode servers configured to
use a shared mongodb and shared rabbitmq server I kept getting an error in
the ouput that says:

I received a keepAlive mess from a removed erizoController

when I start up the second server. At this point the first server ends
with:

I dont exist in cloudHandler. Im going to be killed

Any help in setting up multiple nuve servers would be great.

Thanks,

roboOn Friday, September 27, 2013 3:42:39 AM UTC-7, Álvaro Alonso wrote:

Hi,

yes, you can use Licode in a flexible and scalable environment using AWS
servers. The common node that manages the rest of modules is nuve. It
processes the clients requests and creates the videoconference rooms in
different erizo_controllers in function of their load and the amount of
rooms that they are already managing. So the component that scales is
erizo_controller. You have to run a new erizo controller process in each
new server and it will be connected to nuve using rabbitmq.

If you have any doubt ask us!

Furthermore, are working on improve the scalability in Licode it right
now, this is one of the most important features in our short term roadmap.

Best regards,
Álvaro

2013/9/25 robomon1 <robo...@gmail.com <javascript:>>

We are getting close to committing to using Licode as a piece of our vide
chat solution. As such we are now focusing on the high availability
aspects of Licode. We plan to run licode on AWS instances. What is the
best way to achieve high availability using Licode? Can it be load
balanced or should it be some kind of failover? What are the pieces of the
architecture that need to be common in a load balanced environment? For
example we would have a separate mongodb server. Do we need a separate
rabbitmq server as well? What else?

If anyone has a load balancing design that is working for them it would
be great to hear from you.

Thanks,

robo


You received this message because you are subscribed to the Google Groups
“lynckia” group.
To unsubscribe from this group and stop receiving emails from it, send an
email to lynckia+u...@googlegroups.com <javascript:>.
For more options, visit https://groups.google.com/groups/opt_out.

Álvaro

Hi,

yes, you can use Licode in a flexible and scalable environment using AWS
servers. The common node that manages the rest of modules is nuve. It
processes the clients requests and creates the videoconference rooms in
different erizo_controllers in function of their load and the amount of
rooms that they are already managing. So the component that scales is
erizo_controller. You have to run a new erizo controller process in each
new server and it will be connected to nuve using rabbitmq.

If you have any doubt ask us!

Furthermore, are working on improve the scalability in Licode it right now,
this is one of the most important features in our short term roadmap.

Best regards,
Álvaro2013/9/25 robomon1 robomon1@gmail.com

We are getting close to committing to using Licode as a piece of our vide
chat solution. As such we are now focusing on the high availability
aspects of Licode. We plan to run licode on AWS instances. What is the
best way to achieve high availability using Licode? Can it be load
balanced or should it be some kind of failover? What are the pieces of the
architecture that need to be common in a load balanced environment? For
example we would have a separate mongodb server. Do we need a separate
rabbitmq server as well? What else?

If anyone has a load balancing design that is working for them it would be
great to hear from you.

Thanks,

robo


You received this message because you are subscribed to the Google Groups
“lynckia” group.
To unsubscribe from this group and stop receiving emails from it, send an
email to lynckia+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Álvaro

Hello guys,

I’m also very interested with high availability and scalability of Licode.
As first step I’d like to separate Nuve and Erizo. I tried to install it on
separate servers.
As rabbit host I use Nuve server’s IP and set testErizoController Erizo
server’s IP instead of localhost. I copied licode_config.js to Erizo server.
Both servers seems to connect each other when running scripts parts, but
I’m getting error “[Auth] Unknown service ” when I try to run
basic example even keys are the same on Nuve and Erizo server.

Thanks for any advice.

Dňa streda, 25. septembra 2013 19:37:35 UTC+2 robomon1 napísal(-a):>

We are getting close to committing to using Licode as a piece of our vide
chat solution. As such we are now focusing on the high availability
aspects of Licode. We plan to run licode on AWS instances. What is the
best way to achieve high availability using Licode? Can it be load
balanced or should it be some kind of failover? What are the pieces of the
architecture that need to be common in a load balanced environment? For
example we would have a separate mongodb server. Do we need a separate
rabbitmq server as well? What else?

If anyone has a load balancing design that is working for them it would be
great to hear from you.

Thanks,

robo