This document describes getting clients up and running for the first time.
Once we’ve got the GRR server installed and running we’ll want to start deploying some clients.
To do so we’ll need to:
- Download the specific client version we need to install on the system.
- Decide on a deployment method.
- Perform the deployment and verify the results.
- A number of machines (or VMs) to talk to the server. OSX, Windows and Linux clients are supported. Client and server can run on the same host for testing purposes.
Installing the Clients¶
If your server install went successfully, the clients should have been uploaded to the server with working configurations, and should be available in the Admin UI.
Click on “Binaries” in the left menu. The files should be in the executables directory, under installers.
If your server configuration has changed your clients will need to be repacked with an updated config. For details see the server documentation.
Installation steps differ significantly depending on the operating system so we split it into separate sections below.
Deploying at scale¶
There shouldn’t be any special considerations for deploying GRR clients at scale. If the server can’t handle the load, the clients should happily back off and wait their turn. However, we recommend a staged rollout if possible.
Client and Server Version Compatibility and Numbering¶
We try hard to avoid breaking backwards compatibility for clients since upgrading can be painful, but occasionally we need to make changes that require a new client version to work. As a general rule you want to upgrade the server first, then upgrade the clients fairly soon after.
Matching major/minor versions of client and server should work well together. i.e. Clients 220.127.116.11 and 18.104.22.168 should work well with servers 22.214.171.124 and 126.96.36.199 because they are all 3.1 series. We introduced this approach for the 188.8.131.52 release.
For older servers and clients, matching the last digit provided similar guarantees. i.e. client 184.108.40.206 was released with server 0.3.0-7 and should work well together.