Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update docs for 0.8.0 version #140

Merged
merged 83 commits into from
Dec 23, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
b241fe6
Fix
mirshahriar Dec 6, 2017
c454757
Fixing
mirshahriar Dec 8, 2017
6d0b944
added-all
mirshahriar Dec 11, 2017
aaf084c
fixed
mirshahriar Dec 11, 2017
a14f5da
Modifying
mirshahriar Dec 11, 2017
58291f8
fixing
mirshahriar Dec 12, 2017
fda5e7f
added-all
mirshahriar Dec 12, 2017
d4270e7
added-all
mirshahriar Dec 12, 2017
b3b5d13
added-all
mirshahriar Dec 12, 2017
87bf4e5
added-all
mirshahriar Dec 12, 2017
6313c03
added-all
mirshahriar Dec 12, 2017
6d292e9
added-all
mirshahriar Dec 12, 2017
34dc222
added-all
mirshahriar Dec 12, 2017
21a91f1
added-all
mirshahriar Dec 12, 2017
29ea8c4
added-all
mirshahriar Dec 12, 2017
b43a0c1
added-all
mirshahriar Dec 12, 2017
673d16b
fixed
mirshahriar Dec 12, 2017
5596a34
added-all
mirshahriar Dec 12, 2017
0bca7d3
added-all
mirshahriar Dec 12, 2017
611f744
added-all
mirshahriar Dec 12, 2017
5246e35
added-all
mirshahriar Dec 12, 2017
b5dd253
added-all
mirshahriar Dec 12, 2017
65a17b1
added-all
mirshahriar Dec 12, 2017
d29970a
added-all
mirshahriar Dec 12, 2017
d243c4e
added-all
mirshahriar Dec 12, 2017
bae7b31
added-all
mirshahriar Dec 12, 2017
7e515c7
added-all
mirshahriar Dec 12, 2017
7a9c651
added-all
mirshahriar Dec 12, 2017
3ba6a99
added-all
mirshahriar Dec 12, 2017
72111ba
added-all
mirshahriar Dec 12, 2017
b206f58
added-all
mirshahriar Dec 12, 2017
72ecbda
added-all
mirshahriar Dec 12, 2017
f4751de
added-all
mirshahriar Dec 12, 2017
77b829e
added-all
mirshahriar Dec 12, 2017
48f960f
added-all
mirshahriar Dec 12, 2017
06c42e1
added-all
mirshahriar Dec 12, 2017
816f532
Fixed
mirshahriar Dec 13, 2017
361c859
fixed
mirshahriar Dec 13, 2017
c698659
added-all
mirshahriar Dec 13, 2017
03de8f6
added-all
mirshahriar Dec 13, 2017
76dbf84
added-all
mirshahriar Dec 13, 2017
28522d2
added-all
mirshahriar Dec 13, 2017
595965d
added-all
mirshahriar Dec 13, 2017
8ad449a
added-all
mirshahriar Dec 13, 2017
cda5928
added-all
mirshahriar Dec 13, 2017
659cafa
added-all
mirshahriar Dec 13, 2017
984ff35
Fixed
mirshahriar Dec 13, 2017
4f858a1
added-all
mirshahriar Dec 13, 2017
b2969fa
added-all
mirshahriar Dec 13, 2017
8760e05
added-all
mirshahriar Dec 13, 2017
e258c06
added-all
mirshahriar Dec 13, 2017
701e499
added-all
mirshahriar Dec 14, 2017
044c416
added-all
mirshahriar Dec 14, 2017
7f5538e
added-all
mirshahriar Dec 14, 2017
8c9fef3
added-all
mirshahriar Dec 14, 2017
6f625a5
added-all
mirshahriar Dec 14, 2017
992a152
added-all
mirshahriar Dec 14, 2017
35e26a7
added-all
mirshahriar Dec 14, 2017
4d2b974
added-all
mirshahriar Dec 14, 2017
f89e56f
added-all
mirshahriar Dec 14, 2017
f184404
added-all
mirshahriar Dec 14, 2017
767fe4d
added-all
mirshahriar Dec 14, 2017
42de5de
added-all
mirshahriar Dec 14, 2017
6ce6325
added-all
mirshahriar Dec 14, 2017
dcfa5e5
added-all
mirshahriar Dec 14, 2017
caf180f
added-all
mirshahriar Dec 14, 2017
ce3a513
added-all
mirshahriar Dec 14, 2017
07f1c4a
added-all
mirshahriar Dec 14, 2017
0201176
added-all
mirshahriar Dec 14, 2017
52ce1c3
added-all
mirshahriar Dec 14, 2017
61c4692
added-all
mirshahriar Dec 14, 2017
d7490e8
added-all
mirshahriar Dec 14, 2017
4e12352
added-all
mirshahriar Dec 14, 2017
ea74cb5
added-all
mirshahriar Dec 15, 2017
304c27e
added-all
mirshahriar Dec 15, 2017
a80842d
added-all
mirshahriar Dec 15, 2017
f0c69a3
added-all
mirshahriar Dec 15, 2017
c1e11b6
added-all
mirshahriar Dec 15, 2017
f4b328e
Merge remote-tracking branch 'remotes/origin/docs' into docs
mirshahriar Dec 22, 2017
ed076c5
fixed
mirshahriar Dec 22, 2017
6f9ef49
Merge branch 'master' into docs
tamalsaha Dec 22, 2017
61042a9
Fix
tamalsaha Dec 23, 2017
374cd2b
0.7.1 -> 0.8.0
tamalsaha Dec 23, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 12 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,28 @@
Running production quality database in Kubernetes can be tricky to say the least. In the early days of Kubernetes, replication controllers were used to run a single pod for a database. With the introduction of StatefulSet, it became easy to run a docker container for any database. But what about monitoring, taking periodic backups, restoring from backups or cloning from an existing database? KubeDB is a framework for writing operators for any database that support the following operational requirements:

- Create a database declaratively using CRD.
- Take one-off backups or period backups to various cloud stores, eg, S3, GCS, etc.
- Take one-off backups or periodic backups to various cloud stores, eg, S3, GCS, Azure etc.
- Restore from backup or clone any database.
- Native integration with Prometheus for monitoring via [CoreOS Prometheus Operator](https://github.com/coreos/prometheus-operator).
- Apply deletion lock to avoid accidental deletion of database.
- Keep track of deleted databases, cleanup prior snapshots with a single command.
- Use cli to manage databases like kubectl for Kubernetes.

KubeDB is developed at [AppsCode](https://twitter.com/AppsCodeHQ) to run their SAAS platform on Kubernetes. Currently we include complete implementations for Postgres and ElasticSearch database.
KubeDB is developed at [AppsCode](https://twitter.com/AppsCodeHQ) to run their SAAS platform on Kubernetes. Currently KubeDB includes support for following datastores:
- Postgres
- Elasticsearch
- MySQL
- MongoDB
- Redis
- Memcached

## Supported Versions
Please pick a version of KubeDB that matches your Kubernetes installation.

| KubeDB Version | Docs | Kubernetes Version |
|---------------------------------------------------------------------|------------------------------------------------------------|--------------------|
| [0.7.1](https://github.com/kubedb/cli/releases/tag/0.7.1) (uses CRD) | [User Guide](https://github.com/kubedb/cli/tree/0.7.1/docs) | 1.7.x+ |
| [0.6.0](https://github.com/kubedb/cli/releases/tag/0.6.0) (uses TPR) | [User Guide](https://github.com/kubedb/cli/tree/0.6.0/docs) | 1.5.x - 1.7.x |
| KubeDB Version | Docs | Kubernetes Version |
|----------------------------------------------------------------------|-------------------------------------------------------------|--------------------|
| [0.8.0](https://github.com/kubedb/cli/releases/tag/0.8.0) (uses CRD) | [User Guide](https://github.com/kubedb/cli/tree/0.8.0/docs) | 1.7 + |
| [0.6.0](https://github.com/kubedb/cli/releases/tag/0.6.0) (uses TPR) | [User Guide](https://github.com/kubedb/cli/tree/0.6.0/docs) | 1.5.x - 1.7.x |

## Installation
To install KubeDB, please follow the guide [here](/docs/install.md).
Expand Down
21 changes: 11 additions & 10 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@

---
title: KubeDB Overview
menu:
docs_0.7.1:
docs_0.8.0:
identifier: kubedb-overview
name: Overview
parent: getting-started
weight: 10
menu_name: docs_0.7.1
menu_name: docs_0.8.0
section_menu_id: getting-started
url: /docs/0.7.1/getting-started/
url: /docs/0.8.0/getting-started/
aliases:
- /docs/0.7.1/
- /docs/0.7.1/README/
- /docs/0.8.0/
- /docs/0.8.0/README/
---

[![Go Report Card](https://goreportcard.com/badge/github.com/kubedb/cli)](https://goreportcard.com/report/github.com/kubedb/cli)
Expand All @@ -27,15 +28,15 @@ Running production quality database in Kubernetes can be tricky to say the least
- Keep track of deleted databases, cleanup prior snapshots with a single command.
- Use cli to manage databases like kubectl for Kubernetes.

KubeDB is developed at [AppsCode](https://twitter.com/AppsCodeHQ) to run their SAAS platform on Kubernetes. Currently we include complete implementations for Postgres and ElasticSearch database.
KubeDB is developed at [AppsCode](https://twitter.com/AppsCodeHQ) to run their SAAS platform on Kubernetes. Currently we include complete implementations for Postgres and Elasticsearch database.

## Supported Versions
Please pick a version of KubeDB that matches your Kubernetes installation.

| KubeDB Version | Docs | Kubernetes Version |
|---------------------------------------------------------------------|------------------------------------------------------------|--------------------|
| [0.7.1](https://github.com/kubedb/cli/releases/tag/0.7.1) (uses CRD) | [User Guide](https://github.com/kubedb/cli/tree/0.7.1/docs) | 1.7.x+ |
| [0.6.0](https://github.com/kubedb/cli/releases/tag/0.6.0) (uses TPR) | [User Guide](https://github.com/kubedb/cli/tree/0.6.0/docs) | 1.5.x - 1.7.x |
| KubeDB Version | Docs | Kubernetes Version |
|----------------------------------------------------------------------|-------------------------------------------------------------|--------------------|
| [0.8.0](https://github.com/kubedb/cli/releases/tag/0.8.0) (uses CRD) | [User Guide](https://github.com/kubedb/cli/tree/0.8.0/docs) | 1.7 + |
| [0.6.0](https://github.com/kubedb/cli/releases/tag/0.6.0) (uses TPR) | [User Guide](https://github.com/kubedb/cli/tree/0.6.0/docs) | 1.5.x - 1.7.x |

## Installation
To install KubeDB, please follow the guide [here](/docs/install.md).
Expand Down
4 changes: 2 additions & 2 deletions docs/_index.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
title: KubeDB
menu:
docs_0.7.1:
docs_0.8.0:
identifier: getting-started
name: Getting Started
weight: 10
menu_name: docs_0.7.1
menu_name: docs_0.8.0
---
4 changes: 2 additions & 2 deletions docs/concepts/_index.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
title: KubeDB Concepts
menu:
docs_0.7.1:
docs_0.8.0:
identifier: concepts
name: Concepts
weight: 20
menu_name: docs_0.7.1
menu_name: docs_0.8.0
---
73 changes: 65 additions & 8 deletions docs/concepts/elasticsearch.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
---
title: Elasticsearch Concepts
menu:
docs_0.7.1:
docs_0.8.0:
identifier: concepts-elasticsearch
name: Elasticsearch
parent: concepts
weight: 10
menu_name: docs_0.7.1
menu_name: docs_0.8.0
section_menu_id: concepts
aliases:
- /docs/0.7.1/concepts/
- /docs/0.8.0/concepts/
---

> New to KubeDB? Please start [here](/docs/tutorials/README.md).
Expand All @@ -29,8 +29,21 @@ metadata:
name: e1
namespace: demo
spec:
version: 2.3.1
replicas: 1
version: 5.6.4
topology:
master:
replicas: 1
prefix: master
data:
replicas: 2
prefix: data
client:
replicas: 1
prefix: client
databaseSecret:
secretName: e1-auth
certificateSecret:
secretName: e1-cert
storage:
storageClassName: "standard"
accessModes:
Expand Down Expand Up @@ -74,12 +87,56 @@ spec:
```

### spec.version
`spec.version` is a required field specifying the version of Elasticsearch cluster. Currently the supported value is `2.3.1`.

`spec.version` is a required field specifying the version of Elasticsearch cluster. Currently the supported value is `5.6.4`.


### spec.topology

`spec.topology` is an optional field that specify to the number of pods we want as dedicated nodes and also specify prefix for their StatefulSet name

- `spec.topology.master`
- `.replicas` is an optional field to specify how many pods we want as `master` node. If not set, this defaults to 1.
- `.prefix` is an optional field to be used as prefix of StatefulSet name.
- `spec.topology.data`
- `.replicas` is an optional field to specify how many pods we want as `data` node. If not set, this defaults to 1.
- `.prefix` is an optional field to be used as prefix of StatefulSet name.
- `spec.topology.client`
- `.replicas` is an optional field to specify how many pods we want as `client` node. If not set, this defaults to 1.
- `.prefix` is an optional field to be used as prefix of StatefulSet name.

> Note: Any two of them can't have same prefix.

#### spec.replicas
`spec.replicas` is an optional field that can be used if `spec.topology` is not specified. This field specifies the number of pods in the Elasticsearch cluster. If not set, this defaults to 1.


### spec.databaseSecret
`spec.databaseSecret` is an optional field that points to a Secret used to hold credential and [search guard](https://github.com/floragunncom/search-guard) configuration.

- `ADMIN_PASSWORD:` Password for `admin` user.
- `READALL_PASSWORD:` Password for `readall` user.

Following keys are used for search-guard configuration
- `sg_config.yml:` Configure authenticators and authorization backends
- `sg_internal_users.yml:` user and hashed passwords (hash with hasher.sh)
- `sg_roles_mapping.yml:` map backend roles, hosts and users to roles
- `sg_action_groups.yml:` define permission groups
- `sg_roles.yml:` define the roles and the associated permissions

If not set, KubeDB operator creates a new Secret `{Elasticsearch name}-auth` with generated credentials and default search-guard configuration. If you want to use an existing secret, please specify that when creating Elasticsearch using `spec.databaseSecret.secretName`.

### spec.certificateSecret
`spec.certificateSecret` is an optional field that points a Secret used to hold following information for certificate.

## spec.replicas
`spec.replicas` specifies the number of pods in the Elasticsearch cluster. If not set, this defaults to 1.
- `ca.pem:` The root CA in `pem` format
- `truststore.jks:` The root CA in `jks` format
- `keystore.jks:` The node certificate in `jks` format
- `sgadmin.jks:` Admin certificate is used to change the Search Guard configuration.
- `client-key.pem:` The client key in `pem` format.
- `client.pem:` The client certificate in `pem` format.

If not set, KubeDB operator creates a new Secret `{Elasticsearch name}-cert` with generated certificates. If you want to use an existing secret, please specify that when creating Elasticsearch using `spec.certificateSecret.secretName`.

### spec.storage
`spec.storage` is an optional field that specifies the StorageClass of PVCs dynamically allocated to store data for the database. This storage spec will be passed to the StatefulSet created by KubeDB operator to run database pods. You can specify any StorageClass available in your cluster with appropriate resource requests. If no storage spec is given, an `emptyDir` is used.
Expand Down
4 changes: 2 additions & 2 deletions docs/concepts/monitoring.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
---
title: Monitoring
menu:
docs_0.7.1:
docs_0.8.0:
identifier: monitoring-concepts
name: Monitoring
parent: concepts
weight: 15
menu_name: docs_0.7.1
menu_name: docs_0.8.0
section_menu_id: concepts
---

Expand Down
Loading