If you'll be using B2 for live production data, a couple points:<p>First, B2's pricing is pretty amazing, especially compared to S3 and similar competitors: <a href="https://www.backblaze.com/b2/cloud-storage-pricing.html" rel="nofollow">https://www.backblaze.com/b2/cloud-storage-pricing.html</a><p>Second, be aware those savings come with some downsides. The major one for us has been their maintenance window every Thursday from 2:00-3:00pm Pacific Time. Usually there's no outage, but sometimes there is. There's no warning - it's just down sometimes during that window. So, if uptime is important for your data, consider the cost of also implementing a fallback solution to cover your production use during those maintenance windows. <a href="https://www.backblaze.com/scheduled-maintenance.html" rel="nofollow">https://www.backblaze.com/scheduled-maintenance.html</a>
I love B2's free ingress and egress when you use CloudFlare, they utterly destroy the competition on price.<p>But my true dream would be for backblaze to someday offer ZFS as a service.<p>I want to `zfs send -i my_pool@2020-03-11 | b2zfs recv some_bucket_id`, then be able to view my snapshots and files within in the backblaze web UI, and restore with `b2zfs send -i some_bucket_id/my_pool@2020-03-11 | zfs recv my_pool`.<p>You can already mount B2 as a FUSE filesystem with something like ExpanDrive, then write ZFS raw file vdevs to the B2 FUSE mount, but it's horrifically slow and probably too janky for any real use.
The wording is a little clunky; the "is" in "Backblaze <i>is</i> now a Terraform provider" makes me think that BB is competing with Terraform Cloud.<p>"Backblaze now has a Terraform provider" or "Backblaze released a Terraform provider" makes more sense to me.
But unfortunately plugins cannot provide remote backends, and it's a little clunky to use the S3 one:<p><a href="https://github.com/hashicorp/terraform/issues/27304" rel="nofollow">https://github.com/hashicorp/terraform/issues/27304</a>
Very cool! Great job, guys.<p>Do you use a similar technique to <a href="https://poweruser.blog/embedding-python-in-go-338c0399f3d5" rel="nofollow">https://poweruser.blog/embedding-python-in-go-338c0399f3d5</a> to embed the Python SDK?<p>Also, was there a reason it's not against the B2 API? Not a judgment, just curious about the design tradeoffs in a professional-talking-to-professional sense.
> Terraform is an open-source infrastructure as code (IaC) tool<p>Maybe it was in the beginning, but Terraform is far more powerful than that now. Terraform is a monad that neatly separates pure declarative configuration from the I/O (side effects) that are factored out into providers. Terraform used at its most powerful is not limited to infrastructure, it also sets up the platforms and applications running on that infrastructure for you, by separating the configuration of the platforms and applications from the generic API calls that apply that configuration. Terraform's dependency graph ensures that the calls are made in the right order, no matter if they are made to infrastructure APIs, platform APIs, or APIs belonging to layers further up the stack
For large downloads, does BB support the Range header. If the user is on a connection that that is not suitable for long downloads, could the Range header be used to download a large file in several parts.
Popped in to say backblaze built out a tf provider at our request and they were great about it! Got a quick early build out to test, GA build a few months later and are very responsive to feedback. Pleasure to deal with
I was just looking at this new Terraform provider yesterday how timely. Nice to see the quickstart guide this will be helpful for managing the buckets and application keys.