Documentation

Cloud Support Matrix

Detailed breakdown of supported resource types, capabilities, and cloud provider coverage.

Capability Levels

CapabilityDescription
DiscoveryResource is automatically discovered from the cloud provider. Includes metadata like name, region, status, tags, and instance type. All resource types support discovery.
SchedulableResource can be attached to schedules and resource groups. The scheduler will generate start/stop intents for these resources when crons fire.
ExecutionResource supports direct start/stop execution via cloud provider APIs. The executor can call the cloud API to change the resource state. Resources without execution support are schedulable but require manual intervention.

Authentication Methods

ProviderAuth MethodsRecommended
Amazon Web Servicesassume_role, static_keys, temporary_credentialsassume_role
Google Cloud Platformoauth, service_accountoauth
Microsoft Azureservice_principal, workload_identity_federationservice_principal
Snowflakesnowflake_key_pair, snowflake_patsnowflake_key_pair
Databricksoauth_m2moauth_m2m
OpenShift (ROSA)ocm_service_accountocm_service_account
Microsoft 365admin_consentadmin_consent

oauth_m2m uses a Databricks service principal's client ID and secret. ocm_service_account is an OpenShift Cluster Manager service account. admin_consent means a tenant admin approves ZopNight's app.

The resource type tables below cover AWS, GCP, and Azure. They list the documented types; discovery finds more types than the tables show.

AWS Resource Types

Resource TypeType IDCategoryDiscoverySchedulableExecution
EC2 InstancesVirtual machinesec2compute
RDS DatabasesManaged relational databasesrdsdatabase
EKS ClustersManaged Kubernetes clustersekscontainer
EKS Node GroupsEKS managed node groupseks-nodegroupcontainer
Lambda FunctionsServerless functionslambdaserverless
ECS ServicesContainer orchestration servicesecscontainer
ECS ClustersContainer orchestration clustersecs-clustercontainer
RedshiftData warehouse clustersredshiftanalytics
NeptuneGraph database clustersneptunedatabase
DocumentDBMongoDB-compatible document databasedocumentdbdatabase
Lightsail InstancesSimplified virtual private serverslightsailcompute
App RunnerManaged container application serviceapprunnercontainer
WorkSpacesManaged virtual desktopsworkspacecompute
EMR ServerlessServerless big data applicationsemr-serverlessanalytics
Auto Scaling GroupsManaged instance scaling groupsasgcompute
Elastic BeanstalkManaged application environmentsbeanstalk-envcontainer
ElastiCacheManaged Redis/Memcachedelasticachecache—
EMR ClustersBig data processing clustersemranalytics—
MWAA (Airflow)Managed Apache Airflow environmentsairflowanalytics—
AWS BatchBatch compute environmentsbatchcompute——
AppStream 2.0Application streaming fleetsappstream-fleetcompute——
Transfer FamilyManaged SFTP/FTPS/FTP serverstransfer-familycompute——
RDS Aurora ClustersAurora database clustersrds-clusterdatabase——
RDS ProxyRDS Proxy endpointsrds-proxydatabase——
DynamoDB TablesNoSQL database tablesdynamodbdatabase——
DMS ReplicationDatabase Migration Service instancesdms-replicationdatabase——
DAX ClustersDynamoDB Accelerator clustersdaxcache——
ElastiCache ServerlessServerless ElastiCacheelasticache-serverlesscache——
MemoryDBRedis-compatible in-memory databasememorydbcache——
S3 BucketsObject storages3storage——
EBS VolumesBlock storage volumesebs-volumestorage——
Elastic File SystemManaged NFS file storageefsstorage——
FSx File SystemsManaged file systems (Lustre, Windows, etc.)fsxstorage——
S3 Glacier VaultsArchive storage vaultsglacier-vaultstorage——
ECR RepositoriesContainer image registryecrcontainer——
OpenSearch DomainsSearch and analyticsopensearchanalytics——
OpenSearch ServerlessServerless search and analyticsopensearch-serverlessanalytics——
Kinesis AnalyticsReal-time analytics applicationskinesis-analyticsanalytics——
Athena WorkgroupsInteractive query workgroupsathenaanalytics——
Glue JobsETL jobsglue-jobanalytics——
SageMaker EndpointsML inference endpointssagemaker-endpointml——
SageMaker NotebooksML notebook instancessagemaker-notebookml——
SageMaker ClustersSageMaker HyperPod clusterssagemaker-clusterml——
SageMaker DomainsSageMaker Studio domainssagemaker-domainml——
Load BalancersApplication and network load balancersload-balancernetwork——
NAT GatewaysNetwork address translationnat-gatewaynetwork——
Elastic IPsStatic public IP addresseseipnetwork——
CloudFrontCDN distributionscloudfrontnetwork——
API GatewayREST API managementapi-gatewaynetwork——
API Gateway v2HTTP and WebSocket APIsapi-gateway-v2network——
Transit GatewaysNetwork transit hubstransit-gatewaynetwork——
TGW AttachmentsTransit Gateway attachmentstgw-attachmentnetwork——
VPC EndpointsPrivate connectivity to AWS servicesvpc-endpointnetwork——
VPN GatewaysVirtual private network gatewaysvpn-gatewaynetwork——
VPN ConnectionsSite-to-site VPN connectionsvpn-connectionnetwork——
Client VPNClient VPN endpointsclient-vpnnetwork——
Global AcceleratorNetwork traffic acceleratorglobal-acceleratornetwork——
Network FirewallManaged network firewallnetwork-firewallnetwork——
SQS QueuesMessage queuessqsmessaging——
SNS TopicsPub/sub notification topicssnsmessaging——
Kinesis StreamsReal-time data streamskinesismessaging——
Kinesis FirehoseData delivery streamsfirehosemessaging——
MSK ClustersManaged Streaming for Apache Kafkamskmessaging——
Amazon MQManaged message brokeramazonmqmessaging——

GCP Resource Types

Resource TypeType IDCategoryDiscoverySchedulableExecution
Compute EngineVirtual machinescomputecompute
Managed Instance GroupsCompute Engine managed instance groups (autoscaling targets)migcompute
GKE ClustersManaged Kubernetes clustersgkecontainer
GKE Node PoolsGKE managed node poolsgke-nodepoolcontainer
Cloud SQLManaged relational databasescloudsqldatabase
Cloud RunServerless containerscloudrunserverless
MemorystoreManaged Redismemorystorecache
BigQueryData warehousebigqueryanalytics——
Sole-Tenant NodesDedicated physical serverssole-tenantcompute——
Cloud SpannerGlobally distributed relational databasespannerdatabase——
Cloud BigtableWide-column NoSQL databasebigtabledatabase——
AlloyDBPostgreSQL-compatible databasealloydbdatabase——
FirestoreDocument databasefirestoredatabase——
Memorystore MemcachedManaged Memcachedmemcachedcache——
Cloud StorageObject storage bucketsgcs-bucketstorage——
Persistent DisksBlock storage disksdiskstorage——
FilestoreManaged NFS file storagefilestorestorage——
Cloud FunctionsEvent-driven serverless functionscloud-functionserverless——
Cloud Run JobsContainerized batch jobscloudrun-jobserverless——
App EngineManaged application platformappengineserverless——
WorkflowsServerless workflow orchestrationworkflowserverless——
DataprocManaged Spark and Hadoop clustersdataprocanalytics——
DataflowStream and batch data processingdataflowanalytics——
Cloud ComposerManaged Apache Airflowcloud-composeranalytics——
Data FusionData integration servicedata-fusionanalytics——
Vertex AI EndpointsML inference endpointsvertex-endpointml——
Vertex AI NotebooksML notebook instancesvertex-notebookml——
Cloud TPUTensor Processing Unit nodescloud-tpuml——
Load BalancersForwarding rules and load balancersload-balancernetwork——
Global Load BalancersGlobal forwarding rulesglobal-lbnetwork——
Static IPsRegional static IP addressesaddressnetwork——
Global Static IPsGlobal static IP addressesglobal-addressnetwork——
Cloud InterconnectDedicated network connectionscloud-interconnectnetwork——
Interconnect AttachmentsVLAN attachments for interconnectsinterconnect-attachmentnetwork——
Cloud VPNVPN gatewaysvpn-gatewaynetwork——
API GatewayAPI management gatewayapi-gatewaynetwork——
Artifact RegistryContainer and package registryartifact-registrycontainer——

Azure Resource Types

Resource TypeType IDCategoryDiscoverySchedulableExecution
Virtual MachinesVirtual machinesvmcompute
AKS ClustersManaged Kubernetes clustersakscontainer
AKS Agent PoolsAKS managed node poolsaks-agentpoolcontainer
VM Scale SetsAuto-scaling VM groupsvmsscompute
Function AppsServerless functionsfunctionappserverless
Container AppsManaged container appscontainerappcontainer
SQL DatabaseManaged SQL databasessqldatabasedatabase
ML ComputeMachine learning compute clustersml-computeml
Azure BatchBatch compute accountsbatchcompute——
Virtual DesktopAzure Virtual Desktop host poolsavd-hostpoolcompute——
Container InstancesServerless container groupscontainer-instancecontainer——
Container RegistryDocker container registryacrcontainer——
App Service PlansWeb app hosting plansapp-service-planserverless——
SQL Elastic PoolsShared SQL database poolssql-elastic-pooldatabase——
SQL Managed InstanceFully managed SQL Server instancessql-managed-instancedatabase——
PostgreSQL FlexiblePostgreSQL Flexible Serverspostgresql-flexibledatabase——
PostgreSQLPostgreSQL Serverspostgresqldatabase——
MySQL FlexibleMySQL Flexible Serversmysql-flexibledatabase——
MySQLMySQL Serversmysqldatabase——
MariaDBMariaDB Serversmariadbdatabase——
Cosmos DBGlobally distributed NoSQL databasecosmosdbdatabase——
Cache for RedisManaged Redis cacherediscache——
Redis EnterpriseEnterprise-tier Redisredis-enterprisecache——
Storage AccountsBlob, file, queue, and table storagestorage-accountstorage——
Managed DisksBlock-level storagediskstorage——
NetApp PoolsNetApp capacity poolsnetapp-poolstorage——
Recovery VaultsRecovery Services vaultsrecovery-vaultstorage——
DatabricksData engineering and analytics workspacedatabricksanalytics——
Synapse AnalyticsIntegrated analytics workspacesynapseanalytics——
Synapse SQL PoolsDedicated SQL poolssynapse-poolanalytics——
Data ExplorerReal-time data analytics (Kusto)data-exploreranalytics——
Data FactoryData integration pipelinesdata-factoryanalytics——
HDInsightManaged Hadoop and Spark clustershdinsightanalytics——
Stream AnalyticsReal-time stream processingstreamanalyticsanalytics——
Cognitive ServicesAI and cognitive API accountscognitive-servicesml——
AI SearchEnterprise search servicesearchml——
Load BalancersAzure Load Balancerslbnetwork——
Application GatewayLayer 7 load balancerapp-gatewaynetwork——
Front DoorGlobal CDN and load balancerfront-doornetwork——
CDN ProfilesContent delivery networkcdnnetwork——
Public IPsPublic IP addressespublic-ipnetwork——
NAT GatewaysNetwork address translationnat-gatewaynetwork——
VPN GatewaysVPN gatewaysvpn-gatewaynetwork——
VNet GatewaysVirtual network gatewaysvnet-gatewaynetwork——
ExpressRoutePrivate network circuitsexpressroutenetwork——
Azure FirewallCloud-native network firewallfirewallnetwork——
API ManagementAPI gateway and managementapimanagementnetwork——
Event HubsEvent streaming platformeventhubmessaging——
Service BusEnterprise message brokerservicebusmessaging——
Event GridEvent routing serviceeventgrid-topicmessaging——
SignalR ServiceReal-time messagingsignalrmessaging——
Logic AppsWorkflow automationlogic-appmessaging——
IoT HubIoT device management and messagingiothubmessaging——

Region Discovery

ProviderRegion ModelDescription
AWSRegion-specificResources are discovered per-region. Auto-detects enabled regions via EC2 DescribeRegions.
GCPGlobal (Aggregated)Uses AggregatedList API to discover resources across all zones in a single call.
AzureGlobal (Aggregated)Discovers resources across all regions within the subscription.

Pricing & Metrics

ProviderPricing SourceMetrics SourceMetric Granularity
AWSPublic Pricing API + fallback ratesCloudWatch1-hour, 90-day window
GCPCloud Billing Catalog APICloud Monitoring1-hour, 42-day window
AzureRetail Pricing APIAzure Monitor1-hour, 60-day window

Metrics Collected

For each resource with monitoring support, ZopNight collects CPU utilization, network I/O (bytes in/out), and disk I/O (read/write). Where the provider publishes them, it also collects memory, GPU utilization, and database capacity metrics such as connections, free memory, and free storage. EC2 memory needs the CloudWatch Agent. These metrics are used by the recommender to detect idle resources and suggest rightsizing.

Complete Matrix

All 154 resource types across all providers in a single view:

ProviderResource TypeType IDCategoryDiscoverySchedulableExecution
awsEC2 InstancesVirtual machinesec2compute
awsRDS DatabasesManaged relational databasesrdsdatabase
awsEKS ClustersManaged Kubernetes clustersekscontainer
awsEKS Node GroupsEKS managed node groupseks-nodegroupcontainer
awsLambda FunctionsServerless functionslambdaserverless
awsECS ServicesContainer orchestration servicesecscontainer
awsECS ClustersContainer orchestration clustersecs-clustercontainer
awsRedshiftData warehouse clustersredshiftanalytics
awsNeptuneGraph database clustersneptunedatabase
awsDocumentDBMongoDB-compatible document databasedocumentdbdatabase
awsLightsail InstancesSimplified virtual private serverslightsailcompute
awsApp RunnerManaged container application serviceapprunnercontainer
awsWorkSpacesManaged virtual desktopsworkspacecompute
awsEMR ServerlessServerless big data applicationsemr-serverlessanalytics
awsAuto Scaling GroupsManaged instance scaling groupsasgcompute
awsElastic BeanstalkManaged application environmentsbeanstalk-envcontainer
awsElastiCacheManaged Redis/Memcachedelasticachecache—
awsEMR ClustersBig data processing clustersemranalytics—
awsMWAA (Airflow)Managed Apache Airflow environmentsairflowanalytics—
awsAWS BatchBatch compute environmentsbatchcompute——
awsAppStream 2.0Application streaming fleetsappstream-fleetcompute——
awsTransfer FamilyManaged SFTP/FTPS/FTP serverstransfer-familycompute——
awsRDS Aurora ClustersAurora database clustersrds-clusterdatabase——
awsRDS ProxyRDS Proxy endpointsrds-proxydatabase——
awsDynamoDB TablesNoSQL database tablesdynamodbdatabase——
awsDMS ReplicationDatabase Migration Service instancesdms-replicationdatabase——
awsDAX ClustersDynamoDB Accelerator clustersdaxcache——
awsElastiCache ServerlessServerless ElastiCacheelasticache-serverlesscache——
awsMemoryDBRedis-compatible in-memory databasememorydbcache——
awsS3 BucketsObject storages3storage——
awsEBS VolumesBlock storage volumesebs-volumestorage——
awsElastic File SystemManaged NFS file storageefsstorage——
awsFSx File SystemsManaged file systems (Lustre, Windows, etc.)fsxstorage——
awsS3 Glacier VaultsArchive storage vaultsglacier-vaultstorage——
awsECR RepositoriesContainer image registryecrcontainer——
awsOpenSearch DomainsSearch and analyticsopensearchanalytics——
awsOpenSearch ServerlessServerless search and analyticsopensearch-serverlessanalytics——
awsKinesis AnalyticsReal-time analytics applicationskinesis-analyticsanalytics——
awsAthena WorkgroupsInteractive query workgroupsathenaanalytics——
awsGlue JobsETL jobsglue-jobanalytics——
awsSageMaker EndpointsML inference endpointssagemaker-endpointml——
awsSageMaker NotebooksML notebook instancessagemaker-notebookml——
awsSageMaker ClustersSageMaker HyperPod clusterssagemaker-clusterml——
awsSageMaker DomainsSageMaker Studio domainssagemaker-domainml——
awsLoad BalancersApplication and network load balancersload-balancernetwork——
awsNAT GatewaysNetwork address translationnat-gatewaynetwork——
awsElastic IPsStatic public IP addresseseipnetwork——
awsCloudFrontCDN distributionscloudfrontnetwork——
awsAPI GatewayREST API managementapi-gatewaynetwork——
awsAPI Gateway v2HTTP and WebSocket APIsapi-gateway-v2network——
awsTransit GatewaysNetwork transit hubstransit-gatewaynetwork——
awsTGW AttachmentsTransit Gateway attachmentstgw-attachmentnetwork——
awsVPC EndpointsPrivate connectivity to AWS servicesvpc-endpointnetwork——
awsVPN GatewaysVirtual private network gatewaysvpn-gatewaynetwork——
awsVPN ConnectionsSite-to-site VPN connectionsvpn-connectionnetwork——
awsClient VPNClient VPN endpointsclient-vpnnetwork——
awsGlobal AcceleratorNetwork traffic acceleratorglobal-acceleratornetwork——
awsNetwork FirewallManaged network firewallnetwork-firewallnetwork——
awsSQS QueuesMessage queuessqsmessaging——
awsSNS TopicsPub/sub notification topicssnsmessaging——
awsKinesis StreamsReal-time data streamskinesismessaging——
awsKinesis FirehoseData delivery streamsfirehosemessaging——
awsMSK ClustersManaged Streaming for Apache Kafkamskmessaging——
awsAmazon MQManaged message brokeramazonmqmessaging——
gcpCompute EngineVirtual machinescomputecompute
gcpManaged Instance GroupsCompute Engine managed instance groups (autoscaling targets)migcompute
gcpGKE ClustersManaged Kubernetes clustersgkecontainer
gcpGKE Node PoolsGKE managed node poolsgke-nodepoolcontainer
gcpCloud SQLManaged relational databasescloudsqldatabase
gcpCloud RunServerless containerscloudrunserverless
gcpMemorystoreManaged Redismemorystorecache
gcpBigQueryData warehousebigqueryanalytics——
gcpSole-Tenant NodesDedicated physical serverssole-tenantcompute——
gcpCloud SpannerGlobally distributed relational databasespannerdatabase——
gcpCloud BigtableWide-column NoSQL databasebigtabledatabase——
gcpAlloyDBPostgreSQL-compatible databasealloydbdatabase——
gcpFirestoreDocument databasefirestoredatabase——
gcpMemorystore MemcachedManaged Memcachedmemcachedcache——
gcpCloud StorageObject storage bucketsgcs-bucketstorage——
gcpPersistent DisksBlock storage disksdiskstorage——
gcpFilestoreManaged NFS file storagefilestorestorage——
gcpCloud FunctionsEvent-driven serverless functionscloud-functionserverless——
gcpCloud Run JobsContainerized batch jobscloudrun-jobserverless——
gcpApp EngineManaged application platformappengineserverless——
gcpWorkflowsServerless workflow orchestrationworkflowserverless——
gcpDataprocManaged Spark and Hadoop clustersdataprocanalytics——
gcpDataflowStream and batch data processingdataflowanalytics——
gcpCloud ComposerManaged Apache Airflowcloud-composeranalytics——
gcpData FusionData integration servicedata-fusionanalytics——
gcpVertex AI EndpointsML inference endpointsvertex-endpointml——
gcpVertex AI NotebooksML notebook instancesvertex-notebookml——
gcpCloud TPUTensor Processing Unit nodescloud-tpuml——
gcpLoad BalancersForwarding rules and load balancersload-balancernetwork——
gcpGlobal Load BalancersGlobal forwarding rulesglobal-lbnetwork——
gcpStatic IPsRegional static IP addressesaddressnetwork——
gcpGlobal Static IPsGlobal static IP addressesglobal-addressnetwork——
gcpCloud InterconnectDedicated network connectionscloud-interconnectnetwork——
gcpInterconnect AttachmentsVLAN attachments for interconnectsinterconnect-attachmentnetwork——
gcpCloud VPNVPN gatewaysvpn-gatewaynetwork——
gcpAPI GatewayAPI management gatewayapi-gatewaynetwork——
gcpArtifact RegistryContainer and package registryartifact-registrycontainer——
azureVirtual MachinesVirtual machinesvmcompute
azureAKS ClustersManaged Kubernetes clustersakscontainer
azureAKS Agent PoolsAKS managed node poolsaks-agentpoolcontainer
azureVM Scale SetsAuto-scaling VM groupsvmsscompute
azureFunction AppsServerless functionsfunctionappserverless
azureContainer AppsManaged container appscontainerappcontainer
azureSQL DatabaseManaged SQL databasessqldatabasedatabase
azureML ComputeMachine learning compute clustersml-computeml
azureAzure BatchBatch compute accountsbatchcompute——
azureVirtual DesktopAzure Virtual Desktop host poolsavd-hostpoolcompute——
azureContainer InstancesServerless container groupscontainer-instancecontainer——
azureContainer RegistryDocker container registryacrcontainer——
azureApp Service PlansWeb app hosting plansapp-service-planserverless——
azureSQL Elastic PoolsShared SQL database poolssql-elastic-pooldatabase——
azureSQL Managed InstanceFully managed SQL Server instancessql-managed-instancedatabase——
azurePostgreSQL FlexiblePostgreSQL Flexible Serverspostgresql-flexibledatabase——
azurePostgreSQLPostgreSQL Serverspostgresqldatabase——
azureMySQL FlexibleMySQL Flexible Serversmysql-flexibledatabase——
azureMySQLMySQL Serversmysqldatabase——
azureMariaDBMariaDB Serversmariadbdatabase——
azureCosmos DBGlobally distributed NoSQL databasecosmosdbdatabase——
azureCache for RedisManaged Redis cacherediscache——
azureRedis EnterpriseEnterprise-tier Redisredis-enterprisecache——
azureStorage AccountsBlob, file, queue, and table storagestorage-accountstorage——
azureManaged DisksBlock-level storagediskstorage——
azureNetApp PoolsNetApp capacity poolsnetapp-poolstorage——
azureRecovery VaultsRecovery Services vaultsrecovery-vaultstorage——
azureDatabricksData engineering and analytics workspacedatabricksanalytics——
azureSynapse AnalyticsIntegrated analytics workspacesynapseanalytics——
azureSynapse SQL PoolsDedicated SQL poolssynapse-poolanalytics——
azureData ExplorerReal-time data analytics (Kusto)data-exploreranalytics——
azureData FactoryData integration pipelinesdata-factoryanalytics——
azureHDInsightManaged Hadoop and Spark clustershdinsightanalytics——
azureStream AnalyticsReal-time stream processingstreamanalyticsanalytics——
azureCognitive ServicesAI and cognitive API accountscognitive-servicesml——
azureAI SearchEnterprise search servicesearchml——
azureLoad BalancersAzure Load Balancerslbnetwork——
azureApplication GatewayLayer 7 load balancerapp-gatewaynetwork——
azureFront DoorGlobal CDN and load balancerfront-doornetwork——
azureCDN ProfilesContent delivery networkcdnnetwork——
azurePublic IPsPublic IP addressespublic-ipnetwork——
azureNAT GatewaysNetwork address translationnat-gatewaynetwork——
azureVPN GatewaysVPN gatewaysvpn-gatewaynetwork——
azureVNet GatewaysVirtual network gatewaysvnet-gatewaynetwork——
azureExpressRoutePrivate network circuitsexpressroutenetwork——
azureAzure FirewallCloud-native network firewallfirewallnetwork——
azureAPI ManagementAPI gateway and managementapimanagementnetwork——
azureEvent HubsEvent streaming platformeventhubmessaging——
azureService BusEnterprise message brokerservicebusmessaging——
azureEvent GridEvent routing serviceeventgrid-topicmessaging——
azureSignalR ServiceReal-time messagingsignalrmessaging——
azureLogic AppsWorkflow automationlogic-appmessaging——
azureIoT HubIoT device management and messagingiothubmessaging——