For developers: running #vanilla MaNGOS as docker containers

Discussion forum related to Nostalrius Begins in general.

For developers: running #vanilla MaNGOS as docker containers

by wowmad » Wed Apr 20, 2016 10:11 am

I saw this post on twitter and I thought that some realm developers would be interested in...
Daniel Reichenbach wrote:Coming soon(tm), running #vanillawow based on MaNGOS as docker containers on your favorite cloud provider. #YouThinkYouDoButYouDont

https://twitter.com/marenkay/status/722726117526872064
WowMad
Against any intolerance in the form of confrontation over the beautiful people
User avatar
wowmad
Senior Sergeant
Senior Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by theluda » Wed Apr 20, 2016 10:25 am

Current plan is to allow people to spin up realm and world servers on their own, so one container with auth, one with the world. If anyone wants to test, alpha will be available within the two weeks.
theluda
Sergeant
Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by umandez » Wed Apr 20, 2016 10:48 am

Please don't do this, it's not going to help anything really there are plenty of repacks out there if people want to do this. We don't need 1000000 vanilla servers popping up.
umandez
Sergeant
Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by wowmad » Wed Apr 20, 2016 10:51 am

I have some curiosity in how we can implement clusters with docker, I read the following post http://stackoverflow.com/a/29017596 and thought that maybe Kubernetes is the best option to choose.

What is your opinion about that?
WowMad
Against any intolerance in the form of confrontation over the beautiful people
User avatar
wowmad
Senior Sergeant
Senior Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by theluda » Wed Apr 20, 2016 10:52 am

umandez wrote:We don't need 1000000 vanilla servers popping up.

Honestly, I could not care less. We already have thousands of crappy servers and everyone does their own shit.

This will be one source for running servers based on the official sources. This also means, fixes done will roll out to every server using this automatically.
theluda
Sergeant
Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by theluda » Wed Apr 20, 2016 10:57 am

wowmad wrote:I have some curiosity in how we can implement clusters with docker

I am running a few larger Docker swarms at work, and Kubernetes is more or less overkill, unless we're talking about thousands of servers. The default Docker swarm with consul/etcd for service registration and a decent failover configuration is sufficient for this.

What I am more concerned about is that to make this work, is to resolve the hard dependency from the world server on the realm database. Unless this is resolved by proper solution, clustering/failover/etc. will not be a reality.

For now the Docker containers will just allow you to spin up both servers using Docker compose command, so you just have to edit some environment variables to start.

Running realm and world containers on different systems will come next.
theluda
Sergeant
Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by wowmad » Wed Apr 20, 2016 11:32 am

theluda wrote: ...
What I am more concerned about is that to make this work, is to resolve the hard dependency from the world server on the realm database. Unless this is resolved by proper solution, clustering/failover/etc. will not be a reality.
...

I'm not inside the MaNGOS code, but if someone explain to me the current environment, I can try to help.

Database clusters are easy to implement (you only need the service running and replication of database folder), the problem could be more the middleware and how to handle the world server communication requirements... (I don't know what is required, so I imagine that could be complicated)
WowMad
Against any intolerance in the form of confrontation over the beautiful people
User avatar
wowmad
Senior Sergeant
Senior Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by theluda » Wed Apr 20, 2016 12:15 pm

wowmad wrote:I'm not inside the MaNGOS code, but if someone explain to me the current environment, I can try to help.

Currently realm and world server both access realm database, so you need MySQL connection between instances. Works, but is not a good thing. Would be better to have some service as middleware for transferring sessions between realm and world server.
theluda
Sergeant
Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by wowmad » Wed Apr 20, 2016 12:58 pm

theluda wrote: ...
Currently realm and world server both access realm database, so you need MySQL connection between instances. Works, but is not a good thing. Would be better to have some service as middleware for transferring sessions between realm and world server.

I prefer PostgreSQL because has much more features... and for a game like wow is nice to have a database that supports geographical data. I verified now, you can install "Mysql spatial extension"!
I know that MaNGOS was developed using C Programming Language (C, C++ or C#), but even if I know Java better, I can develop in any language (only take more time).

I notice that you already know that you can share a database web service to be consumed in the language you want, but I think the problem could be the MySql, with PostgreSQL you can solve much more problems inside database, while in MySql you need to go application development.
WowMad
Against any intolerance in the form of confrontation over the beautiful people
User avatar
wowmad
Senior Sergeant
Senior Sergeant
 

Re: For developers: running #vanilla MaNGOS as docker contai

by theluda » Wed Apr 20, 2016 2:06 pm

I'd say that does not really matter because MaNGOS can use Postgres too. What I was talking about was, that the communication between realm list and world server should not be done by passing values through the database at all. :-)
theluda
Sergeant
Sergeant
 

Next

Return to General discussion