New-SCOMMaintenanceSchedule

Crea una programación de mantenimiento.

Syntax

New-SCOMMaintenanceSchedule
   [-Name] <String>
   [-Recursive]
   [-Enabled]
   [-MonitoringObjects] <Guid[]>
   [-ActiveStartTime] <DateTime>
   [[-ActiveEndDate] <DateTime>]
   [-Duration] <Int32>
   [-ReasonCode] <MaintenanceModeReason>
   [[-Comments] <String>]
   [-FreqType] <Int32>
   [[-FreqInterval] <Int32>]
   [[-FreqRecurrenceFactor] <Int32>]
   [[-FreqRelativeInterval] <Int32>]
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

El cmdlet New-SCOMMaintenanceSchedule crea una programación de mantenimiento.

Cuando un recurso está en modo de mantenimiento, Operations Manager suprime alertas, notificaciones, reglas, monitores, respuestas automáticas, cambios de estado y nuevas alertas. Se puede usar una programación de mantenimiento para programar un conjunto de recursos para entrar en modo de mantenimiento.

Puede usar este cmdlet para crear programaciones que se ejecutan una vez, diariamente, semanalmente o mensualmente en un día determinado o un día de la semana. Este cmdlet devolverá el GUID de la programación creada.

De forma predeterminada, este cmdlet usa la conexión persistente activa a un grupo de administración. Use el parámetro SCSession para especificar una conexión persistente diferente. Puede crear una conexión temporal a un grupo de administración mediante los parámetros ComputerName y Credential . Para obtener más información, escriba Get-Help about_OpsMgr_Connections.

Ejemplos

Ejemplo 1: Agregar un objeto equipo Windows a una nueva programación de mantenimiento

PS C:\>$windowsComputer = Get-SCOMClass -DisplayName "Windows Computer" | Get-SCOMClassInstance | Where-Object { $_.DisplayName -eq 'Agent01.contoso.local' }
PS C:\>New-SCOMMaintenanceSchedule -Name 'Test Maintenance Schedule' -MonitoringObjects $windowsComputer.Id -ActiveStartTime $((Get-Date).AddMinutes(2)) -DurationInMinutes 240 -ReasonCode PlannedOther -FreqType 1 -Enabled

Ejemplo que muestra cómo agregar un objeto de equipo Windows para un servidor específico: Agent01.contoso.com a la nueva programación de mantenimiento, durante un período de 240 minutos, en ejecución solo 1 vez.

Ejemplo 2: Crear una programación de mantenimiento diario

PS C:\>$monitoringObjects = Get-SCOMClassInstance -Name 'Agent01.contoso.local'
PS C:\># Timezone is UTC (Coordinated Universal Time)
PS C:\>$startDate = [DateTime]::SpecifyKind([DateTime]"2024-03-30T01:00:00", [System.DateTimeKind]::Utc)
PS C:\>$durationInMinutes = 90
PS C:\>
PS C:\>New-SCOMMaintenanceSchedule -Name "Daily Maintenance at 1AM" -MonitoringObjects $monitoringObjects.Id -ActiveStartTime $startDate -Duration $durationInMinutes -ReasonCode PlannedOther -FreqType 4 -FreqInterval 1 -Enabled

Ejemplo que muestra cómo configurar una programación de mantenimiento diaria para un servidor específico y objetos de supervisión asociados: Agent01.contoso.local, a partir de las 1:00 a. m. y dura durante 90 minutos.

Ejemplo 3: Crear una programación de mantenimiento semanal

PS C:\>$monitoringObjects = Get-SCOMClassInstance -Name 'Agent01.contoso.local'
PS C:\># Timezone is set to local timezone
PS C:\>$startDate = [DateTime]"2024-03-29T02:00:00"
PS C:\>$durationInMinutes = 120
PS C:\>
PS C:\>New-SCOMMaintenanceSchedule -Name "Weekly Wednesday Maintenance" -MonitoringObjects $monitoringObjects.Id -ActiveStartTime $startDate -Duration $durationInMinutes -ReasonCode PlannedOther -FreqType 8 -FreqInterval 8 -FreqRecurrenceFactor 1 -Enabled

Ejemplo que muestra cómo configurar una programación de mantenimiento semanal cada miércoles para un servidor específico y objetos de supervisión asociados: Agent01.contoso.local, a partir de las 2:00 a. m. y dura durante 120 minutos.

Ejemplo 4: Crear una programación de mantenimiento mensual

PS C:\>$monitoringObjects = Get-SCOMClassInstance -Name 'Agent01.contoso.local'
PS C:\># Timezone is set to local timezone
PS C:\>$startDate = [DateTime]"2024-04-01T03:00:00"
PS C:\>$durationInMinutes = 180
PS C:\>
PS C:\>New-SCOMMaintenanceSchedule -Name "Monthly Second Tuesday Maintenance" -MonitoringObjects $monitoringObjects.Id -ActiveStartTime $startDate -Duration $durationInMinutes -ReasonCode PlannedOther -FreqType 32 -FreqInterval 2 -FreqRelativeInterval 2 -FreqRecurrenceFactor 1 -Enabled

Ejemplo que muestra cómo establecer una programación de mantenimiento mensual el segundo martes de cada mes para un servidor específico y objetos de supervisión asociados: Agent01.contoso.local, a partir de las 3:00 a. m. y dura durante 180 minutos.

Parámetros

-ActiveEndDate

Especifica la fecha de finalización y la hora de finalización cuando la programación debe dejar de ejecutarse. Si no se especifica este parámetro, la programación seguirá ejecutándose para siempre (o hasta que se elimine o deshabilite).

Por ejemplo, si desea crear una programación que debe finalizar el 1 de mayo de 2016 a las 9:00 a. m., debe especificar "01-05-2016 09:00:00" como ActiveEndDate. Puede pasar una cadena que especifique la hora que desee en la hora local. Sin embargo, si desea especificar una hora UTC, debe especificar un objeto DateTime con dateTimeKind establecido en UTC.

Type:DateTime
Position:5
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ActiveStartTime

Especifica la fecha de inicio y la hora en que la programación debe estar activa. Por ejemplo, si desea crear una programación que debe comenzar desde el 1 de mayo de 2016 y debe ejecutarse a las 9:00 a. m., debe especificar "01-05-2016 09:00:00" como ActiveStartTime. Puede pasar una cadena que especifique la hora que desee en la hora local. Sin embargo, si desea especificar una hora UTC, debe especificar un objeto DateTime con dateTimeKind establecido en UTC.

Type:DateTime
Position:4
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Comments

Especifica cualquier comentario legible para una programación de mantenimiento.

Type:String
Position:8
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Especifica una matriz de nombres de equipos. El cmdlet establece conexiones temporales con grupos de administración para estos equipos. Puede usar nombres netBIOS, direcciones IP o nombres de dominio completos (FQDN). Para especificar el equipo local, escriba el nombre del equipo, localhost o un punto (.).

El servicio de acceso a datos de System Center debe estar activo en el equipo. Si no especifica un equipo, el cmdlet usa el equipo para la conexión del grupo de administración actual.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Especifica un objeto PSCredential para la conexión del grupo de administración. Para obtener un objeto PSCredential, use el cmdlet Get-Credential. Para obtener más información, escriba Get-Help Get-Credential. Si especifica un equipo en el parámetro ComputerName , use una cuenta que tenga acceso a ese equipo. El valor predeterminado es el usuario actual.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Duration

Especifica la duración de la programación de mantenimiento. La duración de una programación de mantenimiento es la hora para la que durará la programación de mantenimiento.

Type:Int32
Aliases:DurationInMinutes
Position:6
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Enabled

Indica si la programación se habilitará o deshabilitará al crearse. Si establece esto en false, se creará la programación, pero se deshabilitará.

Type:SwitchParameter
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FreqInterval

Especifica cuándo se va a ejecutar el trabajo. Este parámetro puede establecerse con uno de los siguientes valores:

  • 1 (una vez). El intervalo de frecuencia no se usa.
  • 4 (diario). Cada día de intervalo de frecuencia.
  • 8 (semanalmente). El parámetro FreqInterval es uno o varios de los siguientes (combinados con un operador lógico OR):
    • 1 - Domingo
    • 2: lunes
    • 4 - Martes
    • 8 - Miércoles
    • 16 - Jueves
    • 32 - Viernes
    • 64 - Sábado
  • 16 (mensual). En el intervalo de frecuencia del mes.
    • 1 - Domingo
    • 2: lunes
    • 3 - Martes
    • 4: miércoles
    • 5 - Jueves
    • 6 - Viernes
    • 7 - Sábado
  • 32 (relativo mensual). El parámetro FreqInterval es uno de los siguientes valores:
    • 8 - Día
    • 9 - Día de la semana
    • 10 - Día del fin de semana
Type:Int32
Position:10
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FreqRecurrenceFactor

Número de semanas o meses entre las ejecuciones programadas del trabajo. FreqRecurrenceFactor solo se usa si el parámetro FreqType está establecido en 8, 16 o 32. El parámetro FreqRecurrenceFactor es un entero, con un valor predeterminado de 0.

Type:Int32
Position:11
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FreqRelativeInterval

Día en que se ejecuta el trabajo. Esto es obligatorio si la programación es distinta de la programación OnceRecurrence . El valor depende del valor de FreqType.

Este parámetro puede establecerse con uno de los siguientes valores:

  • 1 (primero)
  • 2 (Segundo)
  • 4 (Tercero)
  • 8 (Cuarto)
  • 16 (último)
Type:Int32
Position:12
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FreqType

Especifica cuándo se va a ejecutar el trabajo. Los valores permitidos para este parámetro son los siguientes:

  • 1 (una vez)
  • 4 (diariamente)
  • 8 (semanalmente)
  • 16 (mensualmente)
  • 32 (Mensual, relativo al parámetro FreqInterval)
Type:Int32
Position:9
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-MonitoringObjects

Especifica una matriz de GUID de objetos de supervisión que se colocarán en modo de mantenimiento. Para especificar un objeto de supervisión que la programación creada colocará en modo de mantenimiento, debe pasar el atributo ID del objeto de supervisión.

Puede especificar uno o varios objetos de supervisión para una programación. Sin embargo, no se puede crear una programación sin ningún objeto de supervisión.

Type:Guid[]
Position:3
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Name

Especifica el nombre de la programación que crea este cmdlet.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ReasonCode

Especifica el código de motivo de una programación de mantenimiento que especifica el motivo de la ventana de mantenimiento.

Los valores permitidos para este parámetro son los siguientes:

  • PlannedOther
  • UnplannedOther
  • PlannedHardwareMaintenance
  • UnplannedHardwareMaintenance
  • PlannedHardwareInstallation
  • UnplannedHardwareInstallation
  • PlannedOperatingSystemReconfiguration
  • UnplannedOperatingSystemReconfiguration
  • PlannedApplicationMaintenance
  • UnplannedApplicationMaintenance
  • ApplicationInstallation
  • ApplicationUnresponsive
  • ApplicationUnstable
  • SecurityIssue
  • LossOfNetworkConnectivity
Type:MaintenanceModeReason
Accepted values:PlannedOther, UnplannedOther, PlannedHardwareMaintenance, UnplannedHardwareMaintenance, PlannedHardwareInstallation, UnplannedHardwareInstallation, PlannedOperatingSystemReconfiguration, UnplannedOperatingSystemReconfiguration, PlannedApplicationMaintenance, UnplannedApplicationMaintenance, ApplicationInstallation, ApplicationUnresponsive, ApplicationUnstable, SecurityIssue, LossOfNetworkConnectivity
Position:7
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Recursive

Indica si la programación es aplicable al recurso de nivel superior o a todos los recursos contenidos. Si el parámetro recursivo se establece en false, solo el recurso especificado entrará en modo de mantenimiento cuando se ejecute la programación. Si se establece en true, el recurso especificado y todos los recursos que tienen una relación de contención con este recurso también entrarán en modo de mantenimiento.

Type:SwitchParameter
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SCSession

Especifica una matriz de objetos Connection .

Type:Connection[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False