Use cases and best practices - AWS Systems Manager

Use cases and best practices

This topic lists common use cases and best practices for AWS Systems Manager capabilities. If available, this topic also includes links to relevant blog posts and technical documentation.


The title of each section here is an active link to the corresponding section in the technical documentation.


  • Create self-service runbooks for infrastructure as Automation documents.

  • Use Automation to simplify creating AMIs from the AWS Marketplace or custom AMIs, using public SSM documents or by authoring your own workflows.

  • Build and maintain AMIs using the AWS-UpdateLinuxAmi and AWS-UpdateWindowsAmi Automation documents, or using custom Automation documents that you create.


  • Use Systems Manager Inventory with AWS Config to audit your application configurations over time.

Maintenance Windows

  • Define a schedule to perform potentially disruptive actions on your instances such as OS patching, driver updates, or software installations.

  • For information on the differences between State Manager and Maintenance Windows, see Choosing between State Manager and Maintenance Windows.

Patch Manager

  • Use Patch Manager to roll out patches at scale and increase fleet compliance visibility across your instances.

  • Integrate Patch Manager with AWS Security Hub to receive alerts when instances in your fleet go out of compliance and monitor the patching status of your fleets from a security point of view. There is a charge to use Security Hub. For more information, see Pricing.

Run Command

State Manager

Managed instances

  • Systems Manager requires accurate time references in order to perform its operations. If your instance's date and time are not set correctly, they may not match the signature date of your API requests. In some cases, this will lead to errors or incomplete functionality. For example, instances with incorrect time settings will not be included in your lists of managed instances.

    For information on setting the time on your instances, see the following topics: