Risoluzione dei problemi Patch Manager - AWS Systems Manager

Risoluzione dei problemi Patch Manager

Utilizza le informazioni seguenti per risolvere i problemi relativi a Patch Manager, una funzionalità di AWS Systems Manager.

Errori durante l'esecuzione di AWS-RunPatchBaseline su Linux

Problema: errore “Nessun file o directory di questo tipo”

Problema: Quando si esegue AWS-RunPatchBaseline, l'applicazione di patch non riesce con uno dei seguenti errori.

IOError: [Errno 2] No such file or directory: 'patch-baseline-operations-X.XX.tar.gz'
Unable to extract tar file: /var/log/amazon/ssm/patch-baseline-operations/patch-baseline-operations-1.75.tar.gz.failed to run commands: exit status 155
Unable to load and extract the content of payload, abort.failed to run commands: exit status 152

Causa 1: Due comandi per eseguire AWS-RunPatchBaseline erano in esecuzione nello stesso momento sullo stesso nodo gestito. Questo crea una condizione di competizione che fa sì che le file patch-baseline-operations* non sono state create o accessibili correttamente.

Causa 2: lo spazio di archiviazione insufficiente rimane sotto la directory /var.

Soluzione 1: Assicurarsi che nessuna finestra di manutenzione abbia due o più attività Run Command che eseguono AWS-RunPatchBaseline con lo stesso livello di priorità e che vengono eseguite sugli stessi ID di destinazione. In questo caso, riordinare la priorità. Run Command è una funzionalità di AWS Systems Manager.

Soluzione 2: assicurarsi che una sola finestra di manutenzione per volta stia eseguendo attività Run Command che utilizzano AWS-RunPatchBaseline sugli stessi target e sullo stesso programma. In tal caso, modificare la pianificazione.

Soluzione 3: Assicurarsi che solo un'associazione State Manager stia eseguendo AWS-RunPatchBaseline sulla stessa pianificazione e avendo come target gli stessi nodi gestiti. State Manager è una funzionalità di AWS Systems Manager.

Soluzione 4: Liberare spazio di archiviazione sufficiente sotto la directory /var per i pacchetti di aggiornamento.

Problema: Errore “un altro processo ha acquisito il blocco yum”

Problema: Quando si esegue AWS-RunPatchBaseline, l'applicazione di patch ha esito negativo con il seguente errore.

12/20/2019 21:41:48 root [INFO]: another process has acquired yum lock, waiting 2 s and retry.

Causa: Il documento AWS-RunPatchBaseline è stato avviato in esecuzione su ul nodo gestito in cui è già in esecuzione in un'altra operazione e ha acquisito il processo di gestione di pacchetti yum.

Soluzione: Assicurarsi che non vi siano attività di finestra di associazione e manutenzione State Manager, o altre configurazioni che eseguono AWS-RunPatchBaseline su una pianificazione che abbiano come target lo stesso nodo gestito nello stesso momento.

Problema: errore “Autorizzazione negata/non riuscita a eseguire i comandi”

Problema: Quando si esegue AWS-RunPatchBaseline, l'applicazione di patch ha esito negativo con il seguente errore.

sh: 
/var/lib/amazon/ssm/instanceid/document/orchestration/commandid/PatchLinux/_script.sh: Permission denied
failed to run commands: exit status 126

Causa:/var/lib/amazon/ Potrebbe essere montato con permessinoexec. Questo è un problema perché SSM Agent scarica gli script del payload in /var/lib/amazon/ssm e li esegue da quella posizione.

Soluzione: Assicurarsi di aver configurato partizioni esclusive per /var/log/amazon e /var/lib/amazon, e che sono montate con autorizzazioni exec.

Problema: errore “Impossibile scaricare il payload”

Problema: Quando si esegue AWS-RunPatchBaseline, l'applicazione di patch ha esito negativo con il seguente errore.

Unable to download payload: https://s3.DOC-EXAMPLE-BUCKET.region.amazonaws.com/aws-ssm-region/patchbaselineoperations/linux/payloads/patch-baseline-operations-X.XX.tar.gz.failed to run commands: exit status 156

Causa: Il nodo gestito non dispone delle autorizzazioni necessarie per accedere al bucket Amazon Simple Storage Service (Amazon S3) specificato.

Soluzione: Aggiornare la configurazione di rete in modo che gli endpoint S3 siano raggiungibili. Per ulteriori informazioni, consulta le informazioni sugli accessi necessari ai bucket S3 per Patch Manager in Comunicazioni di SSM Agent con i bucket S3 gestiti di AWS.

Problema: errore “gestore di pacchetti non supportato e combinazione di versione python”

Problema: Quando si esegue AWS-RunPatchBaseline, l'applicazione di patch ha esito negativo con il seguente errore.

An unsupported package manager and python version combination was found. Apt requires Python3 to be installed.
failed to run commands: exit status 1

Causa: python3 non è installato sull’istanza Debian Server,Raspberry Pi OS, oppure Ubuntu Server.

Soluzione: Installa python3 sul server, che è necessario per i nodi gestiti Debian Server, Raspberry Pi OS e Ubuntu Server.

Problema:Patch Manager non sta applicando le regole specificate per escludere determinati pacchetti

Problema: Si è tentato di escludere determinati pacchetti specificandoli nel file /etc/yum.conf, nel formato exclude=package-name, ma non sono esclusi durante l'operazione Patch Manager Install.

Causa:Patch Manager non incorpora esclusioni specificate nel file /etc/yum.conf.

Soluzione: Per escludere pacchetti specifici, creare una base di patch personalizzata e creare una norma per escludere i pacchetti che non si desidera installare.

Problema: l'applicazione di patch non va a buon fine e Patch Manager segnala che l'estensione Indicazione nome server a TLS non è disponibile

Problema: L'operazione di applicazione delle patch emette il seguente messaggio.

/var/log/amazon/ssm/patch-baseline-operations/urllib3/util/ssl_.py:369: 
SNIMissingWarning: An HTTPS request has been made, but the SNI (Server Name Indication) extension
to TLS is not available on this platform. This may cause the server to present an incorrect TLS 
certificate, which can cause validation failures. You can upgrade to a newer version of Python 
to solve this. 
For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings

Causa: Questo messaggio non indica un errore. Invece, è un avvertimento che la versione precedente di Python distribuita con il sistema operativo non supporta l'indicazione del nome del server TLS. Lo script del payload della patch di Systems Manager emette questo avviso quando ci si connette ad API AWS che supportano SNI.

Soluzione: Per risolvere eventuali errori di applicazione delle patch quando viene segnalato questo messaggio, esaminare il contenuto dei file stdout e stderr. Se la patch di base non è stata configurata per archiviare questi file in un bucket Amazon S3 o in Amazon CloudWatch Logs, è possibile individuare i file nella seguente posizione sul nodo gestito Linux.

/var/lib/amazon/ssm/instance-id/document/orchestration/Run-Command-execution-id/awsrunShellScript/PatchLinux

Problema: Patch Manager riporta “Niente più specchi da testare”

Problema: L'operazione di applicazione delle patch emette il seguente messaggio.

[Errno 256] No more mirrors to try.

Causa: I repository configurati sul nodo gestito non funzionano correttamente. Tra le cause possibili sono incluse:

  • La cache yum è danneggiata.

  • Impossibile raggiungere un URL del repository a causa di problemi relativi alla rete.

Soluzione: Patch Manager utilizza il gestore di pacchetti predefinito del nodo gestito per eseguire l'operazione di patch. Verificare che i repository siano configurati e funzionino correttamente.

Errori durante l'esecuzione di AWS-RunPatchBaseline su Windows Server

Problema: famiglia di prodotti/coppie di prodotti non corrispondenti

Problema: Quando si crea una base di patch di base nella console Systems Manager, è necessario specificare una famiglia di prodotti e un prodotto. Ad esempio si potrebbe scegliere:

  • Product family (Famiglia di prodotti): Office

    Product (Prodotto): Office 2016

Causa: Se si prova a creare una base di patch con una copia famiglia di prodotti/prodotto non corrispondente, viene visualizzato un messaggio di errore. Di seguito sono elencati i motivi per cui questo può verificarsi:

  • Hai selezionato una famiglia di prodotti e una coppia di prodotti validi ma poi hai rimosso la selezione della famiglia di prodotti.

  • È stato scelto un prodotto dal sottoelenco Obsolete or mismatched options (Opzioni obsolete o non corrispondenti) anziché dal sottoelenco Available and matching options (Opzioni disponibili e corrispondenti).

    Gli elementi nel sottoelenco Obsolete or mismatched options (Opzioni obsolete o non corrispondenti) del prodotto potrebbero essere stati immessi per errore mediante un SDK o un comando AWS Command Line Interface (AWS CLI) create-patch-baseline Questo potrebbe significare che è stato introdotto un errore di digitazione o che un prodotto è stato assegnato alla famiglia di prodotti sbagliata. Un prodotto viene incluso anche nel sottoelenco Obsolete or mismatched options (Opzioni obsolete o non corrispondenti), se è stato specificato per una base di patch precedente, ma in Microsoft non sono disponibili patch.

Soluzione: Per evitare che il problema si presenti nella console, è preferibile scegliere sempre le opzioni dai sottoelenchi Currently available (Attualmente disponibili).

È inoltre possibile visualizzare i prodotti per i quali attualmente sono disponibili patch utilizzando il comando describe-patch-properties in AWS CLI o il comando API DescribePatchProperties.

Problema: AWS-RunPatchBaseline restituisce un HRESULT (Windows Server)

Problema: hai ricevuto un errore simile al seguente:

----------ERROR-------
Invoke-PatchBaselineOperation : Exception Details: An error occurred when 
attempting to search Windows Update.
Exception Level 1:
 Error Message: Exception from HRESULT: 0x80240437
 Stack Trace: at WUApiLib.IUpdateSearcher.Search(String criteria)..
(Windows updates)
11/22/2020 09:17:30 UTC | Info | Searching for Windows Updates.
11/22/2020 09:18:59 UTC | Error | Searching for updates resulted in error: Exception from HRESULT: 0x80240437
----------ERROR-------
failed to run commands: exit status 4294967295

Causa: questo output indica che le API native di Windows Update non sono in grado di eseguire le operazioni di applicazione delle patch.

Soluzione: Controlla il codice HResult in Documentazione Microsoft per identificare le fasi di risoluzione dei problemi per risolvere l'errore.

Problema: il nodo gestito non ha accesso a Windows Update Catalog o WSUS

Problema: hai ricevuto un errore simile al seguente:

Downloading PatchBaselineOperations PowerShell module from https://s3.amazonaws.com/path_to_module.zip to C:\Windows\TEMP\Amazon.PatchBaselineOperations-1.29.zip.

Extracting PatchBaselineOperations zip file contents to temporary folder.

Verifying SHA 256 of the PatchBaselineOperations PowerShell module files.

Successfully downloaded and installed the PatchBaselineOperations PowerShell module.

Patch Summary for

PatchGroup :

BaselineId :

Baseline : null

SnapshotId :

RebootOption : RebootIfNeeded

OwnerInformation :

OperationType : Scan

OperationStartTime : 1970-01-01T00:00:00.0000000Z

OperationEndTime : 1970-01-01T00:00:00.0000000Z

InstalledCount : -1

InstalledRejectedCount : -1

InstalledPendingRebootCount : -1

InstalledOtherCount : -1

FailedCount : -1

MissingCount : -1

NotApplicableCount : -1

UnreportedNotApplicableCount : -1

EC2AMAZ-VL3099P - PatchBaselineOperations Assessment Results - 2020-12-30T20:59:46.169

----------ERROR-------

Invoke-PatchBaselineOperation : Exception Details: An error occurred when attempting to search Windows Update.

Exception Level 1:

Error Message: Exception from HRESULT: 0x80072EE2

Stack Trace: at WUApiLib.IUpdateSearcher.Search(String criteria)

at Amazon.Patch.Baseline.Operations.PatchNow.Implementations.WindowsUpdateAgent.SearchForUpdates(String

searchCriteria)

At C:\ProgramData\Amazon\SSM\InstanceData\i-02573cafcfEXAMPLE\document\orchestration\3d2d4864-04b7-4316-84fe-eafff1ea58

e3\PatchWindows\_script.ps1:230 char:13

+ $response = Invoke-PatchBaselineOperation -Operation Install -Snapsho ...

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : OperationStopped: (Amazon.Patch.Ba...UpdateOperation:InstallWindowsUpdateOperation) [Inv

oke-PatchBaselineOperation], Exception

+ FullyQualifiedErrorId : Exception Level 1:

Error Message: Exception Details: An error occurred when attempting to search Windows Update.

Exception Level 1:

Error Message: Exception from HRESULT: 0x80072EE2

Stack Trace: at WUApiLib.IUpdateSearcher.Search(String criteria)

at Amazon.Patch.Baseline.Operations.PatchNow.Implementations.WindowsUpdateAgent.SearchForUpdates(String searc

---Error truncated----

Causa: questo errore potrebbe essere correlato ai componenti di Windows Update o a una mancanza di connettività al catalogo di Windows Update o Windows Server Update Services (WSUS).

Soluzione: verifica che il nodo gestito disponga di connettività al Catalogo Microsoft Update tramite un gateway Internet, un gateway NAT o un'istanza NAT. Se si utilizza WSUS, verificare che il nodo gestito disponga della connettività al server WSUS nell'ambiente in uso. Se la connettività è disponibile per la destinazione desiderata, consulta la documentazione Microsoft per altre potenziali cause di HResult 0x80072EE2. Questo potrebbe indicare un problema a livello di sistema operativo.

Problema: il modulo PowerShell di PatchBaselineOperations non è scaricabile

Problema: hai ricevuto un errore simile al seguente.

Preparing to download PatchBaselineOperations PowerShell module from S3.
                    
Downloading PatchBaselineOperations PowerShell module from https://s3.amazonaws.com/path_to_module.zip to C:\Windows\TEMP\Amazon.PatchBaselineOperations-1.29.zip.
----------ERROR-------

C:\ProgramData\Amazon\SSM\InstanceData\i-02573cafcfEXAMPLE\document\orchestration\aaaaaaaa-bbbb-cccc-dddd-4f6ed6bd5514\

PatchWindows\_script.ps1 : An error occurred when executing PatchBaselineOperations: Unable to connect to the remote server

+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException

+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,_script.ps1

failed to run commands: exit status 4294967295

Soluzione: controlla la connettività del nodo gestito e le autorizzazioni per Amazon Simple Storage Service (Amazon S3). Il ruolo AWS Identity and Access Management( IAM) del nodo gestito deve utilizzare le autorizzazioni minime citate in Comunicazioni di SSM Agent con i bucket S3 gestiti di AWS. Il nodo deve comunicare con l'endpoint Amazon S3 tramite l'endpoint gateway Amazon S3, il gateway NAT o il gateway Internet. Per ulteriori informazioni sui requisiti degli endpoint VPC per AWS Systems Manager SSM Agent(SSM Agent), consulta Fase 6: Creazione dell'endpoint VPC (facoltativo).

Problema: patch mancanti

Problema: AWS-RunPatchbaseline completato con successo, ma ci sono alcune patch mancanti.

Di seguito sono elencate alcune cause comuni e le loro soluzioni.

Causa 1: la linea di base non è efficace.

Soluzione 1: Per verificare se questa è la causa, procedi come indicato di seguito.

  1. Aprire la console AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel pannello di navigazione, scegliere Run Command.

    oppure

    Se il file della pagina home AWS Systems Manager si apre per prima, scegliere l'icona del menu ( ) per aprire il riquadro di navigazione, quindi selezionare Run Command.

  3. Seleziona la scheda Cronologia dei comandi e quindi seleziona il comando di cui si desidera controllare la baseline.

  4. Seleziona il nodo gestito con patch mancanti.

  5. Seleziona Fase 1 - Output e trova il valore BaselineId.

  6. Controlla la Configurazione della patch assegnata, ovvero il sistema operativo, il nome del prodotto, la classificazione e la gravità per la base di patch.

  7. Accedi a Catalogo Microsoft Update.

  8. Eseguire una ricerca negli ID articolo Microsoft Knowledge Base (KB), ad esempio KB3216916.

  9. Verifica che il valore in Prodotto corrisponda a quello del tuo nodo e seleziona il Titolo corrispondente. Si aprirà una nuova finestra Dettagli aggiornamento.

  10. Nella scheda Panoramica, classificazione e Gravità MSRC devono corrispondere alla configurazione della base di patch trovata in precedenza.

Causa 2: la patch è stata sostituita.

Soluzione 2: Per verificare che sia vero, procedi come indicato di seguito.

  1. Accedi a Catalogo Microsoft Update.

  2. Eseguire una ricerca negli ID articolo Microsoft Knowledge Base (KB), ad esempio KB3216916.

  3. Verifica che il valore in Prodotto corrisponda a quello del tuo nodo e seleziona il Titolo corrispondente. Si aprirà una nuova finestra Dettagli aggiornamento.

  4. Accedi alla scheda Package details. Cerca una voce sotto l'intestazione Questo aggiornamento è stato sostituito dagli aggiornamenti seguenti:

Causa 3: La stessa patch potrebbe avere numeri KB diversi perché gli aggiornamenti in linea di WSUS e Windows vengono gestiti come canali di rilascio indipendenti da Microsoft.

Soluzione 3: verifica l'idoneità della patch. Se il pacchetto non è disponibile in WSUS, installa Sistema operativo Build 14393.3115. Se il pacchetto è disponibile per tutte le build del sistema operativo, installaCostruzioni del sistema operativo 18362.1256 e 18363.1256.

Contattare AWS Support

Se non riesci a trovare soluzioni per la risoluzione dei problemi in questa sezione o nei problemi di Systems Manager in AWS re:Post, e se disponi di un piano Sviluppatore, Business o EnterpriseAWS Support, è possibile creare un caso di supporto tecnico a AWS Support.

Prima di contattare AWS Support, raccogli i seguenti elementi:

  • Registri di SSM Agent

  • Run CommandID comando, ID finestra di manutenzione o ID esecuzione automazione

  • Per i nodi gestiti Windows Server, raccogli anche quanto segue:

    • %PROGRAMDATA%\Amazon\PatchBaselineOperations\Logs come descritto nella scheda Windows diCome vengono installate le patch

    • Registri degli aggiornamenti di Windows: per Windows Server 2012 R2 e versioni precedenti, usa %windir%/WindowsUpdate.log. Per Windows Server 2016 e versioni successive, esegui prima il comando PowerShell Get-WindowsUpdateLog prima di utilizzare %windir%/WindowsUpdate.log

  • Per i nodi gestiti da Linux, raccogli anche quanto segue:

    • I contenuti del file /var/lib/amazon/ssm/instance-id/document/orchestration/Run-Command-execution-id/awsrunShellScript/PatchLinux: