> For the complete documentation index, see [llms.txt](https://wiki.datadike.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.datadike.com/es/sonar/deploy-operate/mass-deployment.md).

# Desplegar agentes a escala

Distribuya el agente SONAR a muchos dispositivos: instaladores reutilizables, enlaces en Agents › Deployments, GPO, distribución de software y comprobación.

## Qué es y cuándo usarlo

Cada instalador que genera la consola queda vinculado a un cliente y a un sitio, y funciona en cualquier cantidad de dispositivos mientras sea válido. Llevar SONAR a un sitio entero es, por lo tanto, cuestión de generar un instalador por sitio y por tipo de dispositivo, y ejecutarlo en todos ellos con la herramienta que ya usa: directiva de grupo, una herramienta de distribución de software o de MDM, un RMM que se está sustituyendo, automatización por SSH.

Hay dos fuentes de instaladores:

* **Agents › Install Agent**: un archivo o un comando que se descarga una vez y se distribuye, ya sea el **Dynamic (.exe)** o el script **PowerShell** de Windows, el script de Linux o el comando de macOS. Consulte las páginas de cada plataforma, enlazadas más abajo.
* **Agents › Deployments**: un **enlace de descarga** reutilizable por sitio, para Windows. Cada vez que se abre el enlace, SONAR genera un instalador nuevo con la versión actual del agente, hasta la fecha fijada en **Expiry** en el despliegue.

## Antes de empezar

* Para gestionar los enlaces de despliegue, su rol tiene **List Deployments** y **Manage Deployments** en **Admin Center › Roles**. Para generar instaladores en **Install Agent**, tiene **Install Agents**. Ambos permisos cubren solo los sitios a los que su rol le da acceso.
* Los clientes y los sitios existen. Prevea un instalador o un despliegue por sitio, por tipo de dispositivo (**Server** o **Workstation**) y por arquitectura.
* Las exclusiones del antivirus y del EDR están configuradas antes de la distribución. Consulte [Requisitos de los dispositivos](/es/sonar/deploy-operate/requirements.md#exclusiones-de-antivirus-y-edr).
* Todas las redes de destino permiten la salida por 443/tcp hacia las direcciones de la API de SONAR y del acceso remoto. Consulte [Requisitos de red](/es/sonar/deploy-operate/network-requirements.md).
* Para los instaladores de **Install Agent**, active **Enable token expiration (hours)** con horas suficientes para cubrir toda la ventana de distribución. Pasado ese plazo, el instalador deja de funcionar y hace falta generar otro.

## Pasos

### Crear un enlace de despliegue (Windows)

1. Abra **Agents › Deployments**. El cuadro de diálogo **Deployments** muestra los despliegues existentes.
2. Haga clic en el botón **+** (**Create Deployment**). Se abre el formulario **Add Deployment**.
3. Elija el **Site**.
4. Elija el **Agent Type**: **Server** o **Workstation**.
5. Fije la fecha y la hora en **Expiry**.
6. Elija la **Architecture**: **64 bit** o **32 bit**.
7. Marque las **Optional Features** que deben recibir los dispositivos. Son las mismas que en **Install Agent** y se describen en [Instalar el agente en Windows](/es/sonar/deploy-operate/install-agent-windows.md#referencia-de-campos).
8. Haga clic en **Create Deployment**. Aparece el mensaje *The deployment was added successfully* y la nueva fila se añade a la lista.
9. En la fila, bajo **Download Link**, haga clic en **Copy**. El mensaje *Link copied to clipboard* lo confirma.

Al abrir el enlace se descarga el archivo `sonar-<client>-<site>-<type>-<architecture>.exe`, el mismo instalador Dynamic que genera **Install Agent**, que se ejecuta en modo silencioso con `/S`.

### Desplegar con un script de inicio de directiva de grupo (Windows)

Un script de inicio del equipo se ejecuta como Local System, antes de que nadie inicie sesión, que es el contexto que espera el instalador silencioso.

1. Guarde un script como este, con su enlace de despliegue, en un recurso compartido que los equipos del dominio puedan leer:

   ```powershell
   if (-not (Get-Service -Name sonarrmm -ErrorAction SilentlyContinue)) {
       $installer = Join-Path $env:TEMP 'sonar-agent.exe'
       Invoke-WebRequest -Uri '<deployment link>' -OutFile $installer -UseBasicParsing
       Start-Process -FilePath $installer -ArgumentList '/S' -Wait
       Remove-Item $installer -Force
   }
   ```

   La comprobación del servicio hace que el script no haga nada en los dispositivos que ya tienen el agente. En lugar de descargar desde un enlace, el script puede igualmente ejecutar un instalador Dynamic (.exe) copiado en el recurso compartido.
2. En **Group Policy Management**, cree o edite un GPO vinculado a la unidad organizativa de los equipos de destino.
3. En **Computer Configuration › Policies › Windows Settings › Scripts (Startup/Shutdown)**, añada el script como script de PowerShell de **Startup**.
4. Reinicie los equipos de destino, o espere a su próximo reinicio.

### Desplegar con una herramienta de distribución de software o de MDM (Windows)

Empaquete como aplicación el instalador Dynamic (.exe) obtenido en **Install Agent** o en un enlace de despliegue:

| Parámetro                 | Valor                                                                                    |
| ------------------------- | ---------------------------------------------------------------------------------------- |
| Comando de instalación    | `sonar-<client>-<site>-<type>-<architecture>.exe /S`                                     |
| Comando de desinstalación | `"C:\Program Files\Sonar\uninstall.exe" /S`                                              |
| Ejecutar como             | System                                                                                   |
| Detección                 | El servicio `sonarrmm` existe, o el archivo `C:\Program Files\Sonar\sonarrmm.exe` existe |

El script de PowerShell de **Install Agent** puede distribuirse de la misma manera: él mismo comprueba si existe el servicio `sonarrmm` y termina si el agente ya está instalado.

### Desplegar en Linux y macOS

* **Linux:** ejecute el script de **Install Agent** como root en cada máquina mediante su automatización (SSH, gestión de la configuración, un bucle desde un jump host): `sudo bash ./sonar-<client>-<site>-<type>.sh`. El script elimina cualquier agente anterior antes de instalar. Consulte [Instalar el agente en Linux](/es/sonar/deploy-operate/install-agent-linux.md).
* **macOS:** ejecute el comando de **Install Agent** como root mediante su MDM o un shell remoto. Si los operadores necesitan las carpetas protegidas del usuario desde la ventana de acceso remoto, conceda **Full Disk Access** con un perfil de privacidad del MDM. Consulte [Instalar el agente en macOS](/es/sonar/deploy-operate/install-agent-macos.md).

## Qué debe ver

Los dispositivos aparecen en **Dashboard › Sysadmin**, bajo su cliente y su sitio, a medida que termina cada instalación, con **Agent Status** **Online**. En la vista **Clients overview**, la tarjeta del cliente muestra cómo crece el número de dispositivos.

## Cómo verificar que funcionó

1. Abra **Dashboard › Sysadmin** y haga clic en la tarjeta del cliente.
2. Ordene la lista de dispositivos por **First Seen**, de los más recientes a los más antiguos: los dispositivos de la distribución quedan arriba, con la fecha en que se registraron.
3. Abra **Filters** y, en **Availability**, elija **Online**; en **Device Type**, elija **Servers** o **Workstations**, según el lote. Compare el número con la lista de dispositivos que tenía previstos.
4. Para los dispositivos de su lista que falten, revise el resultado que registró la propia herramienta de despliegue en esos dispositivos y, a continuación, siga [Solucionar problemas de los agentes](/es/sonar/deploy-operate/troubleshooting.md).
5. En **Reports & Audits › Audits**, cada registro de dispositivo es una entrada **Agent Install** con el nombre del host, lo que da el orden y la hora de llegada.

## Errores comunes

| Síntoma                                                                                    | Causa                                                                                                                                                                         | Solución                                                                                                      |
| ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| *expire date is invalid* al crear un despliegue                                            | **Expiry** está vacío o incompleto                                                                                                                                            | Rellene la fecha y la hora                                                                                    |
| Los instaladores se detienen con *Installer token has expired. Please generate a new one.* | El despliegue superó su fecha de **Expiry**, el despliegue se eliminó, o el instalador de **Install Agent** superó la expiración de su token                                  | Cree un nuevo despliegue o un nuevo instalador y actualice el enlace o el paquete en su herramienta           |
| Instaladores guardados antes de la distribución se detienen con *Old installer detected*   | La versión del agente SONAR cambió después de generar el archivo                                                                                                              | Genere el archivo de nuevo, o use un enlace de despliegue, que siempre genera la versión actual               |
| La instalación silenciosa informa éxito, pero el dispositivo nunca aparece                 | El dispositivo ya tenía un agente, o lo que quedaba de uno; el instalador muestra *Existing installation found and must be removed before attempting to reinstall.* y termina | Ejecute `"C:\Program Files\Sonar\uninstall.exe" /S` en el dispositivo y vuelva a instalar                     |
| Una instalación ejecutada dentro de la sesión de un usuario conectado no termina           | El cuadro de mensaje final del agente está esperando el **OK**                                                                                                                | Ejecute el instalador como Local System, o use el script de PowerShell, que se ejecuta sin cuadros de mensaje |
| Los dispositivos llegan a un sitio equivocado                                              | Se usó el instalador o el enlace de otro sitio                                                                                                                                | Mueva los dispositivos al sitio correcto y compruebe qué archivo usa cada paquete                             |
| El botón **+**, **Copy** o **Delete** no hace nada                                         | Su rol no tiene **Manage Deployments**                                                                                                                                        | Solicite el permiso                                                                                           |

## Referencia de campos

### Add Deployment

| Campo                 | Qué hace                                                                                                                                                             | Valores aceptados                                               | Valor por defecto                   |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | ----------------------------------- |
| **Site**              | Sitio bajo el que se registran los dispositivos                                                                                                                      | Los sitios a los que su rol tiene acceso, agrupados por cliente | El primer sitio de la lista         |
| **Agent Type**        | Registra los dispositivos como servidores o como estaciones de trabajo                                                                                               | **Server**, **Workstation**                                     | **Server**                          |
| **Expiry**            | Fecha y hora a partir de las cuales los instaladores de este enlace dejan de funcionar                                                                               | Una fecha y una hora                                            | 30 días a partir del momento actual |
| **Architecture**      | Arquitectura de Windows del instalador                                                                                                                               | **64 bit**, **32 bit**                                          | **64 bit**                          |
| **Optional Features** | Las mismas funciones que en **Install Agent**: **Sessions**, **Geolocation**, **Remote access**, **Ping** y, para estaciones de trabajo, **Disable sleep/hibernate** | Marcada o no                                                    | Ninguna marcada                     |

### Lista de despliegues

| Columna           | Qué muestra                                                                |
| ----------------- | -------------------------------------------------------------------------- |
| **Client**        | Cliente del sitio del despliegue                                           |
| **Site**          | Sitio bajo el que se registran los dispositivos                            |
| **Type**          | **server** o **workstation**                                               |
| **Arch**          | `amd64` (64 bit) o `386` (32 bit)                                          |
| **Expiry**        | Cuándo el enlace deja de producir instaladores que funcionan               |
| **Created**       | Cuándo se creó el despliegue                                               |
| **Flags**         | **View Flags**; pase el ratón por encima para ver las funciones opcionales |
| **Download Link** | **Copy** copia el enlace al portapapeles                                   |

Para quitar un despliegue, haga clic con el botón derecho en su fila, elija **Delete** y confirme **Delete deployment?**. Los instaladores ya descargados desde ese enlace también dejan de funcionar.

## Páginas relacionadas

* [Instalar el agente en Windows](/es/sonar/deploy-operate/install-agent-windows.md)
* [Instalar el agente en Linux](/es/sonar/deploy-operate/install-agent-linux.md)
* [Instalar el agente en macOS](/es/sonar/deploy-operate/install-agent-macos.md)
* [La lista de dispositivos](/es/sonar/administration/devices/device-list.md)
* [Solucionar problemas de los agentes](/es/sonar/deploy-operate/troubleshooting.md)
