Bunny.net is an excellent cloud storage and CDN service. I use it for my websites. Bunny offers two primary services: Bunny Storage and Bunny Pull Zones. Combined those two comprise Bunny CDN.
There are additional services DNS, Stream (video), and Optimizer (compress). This article does not discuss those services.
Their CDN is very low cost. The following image shows the CDN stats for jhanley.com/blog for September 1-16, 2022. I only use the CDN to serve image files.
Bunny Storage
This is Bunny’s cloud storage service which is similar to AWS S3. This service is replicated around the world. Bunny Storage is tightly integrated with Bunny CDN. Bunny Storage is designed to be the fastest performing global storage solution thanks to smart geographical load balancing.
Files stored in Bunny storage are private. Access requires API authorization. See the following section on Pull Zones.
There are two storage service tiers: Standard and Edge. I use the Edge Tier for my CDNs and Standard Tier for just cloud storage.
Standard Tier
The Standard storage tier is optimized for low cost, high throughput global file storage, and delivery. It provides moderate latency around the world and is great for use cases such as object storage, video delivery, file hosting, and more.
- Data replication points available: 8 regions
- Storage latency: Variable (30-300ms)
- Recommended regions: Geographically diverse
Each data center costs $0.01 per GB for the first and second data centers. Each additional replicated data center is $0.005. If you enable replication to all 8 data centers, the cost is currently $0.05 per GB. Bunny Storage Pricing
Standard has eight data centers:
- London (UK)
- Falkenstein / Frankfurt (DE)
- Stockholm (SE)
- New York (US)
- Los Angeles (US)
- Singapore (SG)
- Sydney (AU)
- Sao Paulo (BR)
Edge Tier
The Edge storage tier is optimized for ultra-high global performance powered by strictly SSD storage. It provides millisecond latencies around the world and is great for use cases such as Perma-Cache, website acceleration, high-performance content delivery, small files, and content where performance is paramount.
- Data replication points available: Main region (Frankfurt) plus13 regions
- Storage latency: Consistent (1-5ms)
- Recommended regions: As many as possible
Each data center costs $0.02 per GB. If you enable replication to all 14 data centers, the cost is currently $0.28 per GB. Bunny Storage Pricing
Edge has 14 data centers:
- London (UK)
- Falkenstein / Frankfurt (DE)
- Stockholm (SE)
- Prague (CZ)
- Madrid (ES)
- New York (US)
- Los Angeles (US)
- Seattle (US)
- Miami (US)
- Singapore (SG)
- Hong Kong (HK)
- Tokyo (JP)
- Sydney (AU)
- Sao Paulo (BR)
Bunny Pull Zone
A Bunny Pull Zone is the CDN front end for Bunny Storage. Public access to Bunny Storage is provided by a Bunny Pull Zone. Access can be public or via Signed URLs. Each Pull Zone supports one or several custom hostnames and SSL certificates.
Bunny API Keys
The Bunny.net API supports several types of keys. These keys are used to access the API, storage, and create signed URLs. Unfortunately, Bunny.net sometimes uses the same name to describe different keys or different names for the same key. Sometimes password is used instead of key and vice versa.
- API Access Key
- Storage API Key
- FTP & SFTP Authentication
- Zone Security Key
The keys are a collection of sets of hexadecimal numbers concatenated with hyphens.
Example Storage Key: a2350e09-57ec-3f4e-d7a38d0858a6-a5c7-47aa
. Each key type has a different length. The API Access Key is the longest and the Zone Security Key is the shortest.
API Access Key
This key is used to programmatically update the account settings and zones via the bunny.net API. The REST API calls this key Accesskey
. This key is not used for the storage APIs.
The API Access Key is per user.
This API Access Key is located here.
Storage API Key
This key is located under “Storage” -> “FTP & API Access”. For the Storage REST API, the “Password” is the key. In some places, this key is called “Storage Zone Password”.
The REST API calls this key Accesskey
. This is the same key name as the API Access Key.
This key is used for Bunny Storage authorization, e.g. upload, download, list files, etc. There are two keys. One with read-write access and another that is read-only.
The Hostname is the Bunny data center endpoint. If you use the wrong data center, authorization will fail.
FTP & SFTP Authentication
This key is located under “Storage” -> “FTP & API Access”. For SFTP access, use the “Hostname”, “Username” and “Password” values. Reference the previous screenshot for an example.
These values are used to authenticate using an FTP or SFTP client. I do not recommend using FTP as your credentials because data transfers are transmitted on the Internet in the clear. Use SFTP because everything is encrypted. I have tested SFTP with WinSCP. I have also written software utilities in Python, PHP, and Go to test the APIs. I plan to release that code on GitHub in a future article.
Zone Security Key
This key is located under “Pull Zones” -> “Security” -> “Token Authentication”. The GUI calls this key “Pull Zone Url Token Authentication Key”. The JSON API key name is ZoneSecurityKey
.
This is your private key used for generating the token hash and creating Signed URLs. Bunny Signed URLs have many features:
- expiration
- country allow list
- country deny list
- specific origin IP address
- path-based key supporting a hierarchy of files
- specific origin referrers
More Information
- Other articles that I have written on bunny.net
- bunny.net
- Bunny Storage Pricing
- Bunny CDN Pricing
- Bunny Account Settings Page
- Understanding Bunny Storage
- Understanding Geo-Replication
- How to create your first Pull Zone
Photography Credit
I write free articles about technology. Recently, I learned about Pexels.com which provides free images. The image in this article is courtesy of Mike B at Pexels.
I design software for enterprise-class systems and data centers. My background is 30+ years in storage (SCSI, FC, iSCSI, disk arrays, imaging) virtualization. 20+ years in identity, security, and forensics.
For the past 14+ years, I have been working in the cloud (AWS, Azure, Google, Alibaba, IBM, Oracle) designing hybrid and multi-cloud software solutions. I am an MVP/GDE with several.
Leave a Reply