Criar conteúdo de documento do SSM - AWS Systems Manager

Criar conteúdo de documento do SSM

Se os documentos públicos do AWS Systems Manager, não executarem todas as ações que você deseja executar em seus recursos da AWS, você poderá criar seus próprios documentos do SSM. Você também pode clonar documentos do SSM usando o console do. A clonagem de documentos copia o conteúdo de um documento existente em um novo documento que você pode modificar. Ao criar ou clonar um documento, o conteúdo do documento não deve exceder 64 KB. Essa cota também inclui o conteúdo especificado para parâmetros de entrada em runtime. Ao criar um novo Command ou documento de Policy, recomendamos que você use o esquema versão 2.2 ou posterior para que possa aproveitar os recursos mais recentes, como edição de documentos, versionamento automático, sequenciamento e muito mais.

Escrever conteúdo de documento do

Para criar seu próprio conteúdo de documentos do , é importante entender os diferentes esquemas, recursos, plugins e sintaxe disponíveis para documentos do . Recomendamos familiarizar-se com os recursos a seguir.

Documentos SSM predefinidos da AWS podem executar algumas das ações exigidas. Você pode chamar esses documentos usando os plugins aws:runDocument, aws:runCommand ou aws:executeAutomation em seu documento SSM personalizado, dependendo do tipo de documento. Também é possível copiar partes desses documentos em um documento SSM personalizado e editar o conteúdo para atender às suas necessidades.

dica

Ao criar conteúdo de documentos SSM, é possível alterar o conteúdo e atualizar o documento SSM várias vezes durante o teste. Os comandos a seguir atualizam o documento do com o conteúdo mais recente e atualizam a versão padrão do documento para a versão mais recente do documento.

nota

Os comandos do Linux e do Windows usam a ferramenta de linha de comando jq para filtrar os dados da resposta JSON.

Linux & macOS
latestDocVersion=$(aws ssm update-document \ --content file://path/to/file/documentContent.json \ --name "ExampleDocument" \ --document-format JSON \ --document-version '$LATEST' \ | jq -r '.DocumentDescription.LatestVersion') aws ssm update-document-default-version \ --name "ExampleDocument" \ --document-version $latestDocVersion
Windows
latestDocVersion=$(aws ssm update-document ^ --content file://C:\path\to\file\documentContent.json ^ --name "ExampleDocument" ^ --document-format JSON ^ --document-version "$LATEST" ^ | jq -r '.DocumentDescription.LatestVersion') aws ssm update-document-default-version ^ --name "ExampleDocument" ^ --document-version $latestDocVersion
PowerShell
$content = Get-Content -Path "C:\path\to\file\documentContent.json" | Out-String $latestDocVersion = Update-SSMDocument ` -Content $content ` -Name "ExampleDocument" ` -DocumentFormat "JSON" ` -DocumentVersion '$LATEST' ` | Select-Object -ExpandProperty LatestVersion Update-SSMDocumentDefaultVersion ` -Name "ExampleDocument" ` -DocumentVersion $latestDocVersion

Clonar um documento do SSM

Você pode clonar documentos do AWS Systems Manager usando o console de documentos do Systems Manager para criar documentos do SSM. A clonagem de documentos do SSM copia o conteúdo de um documento existente em um novo documento que você pode modificar. Não é possível clonar um documento de mais de 64 KB.

Para clonar um documento do SSM
  1. Abra o console AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Documents.

  3. Na caixa de pesquisa, insira o nome do documento que você deseja clonar.

  4. Selecione o nome do documento que você quiser clonar e escolha Clone document (Clonar documento) na lista suspensa Actions (Ações).

  5. Modifique o documento como preferir e escolhaCriar documentoPara salvar o documento.

Depois que escrever o conteúdo do documento SSM, você poderá usar o conteúdo para criar um documento do SSM usando um dos métodos a seguir.

Criar documentos SSM

Criar documentos compostos

Um documento composite do AWS Systems Manager (SSM) é um documento personalizado que realiza uma série de ações ao executar um ou mais documentos secundários do SSM. Os documentos compostos promovem a infraestrutura como código ao permitir que você crie um conjunto padrão de documentos do SSM para tarefas comuns, como inicialização de software ou ingresso de instâncias no domínio. Depois, você pode compartilhar esses documentos em Contas da AWS da mesma Região da AWS para reduzir a manutenção e garantir a consistência do documento SSM.

Por exemplo, você pode criar um documento composto que execute as seguintes ações:

  1. Instala todos os patches na lista de permissões.

  2. Instala software antivírus.

  3. Baixa scripts do GitHub e os executa.

Neste exemplo, seu documento inclui os seguintes plugins de seu documento personalizado do SSM para executar as seguintes ações:

  1. O plug-in aws:runDocument para executar o documento AWS-RunPatchBaseline, que instala todos os patches permitidos listados.

  2. O plugin aws:runDocument para executar o documento AWS-InstallApplication, que instala o software antivírus.

  3. O plugin aws:downloadContent para baixar scripts do GitHub e executá-los.

Os documentos compostos e secundários podem ser armazenados no Systems Manager, no GitHub (repositórios públicos e privados) ou no Amazon S3. Os documentos compostos e os documentos secundários podem ser criados em JSON ou YAML.

nota

Os documentos compostos só podem executar em um nível máximo de três documentos. Isso significa que um documento composto pode chamar um documento filho e que o documento filho pode chamar um último documento.

Para criar um documento composta, adicione o plugin aws:runDocument a um documento personalizado do SSM e especifique as entradas necessárias. A seguir encontra-se um exemplo de documento composto que executa as seguintes ações:

  1. Executa o plugin aws:downloadContent para baixar um documento do SSM de um repositório público do GitHub para um diretório local chamado bootstrap. O documento do SSM é chamado StateManagerBootstrap.yml (um documento YAML).

  2. Executa o plugin aws:runDocument para executar o documento StateManagerBootstrap.yml. Nenhum parâmetro é especificado.

  3. Executa o plugin aws:runDocument para executar o documento AWS-ConfigureDocker pre-defined do MUS. Os parâmetros especificados para instalar o docker na instância.

{ "schemaVersion": "2.2", "description": "My composite document for bootstrapping software and installing Docker.", "parameters": { }, "mainSteps": [ { "action": "aws:downloadContent", "name": "downloadContent", "inputs": { "sourceType": "GitHub", "sourceInfo": "{\"owner\":\"TestUser1\",\"repository\":\"TestPublic\", \"path\":\"documents/bootstrap/StateManagerBootstrap.yml\"}", "destinationPath": "bootstrap" } }, { "action": "aws:runDocument", "name": "runDocument", "inputs": { "documentType": "LocalPath", "documentPath": "bootstrap", "documentParameters": "{}" } }, { "action": "aws:runDocument", "name": "configureDocker", "inputs": { "documentType": "SSMDocument", "documentPath": "AWS-ConfigureDocker", "documentParameters": "{\"action\":\"Install\"}" } } ] }
Mais informações