|
|
 |
 |
 |
 |
|
 |
 |
|
 |
 |
|
 |
|
Support::Windows Servers Support forum for Windows EQEMu users. |

04-22-2008, 11:07 AM
|
Discordant
|
|
Join Date: May 2006
Posts: 356
|
|
I didn't even try to use one area for the quest, I have them on both servers, as this too would probably help keep the load balanced, unless it's world that's running all the quests anyway. Coders will have to let us know if the code allows for drive changes to the locations or just folder/directory changes.
If you get the Templates running, you can start up your world and then LOCK it via the Templates OR, make it LOCKED by default on boot up and then UNLOCK it when all the ones are up.
Glad I was able to help you get it up and running.
__________________
Random Segments of Code....
|
 |
|
 |

04-22-2008, 02:48 PM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
Well, nexus crashed and for some reason restarted on 7050 which made the zone unreachable. I don't know why it would restart on another port when port 7002 was still available...
Code:
delveb (delveb) 7000 Players View Log Restart - Kill
potimeb (potimeb) 7001 Players View Log Restart - Kill
solrotower (solrotower) 7003 Players View Log Restart - Kill
veeshan (veeshan) 7004 Players View Log Restart - Kill
Dynamic: Idle 7039 Players View Log Restart - Kill
Dynamic: Idle 7040 Players View Log Restart - Kill
Dynamic: Idle 7041 Players View Log Restart - Kill
Dynamic: potimeb (potimeb) 7042 Players View Log Restart - Kill
Dynamic: frozenshadow (frozenshadow) 7043 Players View Log Restart - Kill
Dynamic: Idle 7044 Players View Log Restart - Kill
Dynamic: Idle 7045 Players View Log Restart - Kill
Dynamic: povalor (povalor) 7046 Players View Log Restart - Kill
Dynamic: Idle 7047 Players View Log Restart - Kill
Dynamic: stillmoonb (stillmoonb) 7048 Players View Log Restart - Kill
Dynamic: Idle 7049 Players View Log Restart - Kill
nexus (nexus) 7050 Players View Log Restart - Kill
Anyone that has been running a server with multiple zone servers for a while able to lend a hand, please lol?
|
 |
|
 |

04-22-2008, 07:09 PM
|
Discordant
|
|
Join Date: May 2006
Posts: 356
|
|
Quote:
Originally Posted by trevius
Well, nexus crashed and for some reason restarted on 7050 which made the zone unreachable. I don't know why it would restart on another port when port 7002 was still available...
Anyone that has been running a server with multiple zone servers for a while able to lend a hand, please lol?
|
Then you may want to rethink your launching setup... The Launcher has to connect to world and you said you are starting the zone server first, so it may start it's zones first, but now World see's the higher zone numbers last. I would start the world locked and wait until all zones are up and running, then unlock the world, but that's just me.
__________________
Random Segments of Code....
|
 |
|
 |

04-22-2008, 07:47 PM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
The problem is that there is no way to set a zone server to use any specific port when a zone crashes and restarts. It will just use the next available one, but I don't think it ever uses the same one it was on before.
Unfortunately, this means that there is no way in the current system for me to setup my servers to run zones on both of them without risking zones being unavailable due to being on the wrong port.
I am going to make a post in the bugs section about the launcher_zones table port setting being completely pointless. I am also going to make a feature request for an entry in the config file to let it set port assignment per zone server.
Code:
<zones>
<defaultstatus>0</defaultstatus>
<!-- Sets port range for world to use to auto configure zones -->
<ports zonea low="7000" high="7049"/>
<ports zoneb low="7050" high="7100"/>
</zones>
With "zonea" being the name of the zone launcher set in the start.bat file (start eqlaunch.exe zonea) of the world server and "zoneb" being the name of the zone launcher set in the zone server batch file (start eqlaunch.exe zoneb).
I think that would be the simplest solution. And again, once I get this all worked out, I will write up a nice guide in the wiki for it.
I hope I don't get mattmeck'd (tm) for making double posts! This post here is for support, the bug post I am going to make is to get the ports issue filed as a bug and the feature request post is the one to request a new setting in the config file. IMO, those are all separate even though they do all relate to this one same issue. Maybe posting the right things in the right places will get them looked at by the right people.
|
 |
|
 |

04-22-2008, 07:54 PM
|
Discordant
|
|
Join Date: May 2006
Posts: 356
|
|
What happens is when a zone crashes, it restarts on the next highest zone port above the last one used. I had dynamic zones boot from the zonew (World Server) 1st on ports 7000 thru 7004. I logged in and zoned into a dynamic zone and crashed the zone. When it restarted it was on port 7011 which was the next zone number in the queue so to speak. I crashed it again and it restarted on 7012... AND both times it restarted on the zonez server where it was originally on the zonew server. but... I was still able to get into the zone because port 7011 was forwarded to the server with zonez where it restarted.... So, it appears to restart on the next port in line and on the last zone server used.
It just keeps getting better.....
__________________
Random Segments of Code....
|
 |
|
 |

04-22-2008, 08:14 PM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
Ya, if I wanted to run all dynamic zones, this wouldn't be an issue. The reason I am setting this up in the first place is because one of my raid zones gets over 20 players quite often and on the world server, it is too much for it to handle and it crashes ALOT! I am sure this is more than a little annoying to my players. So, I am setting it and 4 other heavy traffic zones to run on my main PC which has much more ram and a faster CPU. This should increase overall stability by a great amount and maybe even let me have more players on my server. So, I need to have static zones setup to run on the zone server. I don't want to just split the dynamics between servers.
The problem is if I set a zone to static, and no matter what port I actually start it on (before or after the dynamics on the world server are all loaded), I can get it working fine. But as soon as it crashes, the zone will have a big risk of starting on the wrong port dynamically and since it is specified in the launcher_zones table to launch that static zone on my secondary zone server, it will be unavailable to players.
Now, this issue wouldn't be too bad if my zones stayed up all of the time. I am sure the ones on my zone server PC would be pretty stable there. But, I use a zone resetter quest script that I wrote to reset each of these zones after they have been up a certain number of hours. Nexus is set to reset after 4 hours, which is basically restarted the same as if the zone had crashed. I need the zone resetter to deal with the player ghosts issue that apparently only occurs on Windows.
|
 |
|
 |

04-23-2008, 05:22 AM
|
Discordant
|
|
Join Date: May 2006
Posts: 356
|
|
It seems that the only way to make this really work, is that it has to be changed in the code.
Does anyone know what the zone_server table is for in the DB? I added in a zone there and it picked up the last_alive time, so it's in the code some where. Seems you could edit in the zones and port and have the code look at what port the zone is supposed to be on and reload with that port number?
Wondering why we haven't heard from any of the Ops who run multi-servers?
__________________
Random Segments of Code....
|
 |
|
 |

04-23-2008, 07:53 AM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
I PM'd Cavedude directly and this is what he had to say about it:
Quote:
Under Linux, creating a symlink from the world quest folder to the daughter zone directory works perfectly. However, I doubt this will work under Windows (though, give it a try.) Under Linux, a symlink is a true shortcut to the folder/directory and is treated the same as if it were the normal data. Windows, however will often treat the shortcut for what it is, nothing more than a file with the destination folder/file info contained within. This is especially true over a network and will often cause situations like this to fail. I am pretty certain EQEmu looks for the quests folder in a sub directory of the main binary directory, so specifying a path in eqemu_config.xml will likely fail. So, the only thing you are left with is to have a separate quest folder. That isn't so bad, however as that's one less thing zone will need to communicate to the world server for. The more self reliant it is, the better off it is.
As for the zones taking over new ports when they crash... That's a problem with EQEmu and it bothers the hell out of me. When a static zone crashes or is shut down it becomes dynamic, including taking over a port reserved for dynamic zones when it comes back up. It also has the inherent problem of clearing spawn timers, so nameds pop back up and player corpses don't depop/move to GY/SR. I've asked a few times to get this behavior changed so static zones will reboot as static zones, eliminating all of these problems but it looks like a major overhaul of the system would be required. In my case, I have two machines on different networks so my ports can overlap. If you're on the same network, that's not an option obviously (unless you want to get into port/IP forwarding/spoofing, which can get messy and pretty much requires Linux). My only suggestion is to prevent static zones from rebooting automatically in variables (hopefully that still works). You'll then lose a static zone of course, however the zone that crashed should open on the dynamic server the next time a player tries to enter it, making it accessible. You'll just need to keep an eye out on how many zones you have available since they won't auto-boot after a crash. You may want to give yourself extra dynamics since it's very uncommon to crash a dynamic instance to the point where it won't re-open (though, I have seen that on TGC, sadly)
I hope this helps, and if you have anymore questions, feel free to ask.
|
IMO there has to be another way to do this, so I might try contacting some of the other server admins that I am pretty sure use multiple zone servers. I think KMRA uses a few and probably TZ/VZ too. Maybe TheLieka can help. I might try bugging him about it tomorrow :P
|
 |
|
 |

04-23-2008, 06:23 PM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
Quote:
Originally Posted by Aramid
It seems that the only way to make this really work, is that it has to be changed in the code.
Does anyone know what the zone_server table is for in the DB? I added in a zone there and it picked up the last_alive time, so it's in the code some where. Seems you could edit in the zones and port and have the code look at what port the zone is supposed to be on and reload with that port number?
Wondering why we haven't heard from any of the Ops who run multi-servers?
|
I tried setting up this table with 5 zones and it didn't seem to have any effect at all. I am guessing this might be an old table that isn't used anymore for anything. It is empty by default and I have never seen any info on what to put in there.
|
Thread Tools |
|
Display Modes |
Hybrid Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 03:37 PM.
|
|
 |
|
 |
|
|
|
 |
|
 |
|
 |