Risoluzione dei problemi relativi a Patch Manager
Utilizza le informazioni seguenti per risolvere i problemi relativi di Patch Manager al AWS Systems Manager.
Argomenti
- Problema: errore "Invoke-PatchBaselineOperation: Accesso negato" o errore "Impossibile scaricare il file da S3" per baseline_overrides.json
- Problema: l'applicazione di patch non riesce senza una causa apparente o un messaggio di errore
- Problema: risultati imprevisti per la conformità delle patch
- Errori durante l'esecuzione di AWS-RunPatchBaseline su Linux
- Errori durante l'esecuzione di AWS-RunPatchBaseline su Windows Server
- Contattare AWS Support
Problema: errore "Invoke-PatchBaselineOperation: Accesso negato" o errore "Impossibile scaricare il file da S3" per baseline_overrides.json
Problema: quando vengono eseguite le operazioni di applicazione di patch specificate dalla policy di patch, viene visualizzato un errore simile all'esempio seguente.
Causa: hai creato una policy di patch in Quick Setup e alcuni dei nodi gestiti presentavano già un profilo dell'istanza (per le istanze EC2) o un ruolo di servizio (per le macchine non EC2) collegato.
Tuttavia, come mostrato nell'immagine seguente, non hai selezionato la casella di controllo Aggiungi le policy IAM richieste ai profili di istanza esistenti collegati alle istanze.
Quando crei una policy di patch, viene creato anche un bucket Amazon S3 per archiviare il file di configurazione della policy baseline_overrides.json
. Se non selezioni la casella di controllo Aggiungi le policy IAM richieste ai profili di istanza esistenti collegati alle istanze al momento della creazione della policy, le policy IAM e i tag delle risorse necessari per accedere a baseline_overrides.json
nel bucket S3 non vengono aggiunti automaticamente ai profili di istanza IAM e ai ruoli di servizio esistenti.
Soluzione 1: elimina la configurazione della policy di patch esistente, quindi crea una configurazione sostitutiva, assicurandoti di selezionare la casella di controllo Aggiungi le policy IAM richieste ai profili di istanza esistenti collegati alle istanze. Questa selezione applica le policy IAM create da questa configurazione di Quick Setup ai nodi a cui è già associato un profilo di istanza o un ruolo di servizio. (Per impostazione predefinita, Quick Setup aggiunge le policy richieste alle istanze e ai nodi che non dispongono già di profili di istanza o ruoli di servizio). Per ulteriori informazioni, consulta Automatizzazione dell'applicazione di patch a livello di organizzazione utilizzando una policy di patch di Quick Setup.
Soluzione 2: aggiungi manualmente le autorizzazioni e i tag richiesti a ogni profilo di istanza IAM e ruolo di servizio IAM che utilizzi con Quick Setup. Per istruzioni, consulta Autorizzazioni per il bucket S3 con policy di patch.
Problema: l'applicazione di patch non riesce senza una causa apparente o un messaggio di errore
Problema: un'operazione di applicazione di patch non riesce senza restituire un messaggio di errore.
Possibile causa: se si verificano più invocazioni di AWS-RunPatchBaseline
contemporaneamente, possono entrare in conflitto tra loro, causando l’esito negativo delle attività di applicazione di patch. Ciò potrebbe non essere indicato nei log di applicazione di patch.
Per verificare se le operazioni di applicazione di patch simultanee potrebbero essersi interrotte a vicenda, consulta la cronologia dei comandi in Run Command, una funzionalità di AWS Systems Manager. Per un nodo gestito con un errore di applicazione di patch, controlla se più operazioni hanno tentato di applicare le patch al computer entro 2 minuti l'una dall'altra. Questo scenario a volte può causare un errore.
È possibile inoltre utilizzare il comando AWS Command Line Interface (AWS CLI) per verificare tentativi di applicazione di patch simultanei utilizzando il comando seguente. Sostituisci il valore di node-id
con l'ID del tuo nodo gestito.
aws ssm list-commands \ --filter "key=DocumentName,value=AWS-RunPatchBaseline" \ --query 'Commands[*].{CommandId:CommandId,RequestedDateTime:RequestedDateTime,Status:Status}' \ --instance-id
node-id
\ --output table
Soluzione: se ritieni che l'applicazione di patch non sia riuscita a causa di operazioni di applicazione di patch simultanee sullo stesso nodo gestito, modifica le configurazioni di applicazione di patch per evitare che ciò si ripeta. Ad esempio, se due finestre di manutenzione specificano orari di applicazione di patch sovrapposti, rimuovine o modificane una. Se una finestra di manutenzione specifica un'operazione di applicazione di patch, ma una policy di patch ne specifica un'altra per lo stesso periodo, prendi in considerazione la possibilità di rimuovere l'attività dalla finestra di manutenzione.
Se stabilisci che le operazioni di applicazione di patch in conflitto non sono state la causa dell'errore in questo scenario, ti consigliamo di contattare AWS Support.
Problema: risultati imprevisti per la conformità delle patch
Problema: quando si esaminano i dettagli di conformità delle patch generati dopo un'operazione Scan
, questi includono informazioni che non riflettono le regole configurate nella patch di base. Ad esempio, un'eccezione aggiunta all'elenco Rejected patches (Patch rifiutate) in una patch di base viene elencata come Missing
. Oppure le patch classificate come Important
sono elencate come mancanti anche se la patch di base specifica solo le patch Critical
.
Causa: Patch Manager attualmente supporta diversi metodi di esecuzione delle operazioni Scan
:
-
Una policy di patch configurata in Quick Setup
-
Un'opzione di gestione host configurata in Quick Setup
-
Una finestra di manutenzione per eseguire un'attività
Scan
oInstall
di patch -
Un'operazione Patch now (Applica subito una patch) on demand
L'esecuzione di un'operazione Scan
, sovrascrive i dettagli di conformità della scansione più recente. Se hai impostato più metodi per eseguire un'operazione Scan
e questi utilizzano patch di base diverse con regole diverse, i risultati di conformità delle patch saranno diversi.
Soluzione: per evitare risultati imprevisti relativi alla conformità delle patch, ti consigliamo di utilizzare un solo metodo alla volta per eseguire l'operazione Scan
di Patch
Manager. Per ulteriori informazioni, consultare Evitare sovrascritture involontarie dei dati di conformità delle patch.
Errori durante l'esecuzione di AWS-RunPatchBaseline
su Linux
Argomenti
- Problema: errore “Nessun file o directory di questo tipo”
- Problema: Errore “un altro processo ha acquisito il blocco yum”
- Problema: errore “Autorizzazione negata/non riuscita a eseguire i comandi”
- Problema: errore “Impossibile scaricare il payload”
- Problema: errore “gestore di pacchetti non supportato e combinazione di versione python”
- Problema:Patch Manager non sta applicando le regole specificate per escludere determinati pacchetti
- 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: Patch Manager riporta “Niente più specchi da testare”
- Problema: l'applicazione di patch non riesce con "Il codice di errore restituito da curl è 23"
- Problema: l'applicazione della patch non riesce e viene visualizzato il messaggio "Errore durante la decompressione del pacchetto rpm..."
- Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio "Sono stati rilevati errori durante il download dei pacchetti"
- Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio "Impossibile verificare le seguenti firme perché la chiave pubblica non è disponibile"
- Problema: l'applicazione di patch non riesce con un messaggio "NoMoreMirrorsRepoError"
- Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio "Impossibile scaricare il payload"
- Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio “Il frontend dpkg è bloccato da un altro processo”
- Problema: l'applicazione di patch su Ubuntu Server non riesce con l'errore “dpkg è stato interrotto”
- Problema: il gestore di pacchetti non è in grado di risolvere una dipendenza dal pacchetto
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 sul nodo gestito in cui è già in esecuzione in un'altra operazione e ha acquisito il processo di gestione di pacchetti yum
.
Soluzione: assicurati che non vi siano associazioni State Manager, attività di finestra di manutenzione 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.amzn-s3-demo-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: non è installata una versione supportata di python3 sull’istanza Debian Server, Raspberry Pi OS, oppure Ubuntu Server.
Soluzione: installa una versione supportata di python3 (3.0 - 3.10) sul server, necessaria 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=
, ma non sono esclusi durante l'operazione Patch Manager package-name
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 di 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 might 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 di 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 S3 o in File di log Amazon CloudWatch, è 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 di 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.
Problema: l'applicazione di patch non riesce con "Il codice di errore restituito da curl è 23"
Problema: un'operazione di applicazione di patch che utilizza AWS-RunPatchBaseline
non riesce con un errore simile al seguente:
05/01/2023 17:04:30 root [ERROR]: Error code returned from curl is 23
Causa: lo strumento curl in uso sui sistemi non dispone delle autorizzazioni necessarie per scrivere sul filesystem. Ciò può verificarsi se lo strumento curl predefinito del gestore di pacchetti è stato sostituito da una versione diversa, ad esempio una versione installata con snap.
Soluzione: se la versione curl fornita dal gestore di pacchetti è stata disinstallata quando è stata installata una versione diversa, reinstallala.
Se devi mantenere installate più versioni di curl, assicurati che la versione associata al gestore di pacchetti si trovi nella prima directory elencata nella variabile PATH
. È possibile verificarlo eseguendo il comando echo $PATH
per vedere l'ordine corrente delle directory in cui viene controllata la presenza di file eseguibili sul sistema.
Problema: l'applicazione della patch non riesce e viene visualizzato il messaggio "Errore durante la decompressione del pacchetto rpm..."
Problema: un'operazione di applicazione di patch non riesce con un errore simile al seguente:
Error : Error unpacking rpm package python-urllib3-1.25.9-1.amzn2.0.2.noarch python-urllib3-1.25.9-1.amzn2.0.1.noarch was supposed to be removed but is not! failed to run commands: exit status 1
Causa 1: quando un particolare pacchetto è presente in più programmi di installazione di pacchetti, ad esempio pip
e yum
oppure dnf
, possono verificarsi conflitti quando si utilizza il gestore di pacchetti predefinito.
Un esempio comune si verifica con il pacchetto urllib3
, che si trova in pip
, yum
e dnf
.
Causa 2: il pacchetto python-urllib3
risulta danneggiato. Ciò può accadere se i file del pacchetto sono stati installati o aggiornati da pip
dopo che il pacchetto rpm
era stato precedentemente installato da yum
o dnf
.
Soluzione: rimuovi il pacchetto python-urllib3
da pip eseguendo il comando sudo pip uninstall urllib3
, mantenendo il pacchetto solo nel gestore di pacchetti predefinito (yum
o dnf
).
Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio "Sono stati rilevati errori durante il download dei pacchetti"
Problema: durante l'applicazione di patch, viene visualizzato un errore simile al seguente:
YumDownloadError: [u'Errors were encountered while downloading packages.', u'libxml2-2.9.1-6.el7_9.6.x86_64: [Errno 5] [Errno 12] Cannot allocate memory', u'libxslt-1.1.28-6.el7.x86_64: [Errno 5] [Errno 12] Cannot allocate memory', u'libcroco-0.6.12-6.el7_9.x86_64: [Errno 5] [Errno 12] Cannot allocate memory', u'openldap-2.4.44-25.el7_9.x86_64: [Errno 5] [Errno 12] Cannot allocate memory',
Causa: questo errore può verificarsi quando la memoria disponibile su un nodo gestito è insufficiente.
Soluzione: configura la memoria di swap o aggiorna l'istanza a un tipo diverso per aumentare il supporto di memoria. Quindi inizia una nuova operazione di applicazione di patch.
Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio "Impossibile verificare le seguenti firme perché la chiave pubblica non è disponibile"
Problema: un'operazione di applicazione di patch non riesce su Ubuntu Server con un errore simile al seguente:
02/17/2022 21:08:43 root [ERROR]: W:GPG error: http://repo.mysql.com/apt/ubuntu bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29, E:The repository ' http://repo.mysql.com/apt/ubuntu bionic
Causa: la chiave GNU Privacy Guard (GPG) è scaduta o risulta mancante.
Soluzione: aggiorna la chiave GPG o aggiungi di nuovo la chiave.
Ad esempio, utilizzando l'errore mostrato in precedenza, vediamo che la chiave 467B942D3A79BD29
risulta mancante e deve essere aggiunta. Per farlo, esegui uno dei comandi seguenti:
sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 467B942D3A79BD29
Oppure, per aggiornare tutte le chiavi, esegui il seguente comando:
sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com --refresh-keys
Se l'errore si ripresenta dopo questa operazione, consigliamo di segnalare il problema all'organizzazione che gestisce il repository. Fino a quando non sarà disponibile una correzione, è possibile modificare il file /etc/apt/sources.list
in modo da omettere il repository durante il processo di applicazione di patch.
A tale scopo, apri il file sources.list
per modificarlo, individua la riga del repository e inserisci un carattere #
all'inizio della riga per commentarla. Salva e chiudi il file.
Problema: l'applicazione di patch non riesce con un messaggio "NoMoreMirrorsRepoError"
Problema: viene visualizzato un errore simile al seguente:
NoMoreMirrorsRepoError: failure: repodata/repomd.xml from pgdg94: [Errno 256] No more mirrors to try.
Causa: si è verificato un errore nel repository di origine.
Soluzione: si consiglia di segnalare il problema all'organizzazione che gestisce il repository. Finché l'errore non viene corretto, è possibile disabilitare il repository a livello di sistema operativo. A tale scopo, esegui il comando seguente, sostituendo il valore di repo-name
con il nome del repository:
yum-config-manager --disable
repo-name
Di seguito è riportato un esempio.
yum-config-manager --disable pgdg94
Dopo aver eseguito questo comando, esegui un'altra operazione di applicazione di patch.
Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio "Impossibile scaricare il payload"
Problema: viene visualizzato un errore simile al seguente:
Unable to download payload: https://s3.dualstack.eu-west-1.amazonaws.com/aws-ssm-eu-west-1/patchbaselineoperations/linux/payloads/patch-baseline-operations-1.83.tar.gz. failed to run commands: exit status 156
Causa: la configurazione del nodo gestito contiene errori o è incompleta.
Soluzione: assicurati che il nodo gestito sia configurato con quanto segue:
-
Regola TCP 443 in uscita nel gruppo di sicurezza.
-
Regola TCP 443 in uscita in NACL.
-
Regola TCP 1024-65535 in entrata in NACL.
-
NAT/IGW nella tabella di routing per fornire connettività a un endpoint S3. Se l'istanza non dispone di accesso a Internet, forniscile la connettività con l'endpoint S3. A tale scopo, aggiungi un endpoint gateway S3 nel VPC e integralo con la tabella di routing del nodo gestito.
Problema: l'applicazione di patch non riesce e viene visualizzato il messaggio “Il frontend dpkg è bloccato da un altro processo”
Problema: un'operazione di applicazione di patch non riesce con un errore simile al seguente:
install errors: dpkg: error: dpkg frontend is locked by another process failed to run commands: exit status 2 Failed to install package; install status Failed
Causa: il gestore di pacchetti sta già eseguendo un altro processo su un nodo gestito a livello di sistema operativo. Se il completamento dell'altro processo richiede molto tempo, l'operazione di applicazione di patch di Patch Manager può andare in timeout e non riuscire.
Soluzione: una volta completato l'altro processo che utilizza il gestore di pacchetti, esegui una nuova operazione di applicazione di patch.
Problema: l'applicazione di patch su Ubuntu Server non riesce con l'errore “dpkg è stato interrotto”
Problema: su Ubuntu Server, un'operazione di applicazione di patch non riesce con un errore simile al seguente:
E: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem.
Causa: uno o più pacchetti non sono configurati correttamente.
Soluzione: Eseguire i seguenti passaggi:
-
Controlla quali pacchetti sono interessati e quali sono i problemi di ogni pacchetto eseguendo i seguenti comandi, uno alla volta:
sudo apt-get check
sudo dpkg -C
dpkg-query -W -f='${db:Status-Abbrev} ${binary:Package}\n' | grep -E ^.[^nci]
-
Correggi i pacchetti che presentano problemi eseguendo il seguente comando:
sudo dpkg --configure -a
-
Se il comando precedente non ha risolto completamente il problema, esegui il seguente comando:
sudo apt --fix-broken install
Problema: il gestore di pacchetti non è in grado di risolvere una dipendenza dal pacchetto
Problema: il gestore di pacchetti nativo sul nodo gestito non è in grado di risolvere una dipendenza dal pacchetto e l'applicazione di patch non riesce. Il seguente esempio di messaggio di errore indica questo tipo di errore su un sistema operativo che utilizza yum
come gestore di pacchetti.
09/22/2020 08:56:09 root [ERROR]: yum update failed with result code: 1, message: [u'rpm-python-4.11.3-25.amzn2.0.3.x86_64 requires rpm = 4.11.3-25.amzn2.0.3', u'awscli-1.18.107-1.amzn2.0.1.noarch requires python2-botocore = 1.17.31']
Causa: nei sistemi operativi Linux, Patch Manager utilizza il gestore di pacchetti nativo sul computer per eseguire operazioni di applicazione di patch, ad esempio, yum
, dnf
, apt
e zypper
. Le applicazioni rilevano, installano, aggiornano o rimuovono automaticamente i pacchetti dipendenti in base alle esigenze. Tuttavia, alcune condizioni possono impedire al gestore di pacchetti di completare un'operazione di dipendenza, ad esempio:
-
Sul sistema operativo sono configurati più repository in conflitto.
-
L'URL di un repository remoto è inaccessibile a causa di problemi relativi alla rete.
-
Nel repository è stato trovato un pacchetto per l'architettura sbagliata.
Soluzione: l'applicazione di patch potrebbe non riuscire a causa di un problema di dipendenza per un'ampia gamma di motivi. Pertanto, ti consigliamo di contattare AWS Support per ricevere assistenza nella risoluzione dei problemi.
Errori durante l'esecuzione di AWS-RunPatchBaseline
su Windows Server
Argomenti
- Problema: famiglia di prodotti/coppie di prodotti non corrispondenti
- Problema: AWS-RunPatchBaseline restituisce un HRESULT (Windows Server)
- Problema: il nodo gestito non ha accesso a Windows Update Catalog o WSUS
- Problema: il modulo PowerShell di PatchBaselineOperations non è scaricabile
- Problema: patch mancanti
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 di patch.
Soluzione: controlla il codice HResult
negli argomenti di microsoft.com seguenti 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.aws-api-domain
/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 UpdateHResult 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.aws-api-domain
/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 Migliora la sicurezza delle istanze EC2 utilizzando gli endpoint VPC per Systems Manager.
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.
Aprire la console AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/
. Nel riquadro di navigazione, scegli Run Command.
-
Seleziona la scheda Cronologia dei comandi e quindi seleziona il comando di cui si desidera controllare la baseline.
-
Seleziona il nodo gestito con patch mancanti.
-
Seleziona Fase 1 - Output e trova il valore
BaselineId
. -
Controlla la Configurazione della patch assegnata, ovvero il sistema operativo, il nome del prodotto, la classificazione e la gravità per la base di patch.
-
Accedi a Catalogo Microsoft Update
. -
Eseguire una ricerca negli ID articolo Microsoft Knowledge Base (KB), ad esempio KB3216916.
-
Verifica che il valore in Prodotto corrisponda a quello del tuo nodo e seleziona il Titolo corrispondente. Si aprirà una nuova finestra Dettagli aggiornamento.
-
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.
-
Accedi a Catalogo Microsoft Update
. -
Eseguire una ricerca negli ID articolo Microsoft Knowledge Base (KB), ad esempio KB3216916.
-
Verifica che il valore in Prodotto corrisponda a quello del tuo nodo e seleziona il Titolo corrispondente. Si aprirà una nuova finestra Dettagli aggiornamento.
-
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
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
Prima di contattare AWS Support, raccogli i seguenti elementi:
-
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 PowerShellGet-WindowsUpdateLog
prima di utilizzare %windir%/WindowsUpdate.log
-
-
Per i nodi gestiti da Linux, raccogli anche quanto segue:
-
Il contenuto della directory
/var/lib/amazon/ssm/
instance-id
/document/orchestration/Run-Command-execution-id
/awsrunShellScript/PatchLinux
-