josh-grant;15466 wrote:* Ran the following:
Code:
sc create "NCrunch Grid Node Service" binPath= "C:\NCrunch Grid Node Server\NCrunch.GridNode.Service.exe" start= auto
(FYI You might want to update the manual installation docs to use "sc.exe" instead of "sc" as I got set-content issues in newer versions of powershell)
When using NCrunch.GridNode.Console.exe, you won't need to register the service. Actually, registering the service could give you trouble, as you might end up with two different processes fighting over the same listening port. Basically, you can skip this step.
That's a good tip about sc.exe. I've updated the instructions.
josh-grant;15466 wrote:
* I then tried running the console.exe but it wasn't listening on the correct port.
All settings for the node (console or service) go via the registry. You'll want to make sure this is updated with your chosen settings and password well before you start the application.
josh-grant;15466 wrote:
* I then hesitantly used the wizard (as my solution can't use wizards, I just wanted to get something working again) to force a port change
I agree the wizard doesn't make sense in your scenario. It's intended for streamlining configuration of a manually installed node with some basic settings, but isn't suitable for specific configuration changes. For this one, it's better to use the grid node's configuration tool instead (with your registry automation for the proper boot sequence).
josh-grant;15466 wrote:
* I tried to connect via my visual studio and just stuck on connecting :(
I know this probably seems like I'm reading off a script, but check the firewalls. If the client is stuck on 'Connecting...' it means no TCP connection could be established at all. This usually points to a network issue of some kind.
josh-grant;15466 wrote:
Today I also just added a "restart-computer" at the end of my original boot script to see if that would help with clearing sockets, which seemed to work the first 2 times I terminated the EC2 instance and waited for a new one to pop up, to which I could connect successfully. On the 3rd termination as I have never been able to have a stable Ncrunch server, it failed and now I'm back to the "Negotiating" issue :(
Not sure about this pattern. Does your script change anything in the settings on boot? Is there perhaps something in the boot sequence that might mess with the node? Try turning on detailed logging in the node settings and see if you get any indication in the logs of a connection trying to happen.
josh-grant;15466 wrote:
I gotta admit, this is really frustrating and I may have to ditch this effort if I can get this automated, which is frustrating because it sometimes works, then sometimes doesnt :(
I think it's fair to be frustrated on this one.
We didn't design the grid node with this use case in mind. Generally, when people set up grid nodes in cloud based instances, they'll install the node and configure the machine, then either clone the pre-configured instance as needed or just leave it asleep to be woken as required. One of the biggest problems of the MS tool stack IMHO is that it is heavily reliant on system install state which makes fully programmable instances difficult to automate. At the time the grid nodes were originally developed, everyone was using VS2012, which needed to be present on the grid node in one form or another (i.e. build tools). Having an easy to automate installation of the NCrunch grid node seemed of little use when the node would likely require hours of manual configuration and setup anyway.
I would very much like the toolset to be a lighter, simpler thing to install. It's definitely getting better, so that's positive at least.
If setting up nodes in this way becomes more popular, we could look at making things simpler when it comes to settings. Like letting the node use an XML file instead of the registry, or letting you pass in configuration overrides via command-line.