Not able to connect to repository hosted on a cloud VPS

Hi guys,

Would be awesome if I could get some help with this. At first I had set up Deadline to be able to render on my two machines at home (without a certificate and remote connection), and then I had to move one of the PC’s (PC2) to an office. So instead of using the remote connection, I tried to use Tailscale to connect to the repository which is on a shared network drive on PC1. Tailscale works perfectly, and I can access the shared folder in Windows, but Deadline isn’t able to connect to the repository for some reason, and I get an error.

Then I tried to instead host the repository folder on a VPS that I set up, so that the repo could be online at all times and be accessible from both PC’s using Tailscale. Again, the shared VPS folder works perfectly in Windows on both machines, and I can access the folder. But Deadline can’t connect to the repo, and I get the exact same error.

Any ideas on how to solve this? Would be awesome to be able to have the repo on a VPS. I should mention that I get the same error both from PC1 at home and PC2 at the office, so I doubt that it is a network/firewall issue. Also since I can access the folder fine from both PC’s in Windows.

This is the error I get in both cases:

The specified repository path (Z:) does not exist or is not accessible from this computer.

There may be a network issue, or a valid repository has not been installed at this location. If one has not yet setup a repository, it is possible to do so using the repository installer included in the installation files.
at Deadline.StorageDB.RepositoryConnect.DirectRepositoryStorage.ValidateRepositoryRoot(String rootDirectory, X509Certificate2 dbCert)
at Deadline.StorageDB.RepositoryConnect.DirectRepositoryStorage…ctor(RepositoryConnectionSettings repositoryConnectionSettings, Int32 connectionPoolSize, Boolean leanConnect, X509Certificate2 dbClientCert, X509Certificate2 rootCA, Boolean skipVersionCheck, Boolean isRCS, DataControllerUpdateClient updateClient, HttpClient httpClient)
at Deadline.StorageDB.RepositoryConnect.DirectRepositoryStorage…ctor(RepositoryConnectionSettings repositoryConnectionSettings, X509Certificate2 dbClientCert, X509Certificate2 rootCA, Boolean skipVersionCheck, Boolean isRCS, DataControllerUpdateClient updateClient, HttpClient httpClient)
at Deadline.StorageDB.RepositoryConnect.RepositoryStorageManager.ConnectToRepository(RepositoryConnectionSettings connSettings, Boolean skipVersionCheck, DataControllerUpdateClient updateClient, HttpClient httpClient)
at Deadline.Controllers.DataController.ConnectToRepository(RepositoryConnectionSettings connectionSettings)
at Deadline.Controllers.DataController.SetupConnectionSettings(RepositoryConnectionSettings connSettings)
at Deadline.Controllers.DataController.Initialize(RepositoryConnectionSettings connSettings)
at Deadline.Controllers.DataController…ctor(RepositoryConnectionSettings connSettings)
at Deadline.Applications.DeadlineApplicationManager.CreateDataController(RepositoryConnectionSettings connSettings)
at Deadline.Applications.DeadlineApplicationManager.Connect(RepositoryConnectionSettings connSettings, Boolean updateScriptManager)
at Deadline.Monitor.MonitorManager.Connect(RepositoryConnectionSettings connectionSettings, Boolean updateScriptManager)
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)

Update: Made it work at home with PC1, Deadline connects successfully to the Repo hosted on the VPS. But still can’t connect from the office…

We have a similar setup, a repo on VPS, all connected in a VPN.

Is your connection using client certificates?
How are you mounting the z: drive? Is it smb?
Is the deadline node also on Windows?

Hi, thanks a lot for the reply!

I’m not using certificates. Yeah I think that I’m using SMB, I did this to mount the drive: Explorer → This PC → Map network drive. Not sure what you mean by the Deadline node. I’ve got both the monitor and the worker installed on both machines.

After a bit of back and forth with ChatGPT I realized that the error I get on PC2 (at the office) mentions two different IP addresses for some reason (attached a screenshot). The first one is the VPS IP, and the second one is for PC1. It also mentions PC1 as the host.

So what I think is happening is that MongoDB is still on PC1 and that’s why PC1 is able to connect, but PC2 isn’t able to connect to MongoDB because it can’t connect to PC1.

As a humble CG artist this is so tough to figure out. Do you guys host MongoDB on the VPS too? Haven’t figured out a way to do that yet if that’s the issue.

I

Okay so while writing my reply I had an idea which ended up working in a way. Since I’m connected to PC1 with Tailscale on PC2: I just changed the IP address in the Repo folder → settings → connection to the IP for PC1 created by Tailscale and it worked!

It’s not the best solution because now PC1 has to be on for PC2 to be able to connect to the repo on the cloud VPS which is kinda almost like having the repo on PC1 again: But at least it’s working for now!

It seems to me that your Repository is not set up correctly - it is trying to reach the database on a 192.* (local) IP, while you should be using your tailscale IP.
As the message says, you can change this from RepoPath\settings\connection.ini, property Hostname.

Indeed it might be easier to host MongoDB on the VPS. I personally recommend a container setup - the database and the repo can live in Docker containers, which isolates them from the host machine, and makes them easier to handle. It does take some fiddling, though.