Condividi tramite


Come rimuovere un Management Pack di Operations Manager

 

Pubblicato: marzo 2016

Si applica a: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager

Quando non è più necessario un management pack, è possibile eliminarlo utilizzando la console operatore. Quando si elimina un management pack, tutte le impostazioni e soglie associate vengono rimossi da System Center 2012 – Operations Manager. Inoltre, il file. MP o. XML per il management pack viene cancellato dal disco rigido del server di gestione. È possibile eliminare un management pack solo se è stato eliminato prima i management pack dipendenti.

Per rimuovere un management pack

  1. Effettuare l'accesso al computer con un account che appartiene al ruolo amministratore di Operations Manager.

  2. Nella Console operatore fare clic su Amministrazione.

  3. In amministrazione, fare clic su Management Pack.

  4. Nel Management Pack riquadro destro il management pack si desidera rimuovere e quindi fare clic su eliminare.

  5. Nella finestra di messaggio conferma che l'eliminazione del management pack può interessare l'ambito di alcuni ruoli utente, fare clic su .

Rimozione del management pack con le dipendenze a livello di codice

Quando viene eliminato un management pack dal riquadro amministrazione dell'interfaccia utente, può diventare molto tempo per tenere traccia in modo ricorsivo verso il basso ed eliminare tutti i management pack dipendenti prima di eliminare l'originariamente previsto management pack. Un management pack e tutte le relative dipendenze, è possibile utilizzare il seguente script di eliminazione a catena.

Per eseguire lo script, procedere come segue:

  1. Aprire il prompt della Shell comandi Operations Manager in modalità amministratore.

  2. Eseguire lo script associato dalla directory in cui è stato salvato nel disco. Ad esempio:

    • .\RecursiveRemove.ps1 < ID o nome del Management Pack di sistema >

    • .\RecursiveRemove.ps1 Microsoft.SQLServer.2014.Discovery

    Nota è possibile visualizzare l'ID o nome di sistema del Management Pack che si desidera disinstallare selezionandolo nel installato Management Pack visualizzazione. Quindi fare clic su proprietà nel riquadro azioni. Quindi copiare il contenuto in ID: scheda Generale nella casella di testo.

# The sample scripts are not supported under any Microsoft standard support 
# program or service. The sample scripts are provided AS IS without warranty 
# of any kind. Microsoft further disclaims all implied warranties including, 
# without limitation, any implied warranties of merchantability or of fitness
# for a particular purpose. The entire risk arising out of the use or 
# performance of the sample scripts and documentation remains with you. In no
# event shall Microsoft, its authors, or anyone else involved in the creation,
# production, or delivery of the scripts be liable for any damages whatsoever
# (including, without limitation, damages for loss of business profits,
# business interruption, loss of business information, or other pecuniary
# loss) arising out of the use of or inability to use the sample scripts or
# documentation, even if Microsoft has been advised of the possibility of 
# such damages.
# PowerShell script to automagically remove an MP and its dependencies.
# Original Author   :       Christopher Crammond
# Modified By       :       Chandra Bose
# Date Created      :   April 24th, 2012
# Date Modified     :   Januray 18th, 2016
# Version       :       0.0.2

# Needed for SCOM SDK
$ipProperties = [System.Net.NetworkInformation.IPGlobalProperties]::GetIPGlobalProperties()
$rootMS = "{0}.{1}" -f $ipProperties.HostName, $ipProperties.DomainName


#######################################################################
# Helper method that will remove the list of given Management Packs.
function RemoveMPsHelper 
{param($mpList)
  foreach ($mp in $mpList)
  {
    $recursiveListOfManagementPacksToRemove = Get-SCOMManagementPack -Name $mp.Name -Recurse
    if ($recursiveListOfManagementPacksToRemove.Count -gt 1)
    {
        Echo "`r`n"
        Echo "Following dependent management packs has to be deleted before deleting $($mp.Name)..."

        $recursiveListOfManagementPacksToRemove | format-table name
        RemoveMPsHelper $recursiveListOfManagementPacksToRemove
    }
    else
    {
        $mpPresent = Get-ManagementPack -Name $mp.Name
        $Error.Clear()
        if ($mpPresent -eq $null)
        {
            # If the MP wasn’t found, we skip the uninstallation of it.
            Echo "    $mp has already been uninstalled"
        }
        else
        {
            Echo "    * Uninstalling $mp "
            Uninstall-ManagementPack -managementpack $mp
        }
    }
  }
}

#######################################################################
# Remove 'all' of the JEE MPs as well as MPs that are dependent on them.
# The remove is done by finding the base MP (Microsoft.JEE.Library) and finding
# all MPs that depend on it.  This list will be presented to the user prompting
# if the user wants to continue and removing the list of presented MPs
function RemoveMPs
{param($mp)

  $listOfManagementPacksToRemove = Get-SCOMManagementPack -Name $mp -Recurse
  $listOfManagementPacksToRemove | format-table name

  $title = "Uninstall Management Packs"
  $message = "Do you want to uninstall the above $($listOfManagementPacksToRemove.Count) management packs and its dependent management packs"

  $yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes", "Uninstall selected Management Packs."
  $no = New-Object System.Management.Automation.Host.ChoiceDescription "&No", "Do not remove Management Packs."
  $options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)

  $result = $host.ui.PromptForChoice($title, $message, $options, 0) 

  switch ($result)
  {
        0 {RemoveMPsHelper $listOfManagementPacksToRemove}
        1 {"Exiting without removing any management packs"}
  }
}

#######################################################################
# Begin Script functionality
if ($args.Count -ne 1)
{
  Echo "Improper command line arguments"
  Echo ""
  Echo "Specify a command line argument to either import or export MPs"
  exit 1
}
else
{
  $firstArg = $args[0]

  add-pssnapin "Microsoft.EnterpriseManagement.OperationsManager.Client";
  $cwd = get-location
  set-location "OperationsManagerMonitoring::";
  $mgConnection = new-managementGroupConnection -ConnectionString:$rootMS;

  RemoveMPs $firstArg

  set-location $cwd
  remove-pssnapin "Microsoft.EnterpriseManagement.OperationsManager.Client";  
}

Nota

Se sono presenti altri management pack importati dipendenti dal management pack che si sta tentando di rimuovere, il Management Pack dipendenti verrà visualizzato il messaggio di errore. È necessario rimuovere i management pack dipendenti prima di continuare.

Operations Manager elimina il management pack selezionato.