Mass deployment
Roll Tenvyr agents out safely across a fleet with staged packages and one-use host enrollment.
Tenvyr's agent is designed for broad software distribution and controlled per-host enrollment. The package may be staged across the fleet, but each machine must enroll with its own short-lived, single-use token.
Rollout model
Use four phases:
| Phase | Scope | Exit condition |
|---|---|---|
| Lab | Disposable systems | Install, enroll, access, rollback, and removal pass |
| Canary | A few systems per OS and network zone | No SSH or agent-plane regressions |
| Wave | A bounded production group | Health and access metrics remain normal |
| Fleet | Remaining approved scope | Ownership transfers to normal operations |
Create host groups that reflect trust boundaries, not merely software rollout batches. Each host group has independent CA material and policy scope.
1. Prepare the fleet
Before changing hosts:
- verify supported operating-system and OpenSSH versions;
- confirm outbound HTTPS to
agents.tenvyr.com; - confirm administrators retain an independent emergency path;
- capture
sshd -tor the platform equivalent; - back up the SSH server configuration and authorized-keys state;
- decide who owns failed enrollments, rollback, and after-hours incidents; and
- define canary and halt thresholds.
Package verification must happen before installation. Obtain release artifacts and checksums from the controlled release channel used for your Tenvyr pilot.
2. Stage the package
Use your normal software-distribution system to place the signed Tenvyr package on every target:
- Linux: apt, rpm, Ansible, Puppet, Chef, Salt, or an equivalent;
- macOS: MDM, a signed
.pkg, or a managed software catalog; - Windows: Intune, Configuration Manager, Group Policy, or another enterprise deployment system.
Staging should install the executable and service definition without embedding an enrollment token. Keep the service stopped until the host-specific enrollment step.
3. Create host groups and policies
In Tenvyr:
- create the tenant project and host groups;
- choose names and labels that match inventory records;
- attach the intended access policies and privilege profiles;
- configure owners and reviewers; and
- record which deployment wave maps to each host group.
Moving a host across a trust boundary later should be treated as a controlled re-enrollment, not a cosmetic label change.
4. Enroll each host
A Tenvyr owner or administrator with recent MFA creates a one-use token for a specific host group. The token is shown once and expires after ten minutes.
For each machine:
- create a unique token immediately before enrollment;
- transfer it through a protected host-specific channel;
- write it to a root/administrator-only file;
- run the agent's one-time enrollment;
- verify the durable mTLS identity and reported host keys; and
- securely remove the transferred token material.
See Enroll a host for the exact endpoint and Linux command.
The current product deliberately requires an interactive privileged operator to mint host tokens. A fleet-wide service-account API for unattended token issuance is not part of the supported workflow. Plan wave staffing and ten-minute token windows accordingly.
5. Start reconciliation
After enrollment:
- start and enable the Tenvyr agent service;
- confirm its heartbeat in Tenvyr;
- confirm it reports expected OpenSSH host keys;
- apply a minimal desired state;
- validate the generated SSH configuration before reload; and
- make a real SSH connection using a pilot access grant.
The agent makes outbound connections to the Tenvyr agent plane. No inbound management port is required.
6. Advance or halt a wave
Advance only when:
- all hosts have a healthy agent identity and heartbeat;
- OpenSSH configuration validation succeeds;
- expected users can connect and unauthorized users cannot;
- independent administrator access still works;
- audit events arrive; and
- rollback was tested on at least one representative host.
Halt when host identity, SSH validation, authentication, or emergency access deviates from the plan. Do not normalize a failed canary as an installation exception.
Automation pattern
Separate fleet automation into two jobs:
Reusable job: verify package → install files → keep service stopped
Per-host job: receive unique token → enroll once → validate → start serviceThis keeps broadly distributed configuration non-secret and limits a captured enrollment credential to one host group, one use, and a short window.
Track each wave
Record:
- package version and checksum;
- host inventory ID and Tenvyr host ID;
- target host group;
- token issue and enrollment time (never the token value);
- validation results;
- operator or automation run ID; and
- rollback or exception outcome.