
This feature is currently in Beta. Update to the latest Hoop version to access it.
What You’ll Accomplish
Parallel Mode lets you run the same command across multiple resource roles at once. Instead of connecting to each server individually, you can:- Restart services across multiple servers simultaneously
- Run the same query on multiple databases
- Execute maintenance scripts on all production hosts
- Check status across your entire infrastructure
How It Works
Quick Start
Step 1: Open Parallel Mode
- Go to the Web Terminal in the Hoop Web App
- Click the Parallel Mode toggle in the top-right corner
Step 2: Select Resources
- Use the resources roles picker to select multiple resources
- Filter by type, tags, or name to find resource roles quickly
- Click resources roles to add them to your selection
Step 3: Run a Command
- Type your command in the input field
- Click Execute or press Enter
- Watch results stream in from all resources
Step 4: Review Results
The Execution Summary shows:- Success - Command completed successfully
- Error - Command failed (click to see details)
- Approval Required - Waiting for access request approval
Use Cases
1. Service Restarts
Restart a service across all application servers:app-server-* resources roles and execute once.
2. Database Health Checks
Check replication status on all database replicas:db-replica-1, db-replica-2, db-replica-3 simultaneously.
3. Configuration Updates
Update a configuration file on multiple hosts:4. Log Collection
Check recent errors across all servers:5. Kubernetes Operations
Scale deployments across multiple clusters:Working with Results
Execution Summary
The summary panel shows the status of each resource role:| Status | Icon | Meaning |
|---|---|---|
| Success | Green check | Command completed successfully |
| Error | Red X | Command failed |
| Running | Spinner | Command in progress |
| Pending Approval | Clock | Waiting for access request |
Viewing Output
Click on any resource role in the summary to see its full output:- stdout - Standard output from the command
- stderr - Error output (if any)
- Exit code - Command exit status
Comparing Results
Results are displayed side-by-side, making it easy to:- Spot differences between servers
- Identify which servers have issues
- Verify consistent state across infrastructure
Filtering and Selection
Filter by Type
Select resource role by resource type:- Databases
- Servers
- Kubernetes clusters
- Applications
Filter by Tags
Use tags to group related resource roles:environment:productionregion:us-eastteam:platform
Search
Type to search resource roles by name.Select All Matching
After filtering, click Select All to add all visible resource roles.Access Requests in Parallel Mode
If resource roles require access request approval:- JIT Access Requests: You’ll be prompted to request access for each resource role that requires it
- Action Access Requests: Each command submission creates approval requests
- Mixed: Some resource roles may execute immediately while others wait for approval
Runbooks in Parallel Mode
You can also run Runbooks across multiple resource roles:- Open Runbooks in the sidebar
- Select a runbook
- Enable Parallel Mode
- Select target resource roles
- Fill in runbook parameters
- Execute
Best Practices
Test First
Run commands on one resource role before scaling to many
Use Tags
Tag resource roles for easy group selection
Start Small
Begin with a few resource roles, then expand
Review Carefully
Check all results, not just the first one
Safety Tips
- Dry run first: If your command supports it (e.g.,
--dry-run), test before executing - Limit scope: Don’t select all resource roles unless you’re sure
- Check the list: Review selected resource roles before executing
- Monitor results: Watch for failures as they occur
Troubleshooting
Some Resource Roles Fail
If some resource roles succeed but others fail:- Click the failed resource role to see the error
- Common causes:
- Resource role is offline
- Different OS or command not available
- Permission issues on that specific host
- Fix the issue and re-run on just the failed resource roles
Command Timeout
Long-running commands may timeout:- Check the command on a single resource role first
- Consider breaking into smaller operations
- For very long operations, use a runbook with proper timeout settings
Access Request Delays
If approvals are slow:- Check that approvers are online
- Verify Slack/Teams notifications are working
- Consider pre-requesting access before running parallel commands
Limitations
Current beta limitations:| Limitation | Details |
|---|---|
| Maximum resource roles | 50 resource roles per parallel execution |
| Command size | 64KB maximum command length |
| Result size | 1MB maximum output per resource role |
| Timeout | 5 minutes default per resource role |
Next Steps
Runbooks
Create reusable command templates
Access Requests
Configure approval workflows
Session Recording
Audit parallel executions
Web App Overview
Explore the Web Terminal