Déploiement Agent Client Collector en bloc à l’aide MacOS de Jamf

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 4 minutes de lecture
  • Utilisez Jamf cette fonction pour installer Agent Client Collector (ACC) sur plusieurs MacOS appareils à la fois, favorisant un déploiement cohérent au sein de votre organisation.

    Avant de commencer

    Rôle requis : agent_client_collector_admin

    Pourquoi et quand exécuter cette tâche

    La procédure suivante décrit le déploiement en masse d’ACC à l’aide Jamf de . Votre organisation peut avoir une méthode différente pour déployer ACC.

    Procédure

    1. Téléchargez le package d’installation.
      1. Accédez à la Tous > Agent Client Collector > Déploiement > Téléchargements de l'agent.
      2. Téléchargez le package approprié à partir de la MacOS section Téléchargements, en fonction du type de puce.
    2. Téléchargez le package d’installation dans Jamf Pro.
      1. Dans l’instance Jamf Pro, accédez à Paramètres > Packages.
      2. Sélectionnez le bouton Nouveau .
      3. Fournissez un nom d’affichage pour un package.
      4. Sélectionnez Rechercher un fichier sous Nom de fichier et sélectionnez le package.
      5. Sélectionnez Enregistrer.
    3. Mettez à jour le fichier acc.yml .
      1. Copiez le fichier acc.yml généré lors de l’installation locale sur votre emplacement de bureau.
      2. Confirmer connect-without-mid est défini sur vrai.
      3. Vérifiez que l’URL de l’instance est exacte et insérez la clé d’inscription.
      4. Vérifiez que verify-plugin-signature est défini sur false.
      5. Enregistrer le acc.yml
    4. À l’aide de la ligne de commande Terminal, convertissez votre fichier acc.yml en un package de déploiement.
      1. Créez un fichier nommé yml_package_builder.sh sur votre bureau.
      2. Copiez le script suivant dans le fichier yml_package_builder.sh et enregistrez-le.
        #!/bin/bash
        # === CONFIGURATION ===
        PKG_NAME="acc-yml.pkg"
        INSTALL_PATH="/Library/Application Support/servicenow/agent-clientcollector"
        YML_SOURCE_PATH="$HOME/Desktop/acc.yml" # Assuming you have your yml
        file on the Desktop folder, change it if needed
        # === CREATE BUILD STRUCTURE ===
        BUILD_DIR="$HOME/pkgbuild-yml"
        PAYLOAD_DIR="$BUILD_DIR/payload$INSTALL_PATH"
        # Clean previous build
        rm -rf "$BUILD_DIR"
        mkdir -p "$PAYLOAD_DIR"
        # Copy YAML file into package payload
        cp "$YML_SOURCE_PATH" "$PAYLOAD_DIR/"
        # === BUILD THE PACKAGE ===
        pkgbuild \
        --identifier "com.servicenow.acc.yml" \
        --install-location "$INSTALL_PATH" \
        --root "$BUILD_DIR/payload" \
        "$HOME/Desktop/$PKG_NAME"
        echo "✅ .pkg created at: $HOME/Desktop/$PKG_NAME"
      3. Exécutez la commande sh yml_package_builder.sh à partir du terminal.
        Remarque :
        Le fichier acc.yml modifié et le fichier yml_package_builder.sh doivent être enregistrés au même emplacement (Bureau, par exemple).
      Le fichier acc-yml.pkg apparaît sur votre bureau.
    5. Téléchargez le package yml dans Jamf Pro de la même manière que vous avez téléchargé le package d’installation.
    6. Dans l’instance Jamf Pro, créez un script post-installation.
      1. Accédez à la Paramètres > Scripts.
      2. Sélectionnez le bouton Nouveau .
      3. Fournissez un nom d’affichage et remplissez le formulaire selon vos besoins.
      4. Dans l’onglet Script , collez le script suivant.
        # === 1. Create sudoers file ===
        SUDOERS_FILE="/private/etc/sudoers.d/_servicenow"
        cat <<EOF > "$SUDOERS_FILE"
        # ServiceNow Agent Collector - Sudoers Configuration for macOS
        
        # Command alias for ServiceNow allowed commands
        # These commands can be executed by the _servicenow user with sudo privileges
        Cmnd_Alias SN_ALLOWED = /usr/bin/powermetrics, \
                                /usr/bin/mdls, \
                                /usr/bin/log, \
                                /usr/bin/log show *, \
                                /bin/kill, \
                                /usr/bin/defaults, \
                                /usr/local/bin/jamf, \
                                /bin/rm, \
                                /bin/ls, \
                                /usr/bin/pgrep, \
                                /usr/bin/find, \
                                /usr/bin/pmset, \
                                /usr/bin/open, \
                                /Library/Application\ Support/servicenow/agent-client-collector/cache/acc-dex-modules/bin/scripts/sudo/app_freeze.sh, \
                                /Library/Application\ Support/servicenow/agent-client-collector/cache/acc-dex-modules/bin/scripts/sudo/zscaler_zpa_reconnect.sh, \
                                /Library/Application\ Support/servicenow/agent-client-collector/cache/acc-dex-modules/bin/scripts/sudo/clear_google_chrome_browsing_data.sh, \
                                /Library/Application\ Support/servicenow/agent-client-collector/cache/acc-dex-modules/bin/scripts/sudo/services.sh, \
                                /Library/Application\ Support/servicenow/agent-client-collector/cache/acc-dex-modules/bin/scripts/sudo/restart_service.sh *, \
                                /Applications/Zscaler/Zscaler.app/Contents/PlugIns/zscli, \
                                /Library/Application\ Support/servicenow/agent-client-collector/cache/acc-dex-modules/bin/scripts/sudo/elevate_temporary_admin.sh
        
        # ServiceNow user permissions
        # _servicenow user can run osqueryi and all SN_ALLOWED commands without password
        # SETENV allows environment variables to be preserved
        _servicenow ALL=NOPASSWD: SETENV: /Library/Application\ Support/servicenow/agent-client-collector/cache/osquery/bin/osqueryi *, SN_ALLOWED
        
        # Defaults for _servicenow user
        # !requiretty: Allow sudo without a TTY (required for automated scripts)
        Defaults:_servicenow !requiretty
        EOF
        chmod 440 "$SUDOERS_FILE"
        echo "[INFO] Sudoers file created at $SUDOERS_FILE"
        
        # === 2. Set permissions for the YAML file ===
        YML_PATH="/Library/Application Support/servicenow/agent-clientcollector/
        acc.yml"
        if [ -f "$YML_PATH" ]; then
        chmod 644 "$YML_PATH"
        echo "[INFO] Permissions set on acc.yml"
        else
        echo "[WARN] acc.yml not found at $YML_PATH"
        fi
        # === 3. Restart ACC service ===
        PLIST="/Library/LaunchDaemons/com.sn.acc.plist"
        if [ -f "$PLIST" ]; then
        echo "[INFO] Stopping ACC service..."
        launchctl unload -w "$PLIST" 2>/dev/null
        sleep 2
        echo "[INFO] Starting ACC service..."
        launchctl load -w "$PLIST"
        else
        echo "[ERROR] LaunchDaemon not found at $PLIST"
        fi
      5. Sélectionnez Enregistrer.
    7. Créez une Jamf politique et ajoutez les packages et le script créés.
      1. Dans l’instance Jamf Pro, accédez à Inventaire > Politiques.
      2. Sélectionnez le bouton Nouveau .
      3. Entrez un nom de politique, un déclencheur et une fréquence appropriés.
      4. Sous Champ d’application, ajoutez tous les ordinateurs cibles.
      5. Accédez à la Packages > Configurer et ajoutez les packages Installation et ACC-YML à l’enregistrement.
        Remarque :
        Assurez-vous que l’option Installation est sélectionnée sous Action.
      6. Accédez à la Scripts > Configurer et ajoutez le script post-installation à l’enregistrement.
        Remarque :
        Assurez-vous que Après est sélectionné sous Priorité.
      7. Sélectionnez Enregistrer.
      8. Sous l’onglet Champ d’application, ajoutez les ordinateurs cibles et les utilisateurs cibles.
      9. Sélectionnez Enregistrer.
    8. Pour surveiller l’état du déploiement, effectuez l’une des opérations suivantes :
      • Vérifiez l’état du déploiement dans le tableau de bord de l’instance Jamf Pro.
      • Vérifiez l’état de l’agent en accédant à Tous > Agent Client Collector > Agents.
      • Passez en revue le fichier journal sur les appareils de point de terminaison : /Library/Application Support/servicenow/agent-client-collector/log/acc.log.