Carbon emissions?

Hi,

Is there any way to get information about carbon emissions or electricity usage?

Thanks,
Sylvie

Hello!
Unfortunately, it’s difficult for us to give specific numbers but you can check the information provided by our hosting providers, both Netactuate and Equinix both have pages on sustainability (located here and here respectively), just keep in mind that this can vary a lot depending on region.
I hope this helps, thanks so much for asking, I think this is a great thing to be mindful of!

2 Likes

hello fly.io peeps,

I’m really glad this was asked, as I’m fan of the service, and had these questions myself.

Marking fly.io services as green in checking services

Does fly.io use a public list of IP ranges for these datacentres?

I work at the green web foundation, and we run a series of checking services based on public IP range visibility, to link them to supporting evidence from infrastructure providers that they are accounting for the emissions from the energy they provide

Providing metrics to users who want to optimise for carbon

We’ve also been chatting to the folks at Hashicorp to build a a degree of carbon awareness into the Nomad a piece of OSS that I think fly.io still uses. This would make it possible to provide job level carbon emissions figures, and even support carbon-aware scheduling of compute to when and where the grid is green if you’re prepared to accept the latency trade-offs.

There’s an experimental branch linked below

If there are any folks at fly.io interested in this, we’d love to chat as we’ve built a prometheus compatible exporter for these numbers too, and we’re about to start a new round of work on it.

Anyway - hope that sheds some light and provides some possible next steps.

5 Likes

I’ve been thinking about this some more please forgive the brain dump.

Finding the carbon footprint of your compute on fly.io

We now have an ‘IP to CO2 intensity’ API available, that will give you figures for carbon intensity for the energy you use, based on the likely a country an IP is presumed lie within.

I did a talk about this at RIPE84 earlier this month, where I spoke about optimising systems for carbon in this way:

https://www.thegreenwebfoundation.org/ripe84/

Sadly, it does make some assumptions that likely to do not hold in Anycast situations, but if you know which regions you’re running compute, then you can forgo the IP lookup, and use the country figures that we’ve been using from Ember Climate. They’re linked below.

That would give some numbers for carbon. You’d still need energy figures to use them, to figure out how much energy us being used by your specific applications.

Finding energy numbers

On the energy front, as I mentioned before, l’ll be starting to work with Ross Fairbanks, who wrote this blog post recently about how to you can figure our some detailed energy numbers for cloud applications. I think a lot is applicable here:

And this documentation to explaining how Scaphandre works may help too.

I think it would be technically possible to provide these figures downstream to fly.io users, if the platform staff are running on bare metal servers, and are able to run agents like Scaphandre that would expose the energy usage numbers further ‘downstream’. As far as I can tell, most big cloud providers do not expose the metrics you would typically need to track energy usage as a customer, which is why you can’t easily do this with Heroku right now for example.

Making apps greener once you know your numbers

Once you have those numbers it’s then possible to think about how to reduce the carbon intensity of the compute (there are various options, like deploying greener energy, or various market based instruments), or being more thoughtful about how much compute you need to consume (we’re already used to do this).

I don’t have much experience with fly.io, and I have an django / vue / postgres app that I’d like to migrate from Heroku to here anyway.

I’d be up for sharing my experiences as a new user of fly.io who knows what numbers you need to work out the emissions of your compute, if I someone who knows the platform better is up for giving me some pointers on migrating an app, and figuring out how to replicate many of the nice developer affordances offered by Heroku (i.e. pipelines, deploy rollbacks, hosted postgres, 12 factor stuff etc.)

4 Likes

Can you confirm that the Amsterdam server is Equinix?

Hey folks.

I’m coming back to this, as I’m still doing a bit of work in this field and figured others might be interested in joining in or following aling.

I mentioned before that where I work, we’ve been working on an IP to carbon intensity API now - this provided country level carbon intensity figures.

This doesn’t seem to work for Fly.io, because the IP ranges are not exposed. You can see the confirmation here:

I’ve realised though that because fly.io exposes the FLY_REGION environment variable to the application server managing a request, you can share where it is being served from.

This would let you work out the average carbon intensity of the energy being used, at country level at least. We we publish this data as part of an open source software library, CO2.js.

This is driven by the data visible here in the app:

Carbon intensity varies within a country, but this would be a starting point.

I’m planning to use fly.io for a project later this month, where I’m intending to experiment with exposing this info via headers so that users can start to understand the carbon footprint of request. I’ve outlined some more below, here:

If you’re up for experimenting in this field, let me know - I really like Fly.io as as platform, and I’d rather Fly.io becomes a greener platform than try to find a green platform, and somehow hope the developer experience eventually reaches that of fly.io.

1 Like

Just wanted to say I’m also really interested in this and wish there was an official answer in the form of carbon footprint reporting from Fly.io.

In this day and age it’s simply not possible for us to procure hosting without the supplier providing any information, as we have strict requirements to report on (and reduce) our own footprint as a company.

1 Like