Digital Man,
I was curious if you could direct me to any existing documentation or example high-level configuration examples of how to configure Synchronet to split nodes between physical computers / virtual machines.
I've been toying with SBBS over NFS in my home lab, but I continue to run into file locking issues with the .dab files unless I disable local locking on the NFS mount.
Would you be willing to share some insight for how you have VERT and CVS configured? Are you using NFS, CIFS, or another method? Are there any particular tips/tricks/cavaets about your configuration that you can share?
I'm also interested to know what specific folders you host off of shared storage versus what you install locally on each physical node.
Thanks,--- Synchronet 3.18a-Win32 NewsLink 1.113
-WitNik
Digital Man,
I was curious if you could direct me to any existing documentation or example high-level configuration examples of how to configure Synchronet to split nodes between physical computers / virtual machines.
I've been toying with SBBS over NFS in my home lab, but I continue to run into file locking issues with the .dab files unless I disable local locking on the NFS mount.
Would you be willing to share some insight for how you have VERT and CVS configured? Are you using NFS, CIFS, or another method?
Are there any
particular tips/tricks/cavaets about your configuration that you can share?
I'm also interested to know what specific folders you host off of shared storage versus what you install locally on each physical node.
Re: Vertrauen / SBBS / Shared Storage Configuration
By: Digital Man to Witnik on Sat Aug 01 2020 12:04 pm
DM,
Thanks for the detailed reply. When I use the CIFS approach, most everything seems to work great and I don't get the odd locking issues with the .dab files like I do with most NFS-related configs; however, I haven't quite figured out the mount options to successful create the spy sockets. Could you share how you worked around this?
I am probably not passing the proper
mount parameters on the client, or need to place some advanced foo that escapes me on the SAMBA server for the share.
I use a different sbbs.ini file for each set of nodes (e.g. sbbs.cvs.ini, sbbs.vert.ini), using the First/LastNode settings to separate them.
I'm using CIFS (Samba).
I share my entire sbbs tree between all 3 instances. Only BBS "temp" directories are local.
Re: Vertrauen / SBBS / Shared Storage Configuration
By: Digital Man to Witnik on Sat Aug 01 2020 12:04 pm
I use a different sbbs.ini file for each set of nodes (e.g. sbbs.cvs.ini, sbbs.vert.ini), using the First/LastNode settings to separate them.
Ok, this makes sense because I've seen the command line switches.
I'm using CIFS (Samba).
Ironically, it is more stable in my tests on Linux than multiple flavors of NFS with SBBS.
I share my entire sbbs tree between all 3 instances. Only BBS "temp" directories are local.
While I don't plan on hosting windows binaries on the share, I would like to have AMD64 & ARM7 with Debian, as my goal is to have a non-public nodes for testing on WSL on my Windows computers that shares a common configuration and my prod lifecycle on my RPi4. Since the symbolic links persist between systems, how would you separate the architecturally different binaries?
I
could create separte exec folders, but I'm unsure about what components are shared. I could also just create different manual symlinks for each architecture like sbbs-arm and sbbs-x64. Would it be detrimental to leave temp and exec local for ease of deployment?
While I don't plan on hosting windows binaries on the share, I would like to have AMD64 & ARM7 with Debian, as my goal is to have a non-public nodes for testing on WSL on my Windows computers that shares a common configuration and my prod lifecycle on my RPi4. Since the symbolic links persist between systems, how would you separate the architecturally different binaries?The binary executables don't *have* to be located in your sbbs/exec directory. But if you want to keep the binaries in exec, it would take some reconfiguring, but you could make a sub-directory for different Linux archs (e.g. exec/linux-arm64/* and exec/linux-amd64/*) or tack the architecture onto the filenames (e.g. exec/sbbs-linux-arm64). Then your command-lines in SCFG which execute anything from exec (%! prefix), you'd need to add the achitecture and currently there's no command-line specifier ("%x") to achieve that.
No detriment to having exec as a local directory. That's one of the reasons the location is configurable in SCFG. Just make sure if you modify something in exec for one server/instance, you do so for the others too. That's a good reason to use the mods directory (which could/should remain shared).
Re: Vertrauen / SBBS / Shared Storage Configuration
By: WitNik to Digital Man on Sun Aug 02 2020 01:56 pm
Digital Man,
The local temp directory did the trick, but it seems I record 1 error now on the latest build:
8/3 00:22:50 stat Unable to bind to /sbbs/ctrl/status.sock
Are you exeriencing this error with your config?
If I move the ctrl
directory to a local disk (non-SAMBA share) it works fine. I've tried mounting CIFS with the sfu option to see if that helped, but it hasn't made a difference.
Re: Vertrauen / SBBS / Shared Storage Configuration
By: WitNik to Digital Man on Mon Aug 03 2020 12:30 am
Re: Vertrauen / SBBS / Shared Storage Configuration
By: WitNik to Digital Man on Sun Aug 02 2020 01:56 pm
Digital Man,
The local temp directory did the trick, but it seems I record 1 error now on the latest build:
8/3 00:22:50 stat Unable to bind to /sbbs/ctrl/status.sock
Are you exeriencing this error with your config?
No, but my non-local servers are running Windows (not *nix), so that status.sock thing isn't used on them.
Looking at that status socket stuff (I didn't write), it looks like it takes the filename from the sbbs.ini filename specified on the sbbs command-line. So if you use an sbbs.ini file on the local system, not in the ctrl directory, then it should use that location as the base of the status.sock filename. At least, that's what it looks like to me.
If I move the ctrl
directory to a local disk (non-SAMBA share) it works fine. I've tried mounting CIFS with the sfu option to see if that helped, but it hasn't made a difference.
I imagine unix domain sockets require a real (not network-share) file path.
digital man
This Is Spinal Tap quote #43:
I feel my role in the band is ... kind of like lukewarm water.
Norco, CA WX: 64.1øF, 88.0% humidity, 0 mph S wind, 0.00 inches rain/24hrs
I imagine unix domain sockets require a real (not network-share) file path.
Awesome! I'll try relocating the .ini file. Thank you!
For others who may be interested this is what I've found to be most successful/stable so far for my RPi 4 running Raspberry PI OS (Buster):
cifs:
//nas/bbs /mnt/bbs cifs credentials=/root/.cifscreds,dir_mode=0770,file_mode=07 70,uid=uid#,gid=gid#,iocharset=utf8,rsize=8192,wsize=8192,exec,mfsymlinks 0 0
Sysop: | Chris Crash |
---|---|
Location: | Huntington Beach, CA. |
Users: | 577 |
Nodes: | 8 (0 / 8) |
Uptime: | 62:29:14 |
Calls: | 10,734 |
Calls today: | 1 |
Files: | 5 |
Messages: | 442,643 |