Skip to content

Commit e4ccfcb

Browse files
committed
Overhaul documentation
1 parent 58bb4c8 commit e4ccfcb

69 files changed

Lines changed: 1465 additions & 1596 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎docs/backend/README.md‎

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
# Obstor Backend
2-
Obstor Backend adds S3 and [other supported protocol](https://obstor.net/docs/protocols) compatibility to third-party cloud storage providers.
2+
Obstor Backend adds S3 and [other supported protocol](/docs/protocols) compatibility to third-party cloud storage providers.
33

44
## Supported Backends
5-
- [NAS](nas.md)
6-
- [Microsoft Azure Blob Storage](azure.md)
7-
- [HDFS](hdfs.md)
8-
- [S3](s3.md)
9-
- [Google Cloud Storage](gcs.md)
10-
- [SFTP](sftp.md)
5+
- [NAS](/docs/backend/nas)
6+
- [Microsoft Azure Blob Storage](/docs/backend/azure)
7+
- [HDFS](/docs/backend/hdfs)
8+
- [S3](/docs/backend/s3)
9+
- [Google Cloud Storage](/docs/backend/gcs)
10+
- [SFTP](/docs/backend/sftp)
1111

1212
## Explore Further
13-
- [Supported Protocols](https://obstor.net/docs/protocols) - S3, SFTP, and more
14-
- [`mc` command-line interface](https://obstor.net/docs/obstor-client-quickstart-guide)
15-
- [`aws` command-line interface](https://obstor.net/docs/aws-cli-with-obstor)
13+
- [Supported Protocols](/docs/protocols) - S3, SFTP, and more
14+
- `mc` command-line interface
15+
- `aws` command-line interface

‎docs/backend/azure.md‎

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
# Obstor Azure Backend
2-
Obstor Backend adds S3 and [other supported protocol](https://obstor.net/docs/protocols) compatibility to Microsoft Azure Blob Storage.
2+
Obstor Backend adds S3 and [other supported protocol](/docs/protocols) compatibility to Microsoft Azure Blob Storage.
33

44
## Run Obstor Backend for Microsoft Azure Blob Storage
55
### Using Docker
6-
```
6+
```bash
77
docker run -p 9000:9000 --name azure-s3 \
88
-e "OBSTOR_ROOT_USER=azurestorageaccountname" \
99
-e "OBSTOR_ROOT_PASSWORD=azurestorageaccountkey" \
1010
ghcr.io/cloudment/obstor backend azure
1111
```
1212

1313
### Using Binary
14-
```
14+
```bash
1515
export OBSTOR_ROOT_USER=azureaccountname
1616
export OBSTOR_ROOT_PASSWORD=azureaccountkey
1717
obstor backend azure
@@ -24,16 +24,16 @@ Obstor Backend comes with an embedded web based object browser. Point your web b
2424
`mc` provides a modern alternative to UNIX commands such as ls, cat, cp, mirror, diff etc. It supports filesystems and S3-compatible cloud storage services.
2525

2626
### Configure `mc`
27-
```
27+
```bash
2828
mc alias set myazure http://backend-ip:9000 azureaccountname azureaccountkey
2929
```
3030

3131
### List containers on Microsoft Azure
32-
```
32+
```bash
3333
mc ls myazure
34-
[2017-02-22 01:50:43 PST] 0B ferenginar/
35-
[2017-02-26 21:43:51 PST] 0B my-container/
36-
[2017-02-26 22:10:11 PST] 0B test-container1/
34+
[2026-05-22 01:50:43 PST] 0B ferenginar/
35+
[2026-05-26 21:43:51 PST] 0B my-container/
36+
[2026-05-26 22:10:11 PST] 0B test-container1/
3737
```
3838

3939
### Use custom access/secret keys
@@ -53,7 +53,7 @@ Other limitations:
5353
- Bucket notification APIs are not supported.
5454

5555
## Explore Further
56-
- [Supported Protocols](https://obstor.net/docs/protocols) - S3, SFTP, and more
57-
- [`mc` command-line interface](https://obstor.net/docs/obstor-client-quickstart-guide)
58-
- [`aws` command-line interface](https://obstor.net/docs/aws-cli-with-obstor)
59-
- [`minio-go` Go SDK](https://obstor.net/docs/golang-client-quickstart-guide)
56+
- [Supported Protocols](/docs/protocols) - S3, SFTP, and more
57+
- `mc` command-line interface
58+
- `aws` command-line interface
59+
- `minio-go` Go SDK

‎docs/backend/gcs.md‎

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Obstor GCS Backend
22

3-
Obstor GCS Backend allows you to access Google Cloud Storage (GCS) with S3-compatible APIs and [other supported protocols](https://obstor.net/docs/protocols)
3+
Obstor GCS Backend allows you to access Google Cloud Storage (GCS) with S3-compatible APIs and [other supported protocols](/docs/protocols)
44

55
- [Run Obstor Backend for GCS](#run-obstor-backend-for-gcs)
66
- [Test Using Browser Dashboard](#test-using-obstor-browser)
@@ -20,7 +20,7 @@ Obstor GCS Backend allows you to access Google Cloud Storage (GCS) with S3-compa
2020
**Note:** For alternate ways to set up *Application Default Credentials*, see [Setting Up Authentication for Server to Server Production Applications](https://developers.google.com/identity/protocols/application-default-credentials).
2121

2222
### 1.2 Run Obstor GCS Backend Using Docker
23-
```sh
23+
```bash
2424
docker run -p 9000:9000 --name gcs-s3 \
2525
-v /path/to/credentials.json:/credentials.json \
2626
-e "GOOGLE_APPLICATION_CREDENTIALS=/credentials.json" \
@@ -31,7 +31,7 @@ docker run -p 9000:9000 --name gcs-s3 \
3131

3232
### 1.3 Run Obstor GCS Backend Using the Obstor Binary
3333

34-
```sh
34+
```bash
3535
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
3636
export OBSTOR_ROOT_USER=obstoraccesskey
3737
export OBSTOR_ROOT_PASSWORD=obstorsecretkey
@@ -52,24 +52,24 @@ Obstor Client is a command-line tool called `mc` that provides UNIX-like command
5252

5353
Use the following command to configure the backend:
5454

55-
```sh
55+
```bash
5656
mc alias set mygcs http://backend-ip:9000 obstoraccesskey obstorsecretkey
5757
```
5858

5959
### 3.2 List Containers on GCS
6060

6161
Use the following command to list the containers on GCS:
6262

63-
```sh
63+
```bash
6464
mc ls mygcs
6565
```
6666

6767
A response similar to this one should be displayed:
6868

6969
```
70-
[2017-02-22 01:50:43 PST] 0B ferenginar/
71-
[2017-02-26 21:43:51 PST] 0B my-container/
72-
[2017-02-26 22:10:11 PST] 0B test-container1/
70+
[2026-05-22 01:50:43 PST] 0B ferenginar/
71+
[2026-05-26 21:43:51 PST] 0B my-container/
72+
[2026-05-26 22:10:11 PST] 0B test-container1/
7373
```
7474

7575
### 3.3 Known limitations
@@ -83,7 +83,7 @@ Other limitations:
8383
* Bucket notification APIs are not supported.
8484

8585
## <a name="explore-further"></a>4. Explore Further
86-
- [Supported Protocols](https://obstor.net/docs/protocols) - S3, SFTP, and more
87-
- [`mc` command-line interface](https://obstor.net/docs/obstor-client-quickstart-guide)
88-
- [`aws` command-line interface](https://obstor.net/docs/aws-cli-with-obstor)
89-
- [`minio-go` Go SDK](https://obstor.net/docs/golang-client-quickstart-guide)
86+
- [Supported Protocols](/docs/protocols) - S3, SFTP, and more
87+
- `mc` command-line interface
88+
- `aws` command-line interface
89+
- `minio-go` Go SDK

‎docs/backend/hdfs.md‎

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
# Obstor HDFS Backend
2-
Obstor HDFS backend adds S3 API and [other supported protocol](https://obstor.net/docs/protocols) support to Hadoop HDFS filesystem. Applications can use both the S3 and file APIs concurrently without requiring any data migration. Since the backend is stateless and shared-nothing, you may elastically provision as many Obstor instances as needed to distribute the load.
2+
Obstor HDFS backend adds S3 API and [other supported protocol](/docs/protocols) support to Hadoop HDFS filesystem. Applications can use both the S3 and file APIs concurrently without requiring any data migration. Since the backend is stateless and shared-nothing, you may elastically provision as many Obstor instances as needed to distribute the load.
33

44
> NOTE: Intention of this backend implementation it to make it easy to migrate your existing data on HDFS clusters to Obstor clusters using standard tools like `mc` or `aws-cli`, if the goal is to use HDFS perpetually we recommend that HDFS should be used directly for all write operations.
55
66
## Run Obstor Backend for HDFS Storage
77

88
### Using Binary
99
Namenode information is obtained by reading `core-site.xml` automatically from your hadoop environment variables *$HADOOP_HOME*
10-
```
10+
```bash
1111
export OBSTOR_ROOT_USER=obstor
1212
export OBSTOR_ROOT_PASSWORD=obstor123
1313
obstor backend hdfs
1414
```
1515

1616
You can also override the namenode endpoint as shown below.
17-
```
17+
```bash
1818
export OBSTOR_ROOT_USER=obstor
1919
export OBSTOR_ROOT_PASSWORD=obstor123
2020
obstor backend hdfs hdfs://namenode:8200
2121
```
2222

2323
### Using Docker
2424
Using docker is experimental, most Hadoop environments are not dockerized and may require additional steps in getting this to work properly. You are better off just using the binary in this situation.
25-
```
25+
```bash
2626
docker run -p 9000:9000 \
2727
--name hdfs-s3 \
2828
-e "OBSTOR_ROOT_USER=obstor" \
@@ -44,13 +44,13 @@ To enable kerberos authentication, you need to set `hadoop.security.authenticati
4444
```
4545

4646
Obstor will load `krb5.conf` from environment variable `KRB5_CONFIG` or default location `/etc/krb5.conf`.
47-
```sh
47+
```bash
4848
export KRB5_CONFIG=/path/to/krb5.conf
4949
```
5050

5151
If you want Obstor to use ccache for authentication, set environment variable `KRB5CCNAME` to the credential cache file path,
5252
or Obstor will use the default location `/tmp/krb5cc_%{uid}`.
53-
```sh
53+
```bash
5454
export KRB5CCNAME=/path/to/krb5cc
5555
```
5656

@@ -62,7 +62,7 @@ If you prefer to use keytab, with automatically renewal, you need to config thre
6262

6363
Please note that the username is not principal name.
6464

65-
```sh
65+
```bash
6666
export KRB5KEYTAB=/path/to/keytab
6767
export KRB5USERNAME=hdfs
6868
export KRB5REALM=REALM.COM
@@ -79,17 +79,17 @@ export KRB5REALM=REALM.COM
7979

8080
### Configure `mc`
8181

82-
```
82+
```bash
8383
mc alias set myhdfs http://backend-ip:9000 access_key secret_key
8484
```
8585

8686
### List buckets on hdfs
8787

88-
```
88+
```bash
8989
mc ls myhdfs
90-
[2017-02-22 01:50:43 PST] 0B user/
91-
[2017-02-26 21:43:51 PST] 0B datasets/
92-
[2017-02-26 22:10:11 PST] 0B assets/
90+
[2026-05-22 01:50:43 PST] 0B user/
91+
[2026-05-26 21:43:51 PST] 0B datasets/
92+
[2026-05-26 22:10:11 PST] 0B assets/
9393
```
9494

9595
### Known limitations
@@ -101,7 +101,7 @@ Backend inherits the following limitations of HDFS storage layer:
101101
- Concurrent multipart operations are not supported (HDFS lacks safe locking support, or poorly implemented)
102102

103103
## Explore Further
104-
- [Supported Protocols](https://obstor.net/docs/protocols) - S3, SFTP, and more
105-
- [`mc` command-line interface](https://obstor.net/docs/obstor-client-quickstart-guide)
106-
- [`aws` command-line interface](https://obstor.net/docs/aws-cli-with-obstor)
107-
- [`minio-go` Go SDK](https://obstor.net/docs/golang-client-quickstart-guide)
104+
- [Supported Protocols](/docs/protocols) - S3, SFTP, and more
105+
- `mc` command-line interface
106+
- `aws` command-line interface
107+
- `minio-go` Go SDK

‎docs/backend/nas.md‎

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# Obstor NAS Backend
22

3-
Obstor Backend adds S3 and [other supported protocol](https://obstor.net/docs/protocols) compatibility to NAS storage. You may run multiple obstor instances on the same shared NAS volume as a distributed object backend.
3+
Obstor Backend adds S3 and [other supported protocol](/docs/protocols) compatibility to NAS storage. You may run multiple obstor instances on the same shared NAS volume as a distributed object backend.
44

55
## Run Obstor Backend for NAS Storage
66

77
### Using Docker
88

99
Please ensure to replace `/shared/nasvol` with actual mount path.
1010

11-
```
11+
```bash
1212
docker run -p 9000:9000 --name nas-s3 \
1313
-e "OBSTOR_ROOT_USER=obstor" \
1414
-e "OBSTOR_ROOT_PASSWORD=obstor123" \
@@ -18,7 +18,7 @@ docker run -p 9000:9000 --name nas-s3 \
1818

1919
### Using Binary
2020

21-
```
21+
```bash
2222
export OBSTOR_ROOT_USER=obstor
2323
export OBSTOR_ROOT_PASSWORD=obstor123
2424
obstor backend nas /shared/nasvol
@@ -36,17 +36,17 @@ Obstor Backend comes with an embedded web based object browser. Point your web b
3636

3737
### Configure `mc`
3838

39-
```
39+
```bash
4040
mc alias set mynas http://backend-ip:9000 access_key secret_key
4141
```
4242

4343
### List buckets on nas
4444

45-
```
45+
```bash
4646
mc ls mynas
47-
[2017-02-22 01:50:43 PST] 0B ferenginar/
48-
[2017-02-26 21:43:51 PST] 0B my-bucket/
49-
[2017-02-26 22:10:11 PST] 0B test-bucket1/
47+
[2026-05-22 01:50:43 PST] 0B ferenginar/
48+
[2026-05-26 21:43:51 PST] 0B my-bucket/
49+
[2026-05-26 22:10:11 PST] 0B test-bucket1/
5050
```
5151

5252
### The file-based config settings are deprecated in NAS
@@ -67,7 +67,7 @@ notify_webhook:1 endpoint=http://localhost:8080/ auth_token= queue_limit=0 queue
6767

6868
The corresponding environment variable setting can be
6969

70-
```
70+
```bash
7171
export OBSTOR_NOTIFY_WEBHOOK_ENABLE_1=on
7272
export OBSTOR_NOTIFY_WEBHOOK_ENDPOINT_1=http://localhost:8080/
7373
export OBSTOR_NOTIFY_WEBHOOK_QUEUE_DIR_1=/tmp/webhk
@@ -93,7 +93,7 @@ NAS backend implementation allows symlinks on regular files,
9393
*Directory symlinks is not and will not be supported as there are no safe ways to handle them.*
9494

9595
## Explore Further
96-
- [Supported Protocols](https://obstor.net/docs/protocols) - S3, SFTP, and more
97-
- [`mc` command-line interface](https://obstor.net/docs/obstor-client-quickstart-guide)
98-
- [`aws` command-line interface](https://obstor.net/docs/aws-cli-with-obstor)
99-
- [`minio-go` Go SDK](https://obstor.net/docs/golang-client-quickstart-guide)
96+
- [Supported Protocols](/docs/protocols) - S3, SFTP, and more
97+
- `mc` command-line interface
98+
- `aws` command-line interface
99+
- `minio-go` Go SDK

0 commit comments

Comments
 (0)