Share via


Zum Entfernen einer Operations Manager Management Pack

 

Veröffentlicht: März 2016

Betrifft: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager

Wenn Sie ein Management Pack nicht mehr benötigen, können Sie es mit der Betriebskonsole löschen. Wenn Sie ein Management Pack löschen, die alle Einstellungen und Schwellenwerte zugeordnet werden aus entfernt System Center 2012 – Operations Manager. Darüber hinaus wird die MP- oder XML-Datei für dieses Management Pack von der Festplatte des Verwaltungsservers gelöscht. Sie können ein Management Pack löschen, nur dann, wenn Sie zuerst die abhängigen managementpacks gelöscht haben.

So entfernen Sie ein Management pack

  1. Melden Sie sich bei dem Computer mit einem Konto an, das Mitglied der Operations Manager-Administratorrolle ist.

  2. Klicken Sie in der Betriebskonsole auf Verwaltung.

  3. In Verwaltung, klicken Sie auf Management Packs.

  4. In der Management Packs Bereich mit der rechten Maustaste das Management pack, Sie möchten entfernen, und klicken Sie dann auf Löschen.

  5. Klicken Sie auf die Meldung, dass das Löschen des Management Packs die Bereichsdefinition einiger Benutzerrollen auswirken kann, auf Ja.

Programmgesteuertes Entfernen eines Management Packs mit Abhängigkeiten

Wenn ein Management Pack über den Verwaltungsbereich Benutzeroberfläche gelöscht wird, kann sehr zeitaufwändig, Nachverfolgen von rekursiv nach unten werden und alle abhängigen managementpacks vor dem Löschen der ursprünglich gewünschten Management Pack löschen. Dem folgenden Skript können kaskadiert Löschen eines Management Packs und alle seine Abhängigkeiten.

Um das Skript auszuführen, gehen Sie folgendermaßen vor:

  1. Öffnen Sie die Operations Manager-Befehlsshell Aufforderung im Administratormodus.

  2. Führen Sie das angefügte Skript aus dem Verzeichnis, in dem haben Sie es auf dem Datenträger gespeichert. Beispiel:

    • .\RecursiveRemove.ps1 < ID oder Systemname des Management Packs >

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

    Hinweis sehen Sie die ID oder der Systemname des Management Packs, die zu deinstallierende auswählen und im installierten Management Packs anzeigen. Klicken Sie dann auf Eigenschaften im Aktionsbereich. Kopieren Sie den Inhalt in ID: Textfeld im Allgemeinen Registerkarte.

# 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";  
}
System_CAPS_noteHinweis

Wenn andere importierte Management Packs das Management Pack abhängig Sie versuchen sind, zu entfernen, die abhängigen Management Packs Fehlermeldung angezeigt. Sie müssen die abhängigen managementpacks entfernen, bevor Sie fortfahren können.

Operationsmanager entfernt das ausgewählte Management Pack.