You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+59-2Lines changed: 59 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -112,7 +112,66 @@ To view a dump of the LMDB contents:
112
112
You can browse the snapshots in MinIO at <http://localhost:4731/buckets/lightningstream/browse>
113
113
(login with minioadmin / minioadmin).
114
114
115
+
## Using Azure Blob storage
115
116
117
+
Lightning Stream supports Azure Blob Storage as a backend for storing snapshots. You can configure it to use either static credentials (account name and key) or Azure service principal authentication.
118
+
119
+
### Basic configuration with static credentials
120
+
121
+
```yaml
122
+
storage:
123
+
type: azure
124
+
options:
125
+
account_name: myaccountname
126
+
account_key: myaccountkey
127
+
container: lightningstream
128
+
create_container: true
129
+
```
130
+
131
+
### Configuration with Azure service principal (recommended for production)
132
+
133
+
When using service principal authentication, set `use_env_creds: true` and ensure the following environment variables are set:
| init_timeout | duration | Time allowed for initialisation (default: "20s") |
162
+
| use_update_marker | bool | Reduce LIST commands by using an update marker (see below) |
163
+
| update_marker_force_list_interval | duration | Force full LIST sync at this interval (default: "5m") |
164
+
| concurrency | int | Max number of concurrent uploads (default: 1) |
165
+
166
+
The `use_update_marker` option can reduce Azure costs by replacing LIST operations (which are more expensive) with GET operations. However, it cannot be used if the container itself is replicated in an active-active fashion between data centers.
167
+
168
+
You can see a working example in the docker-compose setup, which uses [Azurite](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite) (Azure Storage Emulator):
169
+
170
+
```bash
171
+
docker-compose up
172
+
```
173
+
174
+
For all available Azure backend options with full descriptions, see [Simpleblob's Azure backend Options struct](https://github.com/PowerDNS/simpleblob/blob/main/backends/azure/azure.go).
116
175
117
176
## Open Source
118
177
@@ -123,5 +182,3 @@ For more information on how we provide support for Open Source products, please
123
182
PowerDNS also offers an Enterprise edition of Lightning Stream that includes professional support, advanced features, deployment
124
183
tooling for large deployments, Kubernetes integration, and more.
0 commit comments