Comment on page
Computers are PowerShell Universal instances connected to the same database and git repository.
This feature requires a license. Each computer requires a license.
PowerShell Universal can connect multiple instances of the application to the same SQL database and git repository. Configuration files will be synchronized across the nodes via the remote repository. Jobs, computer groups, identities and app tokens will all be stored within the database and are visible on any accessible nodes.
Once a single node has been setup with a SQL database and git repository, additional computer can be connected by specifying the SQL connection string in
appsettings.json. See App Settings for information about settings. Configuration files will automatically be pull from the git remote on server startup and will setup the node with the same options as the other servers within the farm.
Note that Docker containers will have a unique computer name on startup. It's recommended to set the
NodeNamesetting in App Settings to set a static node name to avoid have many randomly generated computer names added to the database.
Computers will receive tags based on the several aspects of the service. These include:
- User Name
- Operating System
Computer groups are a collection of computers that share similar features. Each group accepts a set of tags that are required for the computers in the group. This will ensure that only certain scripts, APIs or apps run on particular groups.
Computer groups can be defined in the Admin console under Platform \ Computers in the Groups tab or with the
New-PSUComputerGroup -Name Windows -Tags @("windows")
Once a computer group is defined, APIs, scripts, schedules, jobs and apps can be restricted to certain nodes. The following app only runs on Windows nodes.
New-PSUApp -Name 'Windows' -FilePath 'app.ps1' -BaseUrl '/app' -ComputerGroup Windows
Computers can be set in maintenance mode. When a computer is in maintenance mode, it will not run scheduled jobs.