The Deployment Manager agent was not designed to be cluster aware, I'm afraid. You would have to install DM agent specifically on each node. So, in the DM web portal, you'd create an environment and add each node in the cluster as an agent.

Making the Agent cluster-aware is something we want to do in the future. How, ideally, would you like it to work?

Thanks for your response. I haven't tried this live (and I don't have a test cluster setup) but I would imagine that attempting to deploy to the passive node would fail. As for how I think it should work:

Optimally I think that it should only attempt to deploy to the active node if its cluster aware.

Additional options: Allowing the Deployment Manager to have variables set by powershell script so that step 1 could be to execute a powershell script that sets the databaseServer variable to the active node.

You're right you would need to just deploy out to the active node. The only reason to do otherwise is if the changes took too long to replicate to the passive nodes, but that might involve disabling the clustering during the deployment which may not be ideal.

You mention wanting to set the databaseServer variable from PowerShell. If just deploying to the active node, you can just configure to point to the appropriate server using variables specified for each of the environments you need. Does this do what you need?

Technically yes, that would allow the deployment to go to only the active node. The reason I was mentioning being able to set a Deployment Manager variable from powershell (as a step of the deployment) is that it is possible to get the active node through powershell and the deployment could always be set to the active node.

It was just a thought about possible ways around the agent knowing about the cluster.

I see, yes that would be nice if it could auto-detect the active node. Would you still have to pass all of the nodes into the PowerShell for it to be able to work out which is active? If you can point me to any PowerShell to do this that would be great.

I think there are cleaner ways to do this (if you have access to run a powershell directly on the cluster) but the below script I worked up can determine the active node of a cluster remotely through the SQL Server.