LogoLogo
StackState.comDownloadSupportExplore playground
StackState v5.1
StackState v5.1
  • Welcome to the StackState docs!
  • StackState self-hosted v5.1 docs
  • Getting Started
  • 🚀Setup
    • Install StackState
      • Requirements
      • Kubernetes / OpenShift
        • Kubernetes install
        • OpenShift install
        • Required Permissions
        • Non-high availability setup
        • Override default configuration
        • Configure storage
        • Configure Ingress
        • Install from custom image registry
        • Migrate from Linux install
      • Linux
        • Before you install
        • Download
        • Install StackState
        • Install with production configuration
        • Install with development configuration
        • Install with POC configuration
        • Set up a reverse proxy
        • Set up TLS without reverse proxy
      • Initial run guide
      • Troubleshooting
    • Upgrade StackState
      • Steps to upgrade
      • Version specific upgrade instructions
      • StackPack versions
      • StackState release notes
    • StackState Agent
      • About StackState Agent V3
      • Docker
      • Kubernetes / OpenShift
      • Linux
      • Windows
      • Advanced Agent configuration
      • Use an HTTP/HTTPS proxy
      • Agent V1 (legacy)
      • Migrate Agent V1 to Agent V2
        • Linux
        • Docker
    • StackState CLI
      • CLI: sts
      • CLI: stac (deprecated)
      • Comparison between CLIs
    • Data management
      • Backup and Restore
        • Kubernetes backup
        • Linux backup
        • Configuration backup
      • Data retention
      • Clear stored data
  • 👤Use
    • Concepts
      • The 4T data model
      • Components
      • Relations
      • Health state
      • Layers, Domains and Environments
      • Perspectives
      • Anomaly detection
      • StackState architecture
    • StackState UI
      • Explore mode
      • Filters
      • Views
        • About views
        • Configure the view health
        • Create and edit views
        • Visualization settings
      • Perspectives
        • Topology Perspective
        • Events Perspective
        • Traces Perspective
        • Metrics Perspective
      • Timeline and time travel
      • Analytics
      • Keyboard shortcuts
    • Checks and monitors
      • Checks
      • Add a health check
      • Anomaly health checks
      • Monitors
      • Manage monitors
    • Problem analysis
      • About problems
      • Problem lifecycle
      • Investigate a problem
      • Problem notifications
    • Metrics
      • Telemetry streams
      • Golden signals
      • Top metrics
      • Add a telemetry stream
      • Browse telemetry
      • Set telemetry stream priority
    • Events
      • About events
      • Event notifications
      • Manage event handlers
    • Glossary
  • 🧩StackPacks
    • About StackPacks
    • Add-ons
      • Autonomous Anomaly Detector
      • Health Forecast
    • Integrations
      • About integrations
      • 💠StackState Agent V2
      • 💠AWS
        • AWS
        • AWS ECS
        • AWS X-ray
        • StackState/Agent IAM role: EC2
        • StackState/Agent IAM role: EKS
        • Policies for AWS
        • AWS (legacy)
        • Migrate AWS (legacy) to AWS
      • 💠Dynatrace
      • 💠Kubernetes
      • 💠OpenShift
      • 💠OpenTelemetry
        • About instrumentations
        • AWS NodeJS Instrumentation
        • Manual Instrumentation
          • Prerequisites
          • Tracer and span mappings
          • Relations between components
          • Span health state
          • Merging components
          • Code examples
      • 💠ServiceNow
      • 💠Slack
      • 💠Splunk
        • Splunk
        • Splunk Events
        • Splunk Health
        • Splunk Metrics
        • Splunk Topology
      • 💠VMWare vSphere
      • Apache Tomcat
      • Azure
      • Cloudera
      • Custom Synchronization
      • DotNet APM
      • Elasticsearch
      • Humio
      • Java APM
      • JMX
      • Logz.io
      • MySQL
      • Nagios
      • OpenMetrics
      • PostgreSQL
      • Prometheus
      • SAP
      • SCOM
      • SolarWinds
      • Static Health
      • Static Topology
      • Traefik
      • WMI
      • Zabbix
    • Develop your own StackPacks
  • 🔧Configure
    • Topology
      • Component actions
      • Identifiers
      • Topology naming guide
      • Topology sources
      • Create a topology manually
      • Configure topology synchronizations
      • Enable email event notifications
      • Send topology data over HTTP
      • Set the topology filtering limit
      • Use a proxy for event handlers
      • Use tags
      • Tune topology synchronization
      • Debug topology synchronization
    • Telemetry
      • Add telemetry during topology synchronization
      • Data sources
        • Elasticsearch
        • Prometheus mirror
      • Send events over HTTP
      • Send metrics data over HTTP
      • Set the default telemetry interval
      • Debug telemetry synchronization
    • Traces
      • Set up traces
      • Advanced configuration for traces
    • Health
      • Health synchronization
      • Send health data over HTTP
        • Send health data
        • Repeat Snapshots JSON
        • Repeat States JSON
        • Transactional Increments JSON
      • Debug health synchronization
    • Anomaly Detection
      • Export anomaly feedback
      • Scale the AAD up and down
      • The AAD status UI
    • Security
      • Authentication
        • Authentication options
        • File based
        • LDAP
        • Open ID Connect (OIDC)
        • KeyCloak
        • Service tokens
      • RBAC
        • Role-based Access Control
        • Permissions
        • Roles
        • Scopes
        • Subjects
      • Secrets management
      • Self-signed certificates
      • Set up a security backend for Linux
      • Set up a security backend for Windows
    • Logging
      • Kubernetes logs
      • Linux logs
      • Enable logging for functions
  • 📖Develop
    • Developer guides
      • Agent checks
        • About Agent checks
        • Agent check API
        • Agent check state
        • How to develop Agent checks
        • Connect an Agent check to StackState
      • Custom functions and scripts
        • StackState functions
        • Check functions
        • Component actions
        • Event handler functions
        • ID extractor functions
        • Mapping functions
        • Monitor functions
        • Propagation functions
        • Template functions
        • View health state configuration functions
      • Custom Synchronization StackPack
        • About the Custom Synchronization StackPack
        • How to customize elements created by the Custom Synchronization StackPack
        • How to configure a custom synchronization
      • Integrate external services
      • Mirroring Telemetry
      • Monitors
        • Create monitors
        • Monitor STJ file format
      • StackPack development
        • How to create a StackPack
        • Packaging
        • How to get a template file
        • How to make a multi-instance StackPack
        • Prepare a multi-instance provisioning script
        • Upload a StackPack file
        • Prepare a shared template
        • Customize a StackPack
        • Prepare instance template files
        • Prepare a StackPack provisioning script
        • Resources in a StackPack
        • StackState Common Layer
      • Synchronizations and templated files
    • Reference
      • StackState OpenAPI docs
      • StackState Template JSON (STJ)
        • Using STJ
        • Template functions
      • StackState Markup Language (STML)
        • Using STML
        • STML Tags
      • StackState Query Language (STQL)
      • StackState Scripting Language (STSL)
        • Scripting in StackState
        • Script result: Async
        • Script result: Streaming
        • Time in scripts
        • Script APIs
          • Async - script API
          • Component - script API
          • HTTP - script API
          • Prediction - script API
          • StackPack - script API
          • Telemetry - script API
          • Time - script API
          • Topology - script API
          • UI - script API
          • View - script API
    • Tutorials
      • Create a simple StackPack
      • Push data to StackState from an external system
      • Send events to StackState from an external system
      • Set up a mirror to pull telemetry data from an external system
Powered by GitBook
LogoLogo

Legal notices

  • Privacy
  • Cookies
  • Responsible disclosure
  • SOC 2/SOC 3
On this page
  • Overview
  • Setup
  • Prerequisites
  • Proxy URL
  • Install
  • Deploy AWS Cloudformation stacks
  • AWS IAM Policies
  • Timeout
  • Integration details
  • Data retrieved
  • AWS lambdas
  • Costs
  • AWS views in StackState
  • AWS actions in StackState
  • Tags and labels
  • Troubleshooting
  • Uninstall
  • Release notes
  • See also
  1. StackPacks
  2. Integrations
  3. AWS

AWS (legacy)

StackState Self-hosted v5.1.x

PreviousPolicies for AWSNextMigrate AWS (legacy) to AWS

Last updated 2 years ago

The AWS (legacy) StackPack has been deprecated. It's recommended to use the .

Overview

Amazon Web Services (AWS) is a major cloud provider. This StackPack enables in-depth monitoring of AWS services.

  • Three AWS Lambdas collect topology data from AWS and push this to StackState:

    • stackstate-topo-cron scans AWS resources every hour using the AWS APIs and pushes this to StackState.

    • stackstate-topo-cwevents listens to CloudWatch events, transforms the events and publishes them to Kinesis.

  • StackState translates incoming data into topology components and relations.

  • The StackState CloudWatch plugin pulls available telemetry data per resource at a configured interval from AWS.

  • StackState maps retrieved telemetry (metrics) onto the associated AWS components and relations.

Setup

Prerequisites

To set up the StackState AWS integration, you need to have:

  • AWS CLI version 2.0.4 or later is installed on the environment where StackState is running.

  • An AWS user with the required access to retrieve CloudWatch metrics:

    • cloudwatch:GetMetricData

    • cloudwatch:ListMetrics

      A policy file to create a user with the correct rights can be downloaded from the StackState UI screen StackPacks > Integrations > AWS.

Proxy URL

If your StackState instance is behind a proxy, you need to configure the proxy URL and port for the AWS authorization to work. You can configure a proxy URL environment variable or JVM system property.

  • Environment variable HTTP_PROXY or HTTPS_PROXY

  • Pass following properties when starting StackState instance -Dhttp.proxyHost -Dhttp.proxyPort or -Dhttps.proxyHost -Dhttps.proxyPort

Install

Install the AWS StackPack from the StackState UI StackPacks > Integrations screen. You will need to enter the following details:

  • AWS instance name - the user-defined name of the AWS account shown in configurations such as views.

  • AWS Access Key id - the access key for the user for retrieving CloudWatch metrics.

  • AWS Secret Access Key - the secret key for the user for retrieving CloudWatch metrics.

  • AWS Role ARN - Optional: IAM role ARN - the ARN of the IAM role to be used

Deploy AWS Cloudformation stacks

The StackState AWS Cloudformation stacks are deployed on your AWS account to enable topology monitoring. There are two options for StackState monitoring:

Full install

A full installation will install the following CloudFormation Stacks:

  • stackstate-topo-cron

  • stackstate-topo-kinesis

  • stackstate-topo-cloudtrail

  • stackstate-topo-cwevents

  • stackstate-topo-publisher

Follow the steps below to complete a full install:

  1. Download the manual installation zip file and extract it. This is included in the AWS StackPack and can be accessed at the link provided in StackState after you install the AWS StackPack.

  2. Make sure the AWS CLI is configured with the proper account and has the default region set to the region that should be monitored by StackState.

  3. From the command line, run the command:

    ./install.sh {{config.baseUrl}} {{config.apiKey}} {{configurationId}}

If you wish to use a specific AWS profile or an IAM role during installation, run either of these two commands:

AWS_PROFILE=profile-name ./install.sh {{config.baseUrl}} {{config.apiKey}} {{configurationId}}
AWS_ROLE_ARN=iam-role-arn ./install.sh {{config.baseUrl}} {{config.apiKey}} {{configurationId}}

These environment variables have the same names used by the AWS_CLI utility and will be overridden with options:

  • --profile

  • --role-arn

  • --session-name

  • --external-id

Minimal install

The minimal installation is useful when less permissions are available. This installs only the stackstate-topo-cron Cloudformation stack, which means StackState's topology will only get a full topology update every hour. Updates between the hour aren't sent to StackState.

Follow the steps below to complete a minimal install:

  1. Download the manual installation zip file and extract it. This is included in the AWS StackPack and can be accessed at the link provided in StackState after you install the AWS StackPack.

  2. Make sure the AWS CLI is configured with the proper account and has the default region set to the region that should be monitored by StackState.

  3. From the command line, run the command:

    ./install.sh --topo-cron-only {{config.baseUrl}} {{config.apiKey}} {{configurationId}}

    You can also optionally specify the following:

    • --topo-cron-bucket - a custom S3 bucket to be used during deployment.

    • --topo-cron-role - a custom AWS IAM role. Note that the role must have an attached policy like that specified in the file sts-topo-cron-policy.json included in the manual install zip file.

If you wish to use a specific AWS profile or an IAM role during installation, run either of these two commands:

AWS_PROFILE=profile-name ./install.sh --topo-cron-only {{config.baseUrl}} {{config.apiKey}} {{configurationId}}
AWS_ROLE_ARN=iam-role-arn ./install.sh --topo-cron-only {{config.baseUrl}} {{config.apiKey}} {{configurationId}}

These environment variables have the same names used by the AWS_CLI utility and will be overridden with options:

  • --profile

  • --role-arn

  • --session-name

  • --external-id

AWS IAM Policies

The following AWS policies can be downloaded during the installation of the AWS StackPack in your StackState instance:

  • Full install - StackStateIntegrationPolicyInstall.json

  • Minimal install - StackStateIntegrationPolicyTopoCronInstall.json

  • Minimal set of policies - StackStateIntegrationPolicyTopoCronMinimal.json S3 bucket and role are provided by user.

  • Uninstall a full install - StackStateIntegrationPolicyUninstall.json

  • Uninstall a minimal install - StackStateIntegrationPolicyTopoCronUninstall.json

Timeout

The default read timeout for AWS is set to 30 seconds. You can specify custom read timeout with the AWS_CLI_READ_TIMEOUT environment variable.

Integration details

Data retrieved

Events

The AWS integration doesn't retrieve any Events data.

Metrics

Metrics data is pulled at a configured interval directly from AWS by the StackState CloudWatch plugin. Retrieved metrics are mapped onto the associated topology component.

Topology

Each AWS integration retrieves topology data for resources associated with the associated AWS access key.

Components

The following AWS service data is available in StackState as components:

API Gateway Resource

API Gateway Stage

API Gateway Method

AutoScaling Group

CloudFormation Stack

DynamoDB Stream

DynamoDB Table

EC2 Instance

ECS Cluster

ECS Service

ECS Task

Firehose Delivery Stream

Kinesis Stream

Lambda

Lambda Alias

Load Balancer Classic

Load Balancer V2

RDS Instance

Redshift Cluster

Route53 Domain

Route53 Hosted Zone

S3 bucket

Security Group

SNS Topic

SQS Queue

Subnet

Target Group

Target Group Instance

VPC

VPN Gateway

Relations

The following relations between components are retrieved:

  • API Gateway Method → (Service) Integration Resource (varies)

  • API Gateway Resource → API Gateways Method

  • API Gateway Stage → API Gateway Resource

  • AutoScaling Group → EC2 Instance, Load Balancer Classic

  • CloudFormation Stack → Any Resource (many supported), CloudFormation Stack Parent

  • DynamoDB Table → DynamoDB Stream

  • EC2 Instance → Security Group, Subnet, VPC

  • ECS Cluster → EC2 Instance, ECS Task (when no group service)

  • ECS Service → ECS Cluster, ECS Task, Route53 Hosted Zone, Target Group

  • ECS Task → ECS Cluster

  • Firehose Delivery Stream → Kinesis Source, S3 Bucket Destination(s)

  • Lambda → Event Source Mapping, Security Group, VPC

  • Lambda Alias → VPC

  • Load Balancer Classic → EC2 Instance, VPC

  • Load Balancer V2 → Security Group, Target Group, VPC

  • RDS Cluster → RDS Instance

  • RDS Instance → Security Group, VPC

  • Redshift Cluster → VPC

  • S3 Bucket → Lambda (notification configuration of the bucket)

  • Security Group → VPC

  • SNS Topic → Subscription

  • Subnet → VPC

  • Target Group → AutoScaling Group, EC2 Instance, VPC

  • VPN Gateway → VPC

Traces

The AWS integration doesn't retrieve any Traces data.

AWS lambdas

The StackState AWS integration installs the following AWS lambdas:

Lambda
Description

stackstate-topo-cron

Scans the initial topology based on an interval schedule and pushes to StackState.

stackstate-topo-cwevents

Listens to CloudWatch events, transforms the events and publishes them to Kinesis. Full install only.

stackstate-topo-publisher

Pushes topology from a Kinesis stream to StackState. Full install only.

Costs

The AWS lightweight Agent uses Amazon resources (Lambda and Kinesis) for which Amazon will charge a minimal fee. Amazon also charges a fee for the use of CloudWatch metrics. Metrics are only retrieved when viewed or when a check is configured on a CloudWatch metric.

AWS views in StackState

  • AWS - [instance_name] - All - includes all resources retrieved from AWS by the StackPack instance.

  • AWS - [instance_name] - Infrastructure - includes only Networking, Storage and Machines resources retrieved from AWS by the StackPack instance.

  • AWS - [instance_name] - Serverless - includes only S3 buckets, lambdas and application load balancers retrieved from AWS by the StackPack instance.

AWS actions in StackState

For example, in the StackState Topology Perspective:

  • Components of type aws-subnet have the action Go to Subnet console, which links directly to this component in the AWS Subnet console.

  • Components of type ec2-instance have the action Go to EC2 console, which links directly to this component in the EC2 console.

Tags and labels

The AWS StackPack converts tags in AWS to labels in StackState. In addition, the following special tags are supported:

Tag
Description

stackstate-identifier

Adds the specified value as an identifier to the StackState component

stackstate-environment

Places the StackState component in the environment specified

Troubleshooting

Check the StackState support site for:

Uninstall

To uninstall the StackState AWS StackPack, click the Uninstall button from the StackState UI StackPacks > Integrations > AWS screen. This will remove all AWS specific configuration in StackState.

Once the AWS StackPack has been uninstalled, you will need to manually uninstall the StackState AWS Cloudformation stacks from the AWS account being monitored. To execute the manual uninstall follow these steps:

  1. Download the manual installation zip file and extract it. This is included in the AWS StackPack and can be accessed at the link provided in StackState after you install the AWS StackPack.

  2. Make sure the AWS CLI is configured with the proper account and has the default region set to the region that should be monitored by StackState.

  3. From the command line, run the below command to de-provision all resources related to the StackPack instance:

    ./uninstall.sh {{configurationId}}

If you wish to use a specific AWS profile or an IAM role during uninstallation, run either of these two commands:

AWS_PROFILE=profile-name ./uninstall.sh {{configurationId}}
AWS_ROLE_ARN=iam-role-arn ./uninstall.sh {{configurationId}}

These environment variables have the same names used by the AWS_CLI utility and will be overridden with options:

  • --profile

  • --role-arn

  • --session-name

  • --external-id

Release notes

AWS (legacy) StackPack v5.3.3 (2021-11-16)

  • Improvement: Updated AWS CLI prerequisite text.

AWS (legacy) StackPack v5.3.2 (2021-08-20)

  • Improvement: Add description to Views.

AWS (legacy) StackPack v5.3.1 (2021-07-16)

  • Feature: Added Legacy logo and deprecation message, the new AWS stackpack is ready to use on StackState 4.4+.

  • Bugfix: Fixed problem when uninstalling CloudFormation Stack that CloudTrail was still producing logs.

  • Improvement: Updated documentation.

See also

stackstate-topo-publisher publishes from a Kinesis stream to StackState.

An AWS user with the required access rights to install StackState monitoring in your account. See , below.

- picks up all changes to AWS resources and pushes to StackState.

- picks up changes at a configured interval only.

For further information on authentication via the AWS CLI, see .

For further information on authentication via the AWS CLI, see .

When the AWS integration is enabled, three will be created in StackState for each instance of the StackPack.

Components retrieved from AWS will have an additional available in the component context menu and in the right panel details tab - Component details - when the component is selected. This provides a deep link through to the relevant AWS console at the correct point.

.

.

For further information on authentication via the AWS CLI, see .

🧩
💠
using an IAM role in the AWS CLI (docs.aws.amazon.com)
using an IAM role in the AWS CLI (docs.aws.amazon.com)
views
The AWS (legacy) StackPack troubleshooting guide
Known issues relating to the AWS (legacy) StackPack
using an IAM role in the AWS CLI (docs.aws.amazon.com)
Troubleshoot the StackState AWS StackPack
Using an IAM role in the AWS CLI (docs.aws.amazon.com)
retrieved topology data
AWS IAM policies
Full install
Minimal install
new AWS integration
Action
Data flow