fizz.today

I deleted a $1/mo charge from a service AWS canceled

A finops sweep flagged $1/mo in AWS Data Pipeline charges. Nobody on the team remembered creating a pipeline. The resource was called “Test.”

I went to the AWS console to find it. There is no AWS Data Pipeline console. AWS discontinued the service — you can’t create new pipelines, and the management UI is gone. But the resource was still running, still billing, and still invisible to anyone who didn’t know to check the CLI.

The CLI still works

The API isn’t gone. Just the console.

$ aws datapipeline list-pipelines
{
    "pipelineIdList": [
        {
            "id": "df-0021809EXHF2JX4Z86Q",
            "name": "Test"
        }
    ]
}

One pipeline, no description, no tags, no owner. Created by someone who left years ago, or by a tutorial that someone followed and forgot. A dollar a month, every month, since whenever it was created. Not enough to notice on a $4,000 bill. Enough to notice on a finops sweep.

$ aws datapipeline delete-pipeline --pipeline-id df-0021809EXHF2JX4Z86Q
$ aws datapipeline list-pipelines
{
    "pipelineIdList": []
}

The pattern

Discontinued AWS services don’t clean up after themselves. The console disappears, but the resources keep running and the meter keeps ticking. If you’re only managing infrastructure through the console — or even through Terraform, which dropped its Data Pipeline provider years ago — these resources are invisible.

The only way to find them is to enumerate. Cost Explorer will show the line item. The CLI will let you act on it. The console won’t help you at all.

A dollar a month is $12 a year. Over the life of a forgotten resource, that’s a dinner. But the principle scales. Every AWS account accumulates ghost resources from services that were tried once, deprecated quietly, and never revisited. The console trains you to think that if you can’t see it, it doesn’t exist. The bill knows better.


Docs: AWS Data Pipeline end of life · aws datapipeline CLI reference

#aws #finops #platformengineering #dataengineering