Solução de problemas de Patch Manager - AWS Systems Manager

Solução de problemas de Patch Manager

Use as informações a seguir para ajudar a solucionar problemas com o Patch Manager, um recurso do AWS Systems Manager.

Problema: erro “Invoke-PatchBaselineOperation: Access Denied” ou erro “Unable to download file from S3” para baseline_overrides.json

Problema: quando as operações de aplicação de patches especificadas pela política de patch são executadas, você recebe um erro semelhante ao exemplo a seguir.

Example error on Windows Server
----------ERROR------- Invoke-PatchBaselineOperation : Access Denied At C:\ProgramData\Amazon\SSM\InstanceData\i-02573cafcfEXAMPLE\document\orchestr ation\792dd5bd-2ad3-4f1e-931d-abEXAMPLE\PatchWindows\_script.ps1:219 char:13 + $response = Invoke-PatchBaselineOperation -Operation Install -Snapsho ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : OperationStopped: (Amazon.Patch.Ba...UpdateOpera tion:InstallWindowsUpdateOperation) [Invoke-PatchBaselineOperation], Amazo nS3Exception + FullyQualifiedErrorId : PatchBaselineOperations,Amazon.Patch.Baseline.Op erations.PowerShellCmdlets.InvokePatchBaselineOperation failed to run commands: exit status 0xffffffff
Example error on Linux
[INFO]: Downloading Baseline Override from s3://aws-quicksetup-patchpolicy-123456789012-abcde/baseline_overrides.json [ERROR]: Unable to download file from S3: s3://aws-quicksetup-patchpolicy-123456789012-abcde/baseline_overrides.json. [ERROR]: Error loading entrance module.

Causa: você criou uma política de patch na Quick Setup, e alguns de seus nós gerenciados já tinham um perfil de instância anexado (para instâncias do EC2) ou um perfil de serviço anexado (para máquinas que não são do EC2). No entanto, você não marcou a caixa de seleção Adicionar políticas do IAM necessárias aos perfis de instância existentes anexados às suas instâncias, conforme mostrado na imagem a seguir.

A caixa de seleção Adicionar políticas do IAM necessárias aos perfis de instância existentes.

Quando você cria uma política de patch, também é criado um bucket do Amazon S3 para armazenar o arquivo de configuração baseline_overrides.json da política. Se você não marcar a caixa de seleção Adicionar políticas do IAM necessárias aos perfis de instância existentes anexados às suas instâncias ao criar a política, as políticas do IAM e as etiquetas de recursos necessárias para acessar baseline_overrides.json no bucket do S3 não serão adicionadas automaticamente aos perfis de instâncias e perfis de serviço já existentes no IAM.

Solução 1: exclua a configuração da política de patch atual e crie uma substituta, certificando-se de marcar a caixa de seleção Adicionar políticas do IAM necessárias aos perfis de instância existentes anexados às suas instâncias. Essa seleção aplica as políticas do IAM criadas por essa configuração da Quick Setup aos nós que já têm um perfil de instância ou um perfil de serviço anexado. (Por padrão, a Quick Setup adiciona as políticas necessárias às instâncias e aos nós que ainda não tenham perfis de instância ou perfis de serviço.) Para obter mais informações, consulte Automate organization-wide patching using a Quick Setup patch policy.

Solução 2: adicione manualmente as permissões e etiquetas necessárias a cada perfil de instância do IAM e perfil de serviço do IAM que você usa com a Quick Setup. Para obter instruções, consulte Permissões para o bucket do S3 da política de patch.

Problema: a aplicação de patches falha sem uma causa aparente ou mensagem de erro

Problema: uma operação de aplicação de patches falha sem retornar uma mensagem de erro.

Possível causa: se houver mais de uma invocação de AWS-RunPatchBaseline ao mesmo tempo, elas podem entrar em conflito umas com as outras, fazendo com que as tarefas de aplicação de patches falhem. Isso pode não estar indicado nos logs de aplicação de patches.

Para verificar se as operações simultâneas de aplicação de patches foram interrompidas, analise o histórico de comandos no Run Command, um recurso do AWS Systems Manager. Para um nó gerenciado com uma falha de aplicação de patches, verifique se várias operações tentaram aplicar patches à máquina com uma diferença de até dois minutos uma da outra. Às vezes, esse cenário pode causar falha.

Você também pode usar a AWS Command Line Interface (AWS CLI) para verificar tentativas simultâneas de aplicação de pacthes usando o comando a seguir. Substitua o valor de node-id pelo ID de seu nó gerenciado.

aws ssm list-commands \ --filter "key=DocumentName,value=AWS-RunPatchBaseline" \ --query 'Commands[*].{CommandId:CommandId,RequestedDateTime:RequestedDateTime,Status:Status}' \ --instance-id node-id \ --output table

Solução: se você determinar que a aplicação de patches falhou devido a operações de aplicação de patches concorrentes no mesmo nó gerenciado, ajuste as configurações de aplicação de patches para evitar que isso ocorra novamente. Por exemplo, se duas janelas de manutenção especificarem horários de aplicação de patches coincidentes, remova ou revise um deles. Se uma janela de manutenção especificar uma operação de aplicação de patches, mas uma política de patch especificar outra para o mesmo horário, considere remover a tarefa da janela de manutenção.

Se você determinar que operações de aplicação de patches conflitantes não foram a causa da falha nesse cenário, recomendamos entrar em contato com o AWS Support.

Problema: resultados inesperados de conformidade de patches

Problema: ao analisar os detalhes de conformidade dos patches gerados após uma operação Scan, os resultados incluem informações que não refletem as regras definidas na lista de referência de patches. Por exemplo, uma exceção adicionada à lista Rejected patches (Patches rejeitados) em uma lista de referência de patches é listada como Missing. Ou os patches classificados como Important estão listados como ausentes, mesmo que sua lista de referência de patches especifique somente patches Critical.

Causa: Patch Manager atualmente oferece suporte a vários métodos de execução de operações Scan:

  • Uma política de patch configurada no Quick Setup

  • Uma opção do Host Management configurada no Quick Setup

  • Uma janela de manutenção para executar um patch Scan ou tarefa Install

  • Uma operação Patch now (Aplicar patch agora) sob demanda

Quando uma operação Scan é executada, ela substitui os detalhes de conformidade da verificação mais recente. Se você tiver mais de um método configurado para executar uma operação Scan, e eles usarem listas de referência de patches diferentes com regras diferentes, eles resultarão em resultados de conformidade de patches diferentes.

Solução: para evitar resultados inesperados de conformidade de patches, recomendamos usar somente um método por vez para executar a operação Scan do Patch Manager. Para ter mais informações, consulte Prevenção de substituições não intencionais de dados de conformidade de patches.

Erros ao executar AWS-RunPatchBaseline no Linux

Tópicos

Problema: erro 'Nenhum arquivo ou diretório'

Problema: Quando você executaAWS-RunPatchBaseline, o patch falha com um dos seguintes erros.

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: dois comandos para executar AWS-RunPatchBaseline estavam em execução ao mesmo tempo no mesmo nó. Isso cria uma condição de corrida que resulta nofile patch-baseline-operations*não sendo criado ou acessado corretamente.

Causa 2: espaço de armazenamento insuficiente permanece no diretório /var.

Solução 1: Certifique-se de que nenhuma janela de manutenção tenha dois ou maisRun CommandTarefas que executamAWS-RunPatchBaselinecom o mesmo nível de prioridade e que são executados nos mesmos IDs de destino. Se for esse o caso, reordene a prioridade.Run CommandÉ um recurso doAWS Systems Manager.

Solução 2: Certifique-se de que apenas uma janela de manutenção de cada vez esteja em execuçãoRun Commandtarefas que usamAWS-RunPatchBaselineNos mesmos alvos e na mesma programação. Nesse caso, altere o horário.

Solução 3: Certifique-se de que apenas uma associação do State Manager esteja em execução no AWS-RunPatchBaseline na mesma agenda e voltada para os mesmos nós gerenciados. O State Manager é um recurso do AWS Systems Manager.

Solução 4: Libere espaço de armazenamento suficiente sob o/varpara os pacotes de atualização.

Problema: erro 'outro processo adquiriu bloqueio yum'

Problema: Quando você executaAWS-RunPatchBaselineA aplicação de patch falha com o erro a seguir.

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

Causa: o documento AWS-RunPatchBaseline começou a ser executado em um nó gerenciado onde já está sendo executado em outra operação e adquiriu o processo yum do gerenciador de pacotes.

Solução: certifique-se de que nenhuma associação, tarefa da janela de manutenção ou outras configuração do State Manager executada no AWS-RunPatchBaseline em uma programação esteja voltada para o mesmo nó gerenciado de destino aproximadamente ao mesmo tempo.

Problema: erro 'Permissão negada/falhou ao executar comandos'

Problema: Quando você executaAWS-RunPatchBaselineA aplicação de patch falha com o erro a seguir.

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

Causa: o /var/lib/amazon/ pode ser montado com permissões do noexec. Este é um problema porqueSSM Agentfaz o download de scripts de carga para/var/lib/amazon/ssme executa-os a partir desse local.

Solução: confirme se você configurou partições exclusivas para /var/log/amazon e /var/lib/amazon, e se elas estão montadas com permissões exec.

Problema: Erro 'Não é possível baixar a carga de pagamento'

Problema: Quando você executaAWS-RunPatchBaselineA aplicação de patch falha com o erro a seguir.

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: o nó gerenciado não tem as permissões necessárias para acessar o bucket especificado do Amazon Simple Storage Service (Amazon S3).

Solução: atualize sua configuração de rede para que os endpoints do S3 estejam acessíveis. Para obter mais detalhes, consulte informações sobre o acesso necessário aos buckets do S3 para o Patch Manager em Comunicações do SSM Agent com os buckets do S3 gerenciados pela AWS.

Problema: erro 'gerenciador de pacotes não suportado e combinação de versão python'

Problema: Quando você executaAWS-RunPatchBaselineA aplicação de patch falha com o erro a seguir.

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

Causa: uma versão com suporte do python3 não está instalada na instância do Debian Server, Raspberry Pi OS ou Ubuntu Server.

Solução: instale uma versão com suporte do python3 (3.0-3.10) no servidor, que é necessária para nós gerenciados do Debian Server, Raspberry Pi OS e Ubuntu Server.

Problema:Patch Managernão está aplicando regras especificadas para excluir determinados pacotes

Problema: Você tentou excluir determinados pacotes especificando-os na seção/etc/yum.conf, no formatoexclude=package-name, mas eles não são excluídos durante oPatch Manager Installoperação.

Causa: o Patch Manager não incorpora exclusões especificadas no arquivo /etc/yum.conf.

Solução: Para excluir pacotes específicos, crie uma linha de base de patch personalizada e crie uma regra para excluir os pacotes que você não deseja instalar.

Problema: falha na aplicação de patches ePatch Managerrelata que a extensão Indicação de Nome do Servidor para TLS não está disponível

Problema: A operação de patch emite a seguinte mensagem.

/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: esta mensagem não indica um erro. Em vez disso, é um aviso de que a versão mais antiga do Python distribuída com o sistema operacional não suporta a Indicação de Nome do Servidor TLS. O script de carga de patch do Systems Manager emite este aviso ao se conectar aoAWSAs APIs que oferecem suporte a SNI.

Solução: para solucionar problemas de falhas de patch quando essa mensagem é relatada, revise o conteúdo dostdoutestderrarquivos. Se você não configurou a lista de referência de patches para armazenar esses arquivos em um bucket do S3 ou no Amazon CloudWatch Logs, é possível localizar os arquivos no local a seguir em seu nó gerenciado do Linux.

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

Problema:Patch Managerrelata 'Não há mais espelhos para tentar'

Problema: A operação de patch emite a seguinte mensagem.

[Errno 256] No more mirrors to try.

Causa: os repositórios configurados em seu nó gerenciado não estão funcionando corretamente. As possíveis causas incluem:

  • OyumA cache está corrompida.

  • Um URL de repositório não pode ser alcançado devido a problemas relacionados à rede.

Solução: o Patch Manager usa o gerenciador de pacotes padrão do nó gerenciado para executar a operação de aplicação de patch. Verifique se os repositórios estão configurados e funcionando corretamente.

Problema: a aplicação de patches falhou com “Error code returned from curl is 23”

Problema: uma operação de aplicação de patches que usa AWS-RunPatchBaseline falha com um erro semelhante a este:

05/01/2023 17:04:30 root [ERROR]: Error code returned from curl is 23

Causa: a ferramenta curl usada em seus sistemas não tem as permissões necessárias para gravar no sistema de arquivos. Isso pode ocorrer quando a ferramenta curl padrão do gerenciador de pacotes foi substituída por outra versão, como uma instalada com snap.

Solução: se a versão curl fornecida pelo gerenciador de pacotes foi desinstalada quando outra versão foi instalada, reinstale-a.

Se você precisar manter várias versões do curl instaladas, certifique-se de que a versão associada ao gerenciador de pacotes esteja no primeiro diretório listado na variável PATH. Você pode verificar isso executando o comando echo $PATH para ver a ordem atual dos diretórios de seu sistema que estão sendo verificados quanto a arquivos executáveis.

Problema: falha na aplicação de patches com a mensagem “Error unpacking rpm package...”

Problema: uma operação de aplicação de patches falha com um erro semelhante a este:

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 um pacote específico está presente em vários instaladores de pacotes, como pip e yum ou dnf, podem ocorrer conflitos ao usar o gerenciador de pacotes padrão.

Um exemplo comum ocorre com o pacote urllib3, encontrado em pip, yum e dnf.

Causa 2: o pacote python-urllib3 está corrompido. Isso poderá acontecer se os arquivos do pacote tiverem sido instalados ou atualizados pelo pip após o pacote rpm ter sido instalado anteriormente por yum ou dnf.

Solução: remova o pacote python-urllib3 do pip executando o comando sudo pip uninstall urllib3, mantendo o pacote somente no gerenciador de pacotes padrão (yum ou dnf).

Problema: falha na aplicação de patches com a mensagem “Errors were encountered while downloading packages”

Problema: durante a aplicação de patches, você recebe um erro semelhante a este:

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: esse erro pode ocorrer quando a memória disponível em um nó gerenciado é insuficiente.

Solução: configure a memória swap ou atualize a instância para um tipo diferente para aumentar o suporte à memória. Em seguida, inicie uma nova operação de aplicação de patches.

Problema: falha na aplicação de patches com a mensagem “Não foi possível verificar as seguintes assinaturas, pois a chave pública não está disponível”

Problema: aplicação de patches falha no Ubuntu Server com um erro semelhante a este:

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: a chave GNU Privacy Guard (GPG) expirou ou está ausente.

Solução: atualize a chave GPG ou adicione a chave novamente.

Por exemplo, usando o erro mostrado anteriormente, vemos que a chave 467B942D3A79BD29 está ausente e deve ser adicionada. Para fazer isso, execute um dos comandos a seguir:

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

Ou, para atualizar todas as chaves, execute este comando:

sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com --refresh-keys

Se o erro persistir depois disso, é recomendável relatar o problema à organização que retém o repositório. Até que uma correção esteja disponível, você pode editar o arquivo /etc/apt/sources.list de modo a omitir o repositório durante o processo de aplicação de patches.

Para fazer isso, abra o arquivo sources.list para edição, localize a linha do repositório e insira um caractere # no início da linha para comentá-la. Depois, salve e feche o arquivo.

Problema: falha na aplicação de patches com a mensagem “NoMoreMirrorsRepoError”

Problema: você recebe um erro semelhante a este:

NoMoreMirrorsRepoError: failure: repodata/repomd.xml from pgdg94: [Errno 256] No more mirrors to try.

Causa: há um erro no repositório de origem.

Solução: é recomendável relatar o problema à organização que retém o repositório. Até que o erro seja corrigido, é possível desabilitar o repositório no nível do sistema operacional. Para isso, execute o seguinte comando, substituindo o valor de repo-name pelo nome do repositório:

yum-config-manager --disable repo-name

Veja um exemplo a seguir.

yum-config-manager --disable pgdg94

Depois de executar esse comando, execute outra operação de aplicação de patches.

Problema: falha na aplicação de patches com a mensagem “Unable to download payload”

Problema: você recebe um erro semelhante a este:

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: a configuração do nó gerenciado contém erros ou está incompleta.

Solução: verifique se o nó gerenciado está configurado desta forma:

  • Regra de saída TCP 443 no grupo de segurança.

  • Regra de saída TCP 443 em NACL.

  • Regra de entrada TCP 1024-65535 em NACL.

  • NAT/IGW na tabela de rotas para fornecer conectividade a um endpoint do S3. Se a instância não tiver acesso à Internet, forneça conectividade com o endpoint do S3. Para isso, adicione um endpoint de gateway do S3 à VPC e integre-o à tabela de rotas do nó gerenciado.

Problema: falha na aplicação de patches com a mensagem “install errors: dpkg: error: dpkg frontend is locked by another process”

Problema: aplicação de patches falha com um erro semelhante a este:

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: o gerenciador de pacotes já está executando outro processo em um nó gerenciado no nível do sistema operacional. Se esse outro processo levar muito tempo para ser concluído, a operação de aplicação de patches do Patch Manager poderá atingir o tempo limite e falhar.

Solução: após a conclusão do outro processo que está usando o gerenciador de pacotes, execute uma nova operação de aplicação de patches.

Problema: a aplicação de patches no Ubuntu Server falha com um erro “dpkg was interrupted”

Problema: no Ubuntu Server, a aplicação de patches falha com um erro semelhante a este:

E: dpkg was interrupted, you must manually run
'dpkg --configure -a' to correct the problem.

Causa: um ou mais pacotes foram configurados incorretamente.

SoluçãoSiga estas etapas:

  1. Execute os seguintes comandos, um por vez, para verificar quais pacotes são afetados e quais são os problemas com cada pacote:

    sudo apt-get check
    sudo dpkg -C
    dpkg-query -W -f='${db:Status-Abbrev} ${binary:Package}\n' | grep -E ^.[^nci]
  2. Execute este comando para corrigir os pacotes com problemas:

    sudo dpkg --configure -a
  3. Se o comando anterior não resolver totalmente o problema, execute este comando:

    sudo apt --fix-broken install

Problema: o utilitário gerenciador de pacotes não consegue resolver uma dependência de pacote

Problema: o gerenciador de pacotes nativo no nó gerenciado não consegue resolver uma dependência de pacote, e a aplicação de patches falha. O exemplo de mensagem de erro a seguir indica esse tipo de falha em um sistema operacional que usa o yum como gerenciador de pacotes.

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: em sistemas operacionais Linux, o Patch Manager usa o gerenciador de pacotes nativo da máquina para executar operações de aplicação de patches, como yum, dnf, apt e zypper. As aplicações detectam, instalam, atualizam ou removem automaticamente pacotes dependentes, conforme necessário. Porém, algumas condições podem fazer com que o gerenciador de pacotes não consiga concluir uma operação de dependência, como:

  • Múltiplos repositórios conflitantes estão configurados no sistema operacional.

  • O URL do repositório remoto está inacessível por causa de problemas relacionados à rede.

  • Foi encontrado um pacote para a arquitetura errada no repositório.

Solução: a aplicação de patches pode falhar por causa de um problema de dependência de diversos motivos. Portanto, é recomendável entrar em contato com o AWS Support para ajudar na solução de problemas.

Erros ao executar AWS-RunPatchBaseline no Windows Server

Problema: família de produtos/pares de produtos incompatíveis

Problema: ao criar uma lista de referência de patches no console do Systems Manager, você especifica uma família de produtos e um produto. Por exemplo, você pode escolher:

  • Product family (Família de produtos): Office

    Product (Produto): Office 2016

Cause: se você tentar criar uma linha de base de patch com um par ou uma família de produtos sem correspondência, uma mensagem de erro será exibida. Isso pode acontecer pelos seguintes motivos:

  • Você selecionou um par e uma família de produtos, mas depois removeu a seleção da família de produtos.

  • Você escolheu um produto na sublista Obsolete or mismatched options (Opções obsoletas ou incompatíveis) em vez de sublista Available and matching options (Opções disponíveis e correspondentes).

    Os itens na sublista Obsolete or mismatched options (Opções obsoletas ou incompatíveis) do produto podem ter sido inseridos incorretamente por um SDK ou comando create-patch-baseline da AWS Command Line Interface (AWS CLI). Isso pode significar um erro ortográfico foi introduzido ou um produto foi atribuído à família de produtos errada. Um produto também será incluído na sublista Obsolete or mismatched options (Opções obsoletas ou incompatíveis) se tiver sido especificado para uma linha de base de patch anterior, mas não tiver patches disponibilizados pela Microsoft.

Solução: para evitar esse problema no console, sempre escolha opções das sublistas Currently available options (Opções atualmente disponíveis).

Você também pode visualizar os produtos com patches atualmente disponíveis usando o comando describe-patch-properties na AWS CLI ou o comando da API DescribePatchProperties.

Problema:AWS-RunPatchBaselineretorna umHRESULT(Windows Server)

Problema: você recebeu um erro semelhante ao seguinte:

----------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: esta saída indica que as APIs nativas do Windows Update não conseguiram executar as operações de aplicação de patches.

Solução: verifique o código HResult nos tópicos a seguir em microsoft.com para identificar as etapas de solução de problemas e resolver o erro:

Problema: o nó gerenciado não tem acesso ao Catálogo do Windows Update ou ao WSUS

Problema: você recebeu um erro semelhante ao seguinte:

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: este erro pode estar relacionado aos componentes do Windows Update ou a falta de conectividade com o Catálogo do Windows Update ou Windows Server Update Services (WSUS).

Solução: confirme se o nó gerenciado tem conectividade com o Catálogo do Microsoft Update por meio de um gateway da Internet, um gateway de NAT ou uma instância NAT. Se você estiver usando o WSUS, confirme se o nó gerenciado tem conectividade com o servidor WSUS em seu ambiente. Se a conectividade estiver disponível para o destino pretendido, verifique a documentação da Microsoft para outras causas potenciais doHResult 0x80072EE2. Isso pode indicar um problema no nível do sistema operacional.

Problema: o módulo PatchBaselineOperations PowerShell não pode ser baixado

Problema: você recebeu um erro semelhante ao seguinte:

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

Solução: confira a conectividade e as permissões do nó gerenciado para o Amazon Simple Storage Service (Amazon S3). A função AWS Identity and Access Management (IAM) do nó gerenciado deve usar as permissões mínimas citadas em Comunicações do SSM Agent com os buckets do S3 gerenciados pela AWS. O nó deve se comunicar com o endpoint do Amazon S3 por meio do endpoint do gateway do Amazon S3, do gateway NAT ou do gateway da Internet. Para obter mais informações sobre os requisitos do endpoint da VPC para oAWS Systems Manager SSM Agent (SSM Agent), consulte Melhorar a segurança das instâncias do EC2 usando endpoints da VPC para o Systems Manager.

Problema: patches ausentes

Problema:AWS-RunPatchbaselineconcluída com êxito, mas há alguns patches ausentes.

Veja a seguir algumas causas comuns e suas soluções.

Causa 1: lista de referência não é eficaz.

Solução 1: Para verificar se essa é a causa, use o procedimento a seguir.

  1. Abra o console AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Run Command.

  3. Selecione aHistórico de comandose selecione o comando cuja linha de base você deseja verificar.

  4. Selecione o nó gerenciado que tiver patches ausentes.

  5. SelectEtapa 1 - Saídae encontre oBaselineIdvalue.

  6. Verifique a configuração da lista de referência de patches atribuída, ou seja, o sistema operacional, o nome do produto, a classificação e a gravidade da lista de referência do patch.

  7. Acesse o Microsoft Update Catalog.

  8. Pesquise os IDs de artigo da Base de Dados de Conhecimento Microsoft (KB) (por exemplo, KB3216916).

  9. Verifique se o valor em Product (Produto) corresponde ao do nó gerenciado e selecione o Title (Título) correspondente. Uma nova janela Update Details (Atualizar detalhes) será aberta.

  10. NoVisão geral, a guiaclassificaçãoeGravidade do CSCdeve corresponder à configuração da linha de base do patch encontrada anteriormente.

Causa 2: o patch foi substituído.

Solução 2: Para conferir se isso de fato ocorreu, use o procedimento a seguir.

  1. Acesse o Microsoft Update Catalog.

  2. Pesquise os IDs de artigo da Base de Dados de Conhecimento Microsoft (KB) (por exemplo, KB3216916).

  3. Verifique se o valor em Product (Produto) corresponde ao do nó gerenciado e selecione o Title (Título) correspondente. Uma nova janela Update Details (Atualizar detalhes) será aberta.

  4. Acesse a guia Package Details (Detalhes do Pacote). Procure por uma entrada sob oEsta actualização foi substituída pelas seguintes actualizações:.

Causa 3: o mesmo patch pode ter números de KB diferentes porque as atualizações online do WSUS e do Windows são tratadas como canais de lançamento independentes pela Microsoft.

Solução 3: Verifique a elegibilidade do patch. Se o pacote não estiver disponível no WSUS, instale a Compilação do SO 14393.3115. Se o pacote estiver disponível para todas as compilações do sistema operacional, instale as Compilações do SO 18362.1256 e 18363.1256.

Entrar em contato com o AWS Support

Se não conseguir encontrar soluções para a solução de problemas nesta seção ou nos problemas do Systems Manager em AWS re:Post, e você tiver um plano do AWS Support Developer, Business, or Enterprise, você poderá criar um caso de suporte técnico em AWS Support.

Antes de entrar em contato com o AWS Support, colete os seguintes itens:

  • Registros de agentes do SSM

  • ID de comando, ID de janela de manutenção ou ID de execução de automação do Run Command

  • Para os nós gerenciados do Windows Server, colete também o seguinte:

    • %PROGRAMDATA%\Amazon\PatchBaselineOperations\Logs, conforme descrito na guia Windows do Como os patches são instalados

    • Registros de atualização do Windows: ParaWindows Server2012 R2 e anteriores, use%windir%/WindowsUpdate.log. Para o Windows Server 2016 e mais recente, primeiro execute o comando do PowerShellGet-WindowsUpdateLog, antes de usar o %windir%/WindowsUpdate.log

  • Para os nós gerenciados do Linux, colete também o seguinte:

    • O conteúdo do diretório /var/lib/amazon/ssm/instance-id/document/orchestration/Run-Command-execution-id/awsrunShellScript/PatchLinux