Rhino compute down on production enviroment

Rhino compute seems to be down in our production environment and we cant seem to resolve the issue. We have tried redeploying and have even changed the token twice but that doesn’t seem to work. I am posting the error from the container logs. If you need any other information please let me know so I can provide it,


@AndyPayne @will

That’s sounds pretty bad. What changed when the instance went down? When did it go down first?

My recollection is that you’ve chosen to run this on Docker containers, which makes this a bit harder to debug. My first suggestion would be to start Rhino manually on the instance and verify that it starts. But… I don’t think you can get to a UI inside a docker instance.

I was going to suggest something similar. Either spin up a regular Windows Server VM with Rhino to test your token, or you could create a container image that only runs compute.geometry (not the rhino.compute parent process) – this should better surface the error that Rhino is throwing.

we are going to try to run rhino on a VM using our current token as a test. We are not using a container or a docker image just a VM on a windows machine. I will let you know how our test goes. Please provide any suggestions and ask any questions.

@davidmccuaig are you installing Rhino and/or Rhino.Compute on your VM using the boostrap script detailed here? Or are you just manually trying to install Rhino and the environment variable with your token to see if Rhino works? Also, are you installing Rhino 7? or Rhino 8? We haven’t really tested Rhino 8 on Windows Server yet, so I would suggest sticking to Rhino 7 for the time being.

@AndyPayne we are installing the latest version of rhino 7 using an URL, and using the token to see if the application runs on the VM.

1 Like

Ok. Thanks. Let us know your findings.

what is the best way to use the token locally? its automatically loading from the application license and we have even set the environment variable? We are using our code base, Mcneel front end, rhino 7 (latest version) and. dotnet is from latest visual studio: 7.0.403. Any suggestions would be greatly appreciated.

Sorry if this is too obvious and not an issue, but just because of the timing of your problem and the lack of any version information in your screenshot, I’m going to ask if there’s any possibility that the url now points to v8 since the release was yesterday.

The url on the main Rhino download page specifies version, but I’m just asking in case there’s another one somewhere which got auto-updated to point to 8.

Nathan has a good point. It would be good to verify that you installed Rhino 7 as Rhino 8 requires a completely different build of Rhino.Compute

this is the url we are using to download rhino 7 https://www.rhino3d.com/download/archive/rhino-for-windows/7/latest/

any suggestions on how we can help Roy utilize a token when running rhino.compute locally that wont automatically use the license on his Rhino 7 application?

I’m not sure I understand your question. The token is only there (in the environment variables) so that when you launch Rhino it will check that token against the license portal and confirm that it’s valid. So, the way to ensure that your token is working is as follows:

  1. Install Rhino 7 manually on the VM
  2. Follow the instructions here under the “Using Core-Hour Billing” section to make sure you’re token is stored as an environment variable.
  3. Launch Rhino. If everything loads correctly (meaning the UI likes normal and you can perform operations, etc. then you know your token is working and the error your seeing in your production environment is coming from something else. If Rhino isn’t launching correctly, then the error in your production environment is likely coming from something to do with the license configuration on your VM. Does that make sense?

Rhino only looks for a token when it’s running on Windows Server. If Roy is running Windows 10 or 11, it won’t use the RHINO_TOKEN.

Hi all,

We are experiencing the same issue. I first got the problem when I tried to update Compute and Rhino on our EC2 instance, after I did that, I couldn’t send POST requests to the EC2 instance, and the logs showed the same error as above “Unable to start local compute server”. So, I created a new EC2 instance and reran the bootstrap scripts and there seems be an error with the bootstrap script. It won’t download Rhino and it says there’s some error.

I ended up manually downloading Rhino and then now it works. Looks like the bootstrap script needs some fixing.

These two threads are the same problem I’ve been getting.
Compute server down after ec2 restart + bootstrap file issues - Rhino Developer / compute.rhino3d - McNeel Forum
Rhino Compute deployment - Error running bootstrap - Rhino Developer - McNeel Forum

Thanks

Thank you @Rivindu_Bandara. This is helpful for us to know where to investigate. We appreciate the feedback.

I logged https://mcneel.myjetbrains.com/youtrack/issue/WWW-2203/download-direct-broken

But I don’t think this problem is actually the OPs problem. Perhaps it is? @davidmccuaig are you sure Rhino is installed on the instance you’re testing? It certainly wouldn’t explain why a working instance would stop working.

Guys I would just like to start by saying thank you for all help, we are making progress together.

  1. @brian we do use that URL you posted to download the application on the image. However we don’t think that is the problem because we are able to preform a health-check and get good response. I am posting an image of the healthy return. Is there anything else we can do to be sure the issue Brian posted is not our problem?

  2. We are right about to test everything on a windows server to confirm that we are dealing with a token issue, and we have received these errors. What is the cause of the errors we are getting on the windows server? Is there any other information I can provide that would help you deduce the issue?


@davidmccuaig Again, I’m a bit confused… If you’re getting a Healthy return when you hit the /healthcheck endpoint, then everything should be working correctly which also means your token is working correctly. What happens if you try to hit the /activechildren endpoint on your “healthy” server?