title | description |
---|---|
Steampipe Table: aws_appstream_fleet - Query AWS AppStream Fleet using SQL |
Allows users to query AWS AppStream Fleets for detailed information about each fleet, including its state, instance type, and associated stack details. |
The AWS AppStream Fleet is a part of Amazon AppStream 2.0, a fully managed, secure application streaming service that allows you to stream desktop applications from AWS to any device running a web browser. It provides users instant-on access to the applications they need, and a responsive, fluid user experience on the device of their choice. An AppStream Fleet consists of streaming instances that run the image builder to stream applications to users.
The aws_appstream_fleet
table in Steampipe provides you with information about fleets within AWS AppStream. This table allows you, as a DevOps engineer, to query fleet-specific details, including the fleet state, instance type, associated stack details, and more. You can utilize this table to gather insights on fleets, such as the fleet's current capacity, the fleet's idle disconnect timeout settings, and the fleet's stream view. The schema outlines the various attributes of the AppStream Fleet for you, including the fleet ARN, creation time, fleet type, and associated tags.
Explore the characteristics of your AWS AppStream fleet, such as its creation time, state, and whether default internet access is enabled. This can help you understand the configuration and status of your fleet for better resource management.
select
name,
arn,
instance_type,
description,
created_time,
display_name,
state,
directory_name,
enable_default_internet_access
from
aws_appstream_fleet;
select
name,
arn,
instance_type,
description,
created_time,
display_name,
state,
directory_name,
enable_default_internet_access
from
aws_appstream_fleet;
Determine the fleets that have their default internet access enabled. This is beneficial for assessing which fleets are potentially exposed to internet-based threats, thereby assisting in risk management and security planning.
select
name,
arn,
instance_type,
description,
created_time,
display_name,
state,
enable_default_internet_access
from
aws_appstream_fleet
where enable_default_internet_access;
select
name,
arn,
instance_type,
description,
created_time,
display_name,
state,
enable_default_internet_access
from
aws_appstream_fleet
where enable_default_internet_access = 1;
Identify instances where on-demand fleets in AWS AppStream are being used, allowing users to understand the scope and details of their on-demand resource utilization. This information can be valuable for cost management and resource allocation strategies.
select
name,
created_time,
fleet_type,
instance_type,
display_name,
image_arn,
image_name
from
aws_appstream_fleet
where
fleet_type = 'ON_DEMAND';
select
name,
created_time,
fleet_type,
instance_type,
display_name,
image_arn,
image_name
from
aws_appstream_fleet
where
fleet_type = 'ON_DEMAND';
Discover the segments that have been established within the last month to understand their internet access status, maximum concurrent sessions, and user duration limits. This can be beneficial for assessing recent changes or additions to your fleet configurations.
select
name,
created_time,
display_name,
enable_default_internet_access,
max_concurrent_sessions,
max_user_duration_in_seconds
from
aws_appstream_fleet
where
created_time >= now() - interval '30' day;
select
name,
created_time,
display_name,
enable_default_internet_access,
max_concurrent_sessions,
max_user_duration_in_seconds
from
aws_appstream_fleet
where
created_time >= datetime('now','-30 day');
Explore which fleets are utilizing private images, allowing you to assess the level of privacy and security in your AWS AppStream fleets. This can be particularly useful in managing resource allocation and ensuring compliance with internal policies regarding data privacy.
select
f.name,
f.created_time,
f.display_name,
f.image_arn,
i.base_image_arn,
i.image_builder_name,
i.visibility
from
aws_appstream_fleet as f,
aws_appstream_image as i
where
i.arn = f.image_arn
and
i.visibility = 'PRIVATE';
select
f.name,
f.created_time,
f.display_name,
f.image_arn,
i.base_image_arn,
i.image_builder_name,
i.visibility
from
aws_appstream_fleet as f,
aws_appstream_image as i
where
i.arn = f.image_arn
and
i.visibility = 'PRIVATE';
Assess the elements within each fleet in terms of compute capacity to ensure efficient resource management and optimal performance. This can help in identifying any discrepancies between desired and actual usage, thereby aiding in capacity planning and optimization.
select
name,
arn,
compute_capacity_status ->> 'Available' as available,
compute_capacity_status ->> 'Desired' as desired,
compute_capacity_status ->> 'InUse' as in_use,
compute_capacity_status ->> 'Running' as running
from
aws_appstream_fleet;
select
name,
arn,
json_extract(compute_capacity_status, '$.Available') as available,
json_extract(compute_capacity_status, '$.Desired') as desired,
json_extract(compute_capacity_status, '$.InUse') as in_use,
json_extract(compute_capacity_status, '$.Running') as running
from
aws_appstream_fleet;
Identify instances where images have failed within the AWS AppStream fleet by analyzing the associated error codes and messages. This can assist in troubleshooting and rectifying issues promptly.
select
name,
arn,
e ->> 'ErrorCode' as error_code,
e ->> 'ErrorMessage' as error_message
from
aws_appstream_fleet,
jsonb_array_elements(fleet_errors) as e;
select
name,
arn,
json_extract(e.value, '$.ErrorCode') as error_code,
json_extract(e.value, '$.ErrorMessage') as error_message
from
aws_appstream_fleet,
json_each(fleet_errors) as e;
Analyze the settings to understand the configuration details of each fleet in your AWS Appstream service. This can help in managing network access and security for your fleets by identifying their associated security groups and subnets.
select
name,
arn,
vpc_config -> 'SecurityGroupIds' as security_group_ids,
vpc_config -> 'SubnetIds' as subnet_ids
from
aws_appstream_fleet;
select
name,
arn,
json_extract(vpc_config, '$.SecurityGroupIds') as security_group_ids,
json_extract(vpc_config, '$.SubnetIds') as subnet_ids
from
aws_appstream_fleet;
Identify the variety of fleets based on their instance type within your AWS AppStream service. This can help optimize resource allocation by showing where the most and least populated instance types are.
select
name,
instance_type,
Count(instance_type) as number_of_fleets
from
aws_appstream_fleet
group by
instance_type,
name;
select
name,
instance_type,
Count(instance_type) as number_of_fleets
from
aws_appstream_fleet
group by
instance_type,
name;
Explore which fleets are currently active and operational. This is useful for monitoring the status of your resources and ensuring they are functioning as expected.
select
name,
arn,
state,
created_time,
description
from
aws_appstream_fleet
where
state = 'RUNNING';
select
name,
arn,
state,
created_time,
description
from
aws_appstream_fleet
where
state = 'RUNNING';