Skip to content

Commit f324757

Browse files
authored
- Move docs to core repo (#1508)
- Remove dots at the end of newlines (excluding etc.) Signed-off-by: Ben <[email protected]>
1 parent 1bf199c commit f324757

File tree

4 files changed

+51
-196
lines changed

4 files changed

+51
-196
lines changed

README.md

Lines changed: 51 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,23 @@
44
<div id="top"></div>
55

66
# NooBaa
7-
- NooBaa is an object data service for hybrid and multi cloud environments.
8-
- NooBaa can be run on kubernetes (k8s).\
9-
`*` we have more ways to deploy NooBaa, based on the needs, please refer to [noobaa-core](https://github.com/noobaa/noobaa-core/) repository for more information).
7+
- NooBaa is an object data service for hybrid and multi cloud environments
8+
- NooBaa can be run on Kubernetes (k8s)
9+
`*` we have more ways to deploy NooBaa, based on the needs, please refer to [noobaa-core](https://github.com/noobaa/noobaa-core/) repository for more information)
1010
- NooBaa is a highly customizable and dynamic data gateway for objects, providing data services such as caching, tiering, mirroring, dedup, encryption, compression, over any storage resource including: Amazon (S3), Google (GCS), Azure (Blob), IBM (COS), other S3-compatble, Filesystems (NSFS), PV-pool etc.
11-
- NooBaa provides an S3 object store service (and Lambda with bucket triggers) to clients both inside and outside the cluster, and uses storage resources from within or outside the cluster, with flexible placement policies to automate data use cases.
12-
- NooBaa goal is to simplify data flows for system administrators by connecting to any of the storage silos from private or public clouds, and providing a single scalable data services, using the same S3 API and management tools. NooBaa allows full control over data placement with dynamic policies per bucket or account.
11+
- NooBaa provides an S3 object store service (and Lambda with bucket triggers) to clients both inside and outside the cluster, and uses storage resources from within or outside the cluster, with flexible placement policies to automate data use cases
12+
- NooBaa goal is to simplify data flows for system administrators by connecting to any of the storage silos from private or public clouds, and providing a single scalable data services, using the same S3 API and management tools. NooBaa allows full control over data placement with dynamic policies per bucket or account
1313

1414
# NooBaa Operator
15-
NooBaa operator (the Operator) watches for NooBaa changes and reconciles them to apply the desired state.
16-
- The NooBaa operator is following the [Operator pattern](https://kubernetes.io/docs/concepts/extend-kubernetes/operator/) - you can find extensive documentation in the Kubernetes docs.
17-
- Operators are software extensions to Kubernetes that make use of custom resources ([CRs](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)) to manage applications and their components.
18-
- NooBaa operator is a [controller](https://kubernetes.io/docs/concepts/architecture/controller/). In Kubernetes, controllers are control loops that watch the state of your cluster, then make or request changes where needed. Each controller tries to move the **current state** of the cluster closer to the **desired state**.
15+
NooBaa operator (the Operator) watches for NooBaa changes and reconciles them to apply the desired state
16+
- The NooBaa operator is following the [Operator pattern](https://kubernetes.io/docs/concepts/extend-kubernetes/operator/) - you can find extensive documentation in the Kubernetes docs
17+
- Operators are software extensions to Kubernetes that make use of custom resources ([CRs](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)) to manage applications and their components
18+
- NooBaa operator is a [controller](https://kubernetes.io/docs/concepts/architecture/controller/). In Kubernetes, controllers are control loops that watch the state of your cluster, then make or request changes where needed. Each controller tries to move the **current state** of the cluster closer to the **desired state**
1919

2020
#### Reconcile loops
2121
System Reconciler example - the system reconciliation is divided to the following phases:
22-
1. [Verifying](pkg/system/phase1_verifying.go) - checks the validity of the CR (noobaa image, address, etc.).
23-
2. [Creating](pkg/system/phase2_creating.go) - creates the needed resources (secrets, services, etc.).
22+
1. [Verifying](pkg/system/phase1_verifying.go) - checks the validity of the CR (noobaa image, address, etc.)
23+
2. [Creating](pkg/system/phase2_creating.go) - creates the needed resources (secrets, services, etc.)
2424
3. [Connecting](pkg/system/phase3_connecting.go) - populate the statuses of mgmt and s3 services, initialize client for making calls to the server, etc.
2525
4. [Configuring](pkg/system/phase4_configuring.go) - creates default backingstore, default bucketclass, etc.
2626

@@ -66,13 +66,13 @@ noobaa status
6666

6767
### Usage
6868
#### NooBaa CLI
69-
The CLI helps with most management tasks and focuses on ease of use for manual operations or scripts.
69+
The CLI helps with most management tasks and focuses on ease of use for manual operations or scripts
7070

7171
Notes:
7272
- Help: `noobaa --help`\
73-
use `noobaa <command> --help` for more information about any command.
74-
- kubeconfig - same as kubectl - the CLI operates on the current context from kubeconfig which can be changed with `export KUBECONFIG=/path/to/custom/kubeconfig` or use the `--kubeconfig` and `--namespace` flags.
75-
- local clusters (minikube, rancher desktop): use `noobaa install --mini` or `--dev` to allocate less resources.
73+
use `noobaa <command> --help` for more information about any command
74+
- kubeconfig - same as kubectl - the CLI operates on the current context from kubeconfig which can be changed with `export KUBECONFIG=/path/to/custom/kubeconfig` or use the `--kubeconfig` and `--namespace` flags
75+
- local clusters (minikube, rancher desktop): use `noobaa install --mini` or `--dev` to allocate less resources
7676
- Uninstalling: `noobaa uninstall`
7777

7878
**Examples:**\
@@ -124,12 +124,12 @@ Other Commands:
124124
options Print the list of global flags
125125
version Show version
126126
127-
Use "noobaa <command> --help" for more information about a given command.
127+
Use "noobaa <command> --help" for more information about a given command
128128
```
129129
(taken from branch 5.16)
130130

131131
**2) Option menu**
132-
In case you would like to add flags that are not specific for a certain command.
132+
In case you would like to add flags that are not specific for a certain command
133133

134134
```bash
135135
$ noobaa options
@@ -150,7 +150,7 @@ The following options can be passed to any command:
150150
--dev=false: Set sufficient resources for dev env
151151
--disable-load-balancer=false: Set the service type to ClusterIP instead of LoadBalancer
152152
--image-pull-secret='': Image pull secret (must be in same namespace)
153-
--kubeconfig='': Paths to a kubeconfig. Only required if out-of-cluster.
153+
--kubeconfig='': Paths to a kubeconfig. Only required if out-of-cluster
154154
--manual-default-backingstore=false: allow to delete the default backingstore
155155
--mini=false: Signal the operator that it is running in a low resource environment
156156
-n, --namespace='default': Target namespace
@@ -191,45 +191,47 @@ INFO[0000] operator-image: noobaa/noobaa-operator:5.18.0
191191
- or specify which storage class to use with `noobaa install --db-storage-class XXX --pv-pool-default-storage-class YYY`
192192

193193
## Documentation
194-
You can find documentation related to noobaa operator and noobaa components in kubernetes in [doc](doc) directory.
195-
For example:
196-
- [NooBaa](doc/about-noobaa.md) - Basic terminology and links to videos.
197-
- [S3 API Compatibility](doc/s3-compatibility.md) - Overview of S3 API compatibility in NooBaa
198-
- [AWS API Compatibility](https://github.com/noobaa/noobaa-core/blob/master/docs/design/AWS_API_Compatibility.md) - Overview of AWS API calls support in NooBaa
194+
You can find documentation related to the NooBaa operator and other NooBaa components in Kubernetes in the [noobaa-operator/doc](doc) directory as well as [noobaa-core/docs](https://github.com/noobaa/noobaa-core/tree/master/docs)
195+
Operator docs mostly focus on Kubernetes custom resources that NooBaa provides - their function, definitions, parameters and uses.
196+
Core docs focus on NooBaa APIs, advanced features, configuration instructions and design.
197+
A few important docs can be found below:
198+
- [NooBaa](doc/about-noobaa.md) - Basic terminology and links to videos
199+
- [S3 API Compatibility](https://github.com/noobaa/noobaa-core/blob/master/s3-compatibility.md) - Overview of S3 API compatibility in NooBaa
200+
- [AWS API Compatibility](https://github.com/noobaa/noobaa-core/blob/master/docs/AWS_API_Compatibility.md) - Overview of AWS API calls support in NooBaa
199201
- Custom Resource Definitions ([CRDs](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#adding-custom-resources)):
200-
A custom resource is an extension of the Kubernetes API that is not necessarily available in a default Kubernetes installation. CRDs allow users to create new types of resources without adding another API server.
201-
Once a custom resource is installed, users can create, update and access its objects using [`kubectl`](https://kubernetes.io/docs/reference/kubectl/), just as they do for built-in resources.
202-
- [NooBaaSystem](doc/noobaa-crd.md) - The basic CRD to deploy a NooBaa system. Represents a single installation of NooBaa that includes a set of sub-resources (backing-stores, bucket-classes, and buckets).
203-
- [BackingStore](doc/backing-store-crd.md) - Storage resources. These storage targets are used to store deduplicated, compressed and encrypted chunks of data.
204-
- [NamespaceStore](doc/namespace-store-crd.md) - Data resources. These storage targets are used to store and read plain data.
205-
- [BucketClass](doc/bucket-class-crd.md) - Policies applied to a class of buckets, defines bucket policies relating to data placement.
206-
- [Bucket Types](doc/bucket-types.md) - Overview of data and namespace buckets, and supported services
207-
- [Bucket Replication](doc/bucket-replication.md) - Overview of bucket replication rules in NooBaa, including log-based optimizations, inner workings, and example rules
208-
- [Account](doc/noobaa-account-crd.md) - We use the account to receive new credentials set for accessing different noobaa services.
202+
A custom resource is an extension of the Kubernetes API that is not necessarily available in a default Kubernetes installation. CRDs allow users to create new types of resources without adding another API server
203+
Once a custom resource is installed, users can create, update and access its objects using [`kubectl`](https://kubernetes.io/docs/reference/kubectl/), just as they do for built-in resources
204+
- [NooBaaSystem](doc/noobaa-crd.md) - The basic CRD to deploy a NooBaa system. Represents a single installation of NooBaa that includes a set of sub-resources (backing-stores, bucket-classes, and buckets)
205+
- [BackingStore](doc/backing-store-crd.md) - Storage resources. These storage targets are used to store deduplicated, compressed and encrypted chunks of data
206+
- [NamespaceStore](doc/namespace-store-crd.md) - Data resources. These storage targets are used to store and read plain data
207+
- [BucketClass](doc/bucket-class-crd.md) - Policies applied to a class of buckets, defines bucket policies relating to data placement
208+
- [Bucket Types](https://github.com/noobaa/noobaa-core/blob/master/docs/bucket-types.md) - Overview of data and namespace buckets, and supported services
209+
- [Bucket Replication](https://github.com/noobaa/noobaa-core/blob/master/docs/bucket-replication.md) - Overview of bucket replication rules in NooBaa, including log-based optimizations, inner workings, and example rules
210+
- [Account](doc/noobaa-account-crd.md) - We use the account to receive new credentials set for accessing different noobaa services
209211
- Bucket Claim:
210-
- [OBC Provisioner](doc/obc-provisioner.md) - OBC (Object Bucket Claim) is currently the main CR to provision buckets, however it is being deprecated in favor of COSI.
211-
- [COSI Provisioner](doc/cosi-provisioner.md) - COSI (Container Object Storage Interface) is a new kubernetes storage standard (like CSI, Container Storage Interface) to provision object storage buckets.
212+
- [OBC Provisioner](doc/obc-provisioner.md) - OBC (Object Bucket Claim) is currently the main CR to provision buckets, however it is being deprecated in favor of COSI
213+
- [COSI Provisioner](doc/cosi-provisioner.md) - COSI (Container Object Storage Interface) is a new kubernetes storage standard (like CSI, Container Storage Interface) to provision object storage buckets
212214
- DB:
213-
- The default DB is postgres, internal in the cluster.
215+
- The default DB is postgres, internal in the cluster
214216
- [External Postgresql DB support](doc/external-postgres.md)
215217
- Other:
216-
- [HA controller](doc/high-availability-controller.md) - High Availability controller improves NooBaa pods recovery in the case of a node failure.
217-
- [Admission Controller](doc/noobaa-admission.md) - The utilize k8s admission webhook feature to validate various NooBaa custom resource definitions.
218+
- [HA controller](doc/high-availability-controller.md) - High Availability controller improves NooBaa pods recovery in the case of a node failure
219+
- [Admission Controller](doc/noobaa-admission.md) - The utilize k8s admission webhook feature to validate various NooBaa custom resource definitions
218220

219221
Additional information can be found in:
220-
- [noobaa/noobaa-core](https://github.com/noobaa/noobaa-core) repository.
221-
- [noobaa wiki](https://github.com/noobaa/noobaa-core/wiki).
222-
- [noobaa.io](https://www.noobaa.io/) - it is work in progress.
222+
- [noobaa/noobaa-core](https://github.com/noobaa/noobaa-core) repository
223+
- [noobaa wiki](https://github.com/noobaa/noobaa-core/wiki)
224+
- [noobaa.io](https://www.noobaa.io/) - it is work in progress
223225

224226
## Contributing
225-
- Fork and clone the repo: `git clone https://github.com/<username>/noobaa-operator` (see [here](https://github.com/noobaa/noobaa-core/wiki/Git-Pull-Request-Guide) the full needed procedure when contributing code in Github).
227+
- Fork and clone the repo: `git clone https://github.com/<username>/noobaa-operator` (see [here](https://github.com/noobaa/noobaa-core/wiki/Git-Pull-Request-Guide) the full needed procedure when contributing code in Github)
226228
- Use a [local cluster](doc/deply_noobaa_on_minikube_or_rancher_desktop.md):
227-
- Minikube (`minikube start`).
228-
- Rancher Desktop.
229-
- Use your package manager to install `go` and `python3`.
230-
- Source the devenv into your shell: `. devenv.sh`.
231-
- Build the project: `make`.
232-
- Test with the alias `nb` that runs the local operator from `build/_output/bin` (alias created by devenv).
233-
- Install the operator and create the system with: `nb install`.
229+
- Minikube (`minikube start`)
230+
- Rancher Desktop
231+
- Use your package manager to install `go` and `python3`
232+
- Source the devenv into your shell: `. devenv.sh`
233+
- Build the project: `make`
234+
- Test with the alias `nb` that runs the local operator from `build/_output/bin` (alias created by devenv)
235+
- Install the operator and create the system with: `nb install`
234236
- Other:
235-
- [Deploy NSFS on kubernetes](https://github.com/noobaa/noobaa-core/wiki/NSFS-on-Kubernetes).
237+
- [Deploy NSFS on kubernetes](https://github.com/noobaa/noobaa-core/wiki/NSFS-on-Kubernetes)

0 commit comments

Comments
 (0)