Skip to content

Commit 32d95fc

Browse files
Added overview section (#3)
Added an overview section for NuoDB CP.
1 parent f15ed91 commit 32d95fc

File tree

12 files changed

+163
-3
lines changed

12 files changed

+163
-3
lines changed

assets/scss/common/_custom.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
// Put your custom SCSS code here
22

3+
.container-fw {
4+
max-width: 1420px;
5+
}
6+
37
.section-cards {
48
.card {
59
margin: 0;

content/docs/administration/offerings/_index.md renamed to content/docs/administration/configure/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: "Offerings"
2+
title: "Manage Configurations"
33
description: ""
44
summary: ""
55
date: 2024-08-14T13:50:47+03:00
File renamed without changes.

content/docs/administration/troubleshooting/_index.md renamed to content/docs/administration/troubleshoot/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: "Troubleshooting"
2+
title: "Troubleshoot"
33
description: ""
44
summary: ""
55
date: 2024-08-14T13:50:47+03:00
File renamed without changes.

content/docs/getting-started/installation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ seo:
1616

1717
NuoDB Control Plane allows users to provision NuoDB databases on-demand remotely using REST services by exposing various predefined configuration options.
1818

19-
This document describes how to provision NuoDB databases in a multi-tenant model by using the NuoDB Control Plane (CP).
19+
This page describes how to deploy the NuoDB Control Plane into your Kubernetes Cluster.
2020
The NuoDB Control Plane works with [Kubernetes][1] locally or in the cloud.
2121
Follow the steps in this guide regardless of the selected Kubernetes platform provider.
2222

content/docs/overview/_index.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
title: "Overview"
3+
description: ""
4+
summary: ""
5+
date: 2024-08-14T13:50:47+03:00
6+
lastmod: 2024-08-14T13:50:47+03:00
7+
draft: false
8+
weight: 10
9+
toc: true
10+
sidebar:
11+
collapsed: true
12+
seo:
13+
title: "" # custom title (optional)
14+
description: "" # custom description (recommended)
15+
canonical: "" # custom canonical URL (optional)
16+
noindex: false # false (default) or true
17+
---
32.6 KB
Loading
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
title: "NuoDB Control Plane"
3+
description: ""
4+
summary: ""
5+
date: 2024-08-14T13:52:09+03:00
6+
lastmod: 2024-08-14T13:52:09+03:00
7+
draft: false
8+
weight: 15
9+
toc: true
10+
seo:
11+
title: "" # custom title (optional)
12+
description: "" # custom description (recommended)
13+
canonical: "" # custom canonical URL (optional)
14+
noindex: false # false (default) or true
15+
---
16+
17+
The NuoDB Control Plane (CP) empowers customers to leverage NuoDB in a Database as a Service (DBaaS) model.
18+
Operating within a Kubernetes cluster, it manages the provisioning and administration of multiple administrative domains and their databases, all within the same cluster.
19+
NuoDB databases are dynamically created remotely with a variety of predefined configuration options available.
20+
21+
## Run on the Cloud
22+
23+
{{< card-grid >}}
24+
{{< link-card title="Install NuoDB Control Plane" href="../getting-started/installation.md" icon="outline/stack-push" description="Start managing NuoDB databases deployed in Kubernetes" >}}
25+
{{< link-card title="Deploy NuoDB databases" href="../getting-started/create-database.md" icon="outline/rocket" description="Create NuoDB databases on-demand easily" >}}
26+
{{< link-card title="Start Developing" href="../getting-started/connect-database.md" icon="outline/code" description="Connect to your database and start developing with NuoDB" >}}
27+
{{< /card-grid >}}
28+
29+
## Architecture
30+
31+
The NuoDB Control Plane allows the creation of:
32+
33+
- One or more organizations
34+
- Each organization can have one or more projects.
35+
Each project corresponds to a NuoDB
36+
domain with its own set of NuoDB Admin processes (APs).
37+
- Within a project, one or more databases can be deployed.
38+
When a project is created a new or existing organization must be specified.
39+
40+
NuoDB CP is composed of several modules that can be independently deployed as part of a microservices-style architecture.
41+
Each module is responsible for managing specific aspects of domains and databases on behalf of customers.
42+
The following components are available to support DBaaS using this approach:
43+
44+
- A DBaaS REST Service that exposes multi-tenant access to external customers according to access control rules.
45+
- A DBaaS Operator that is responsible for enforcing the desired state for databases and domains.
46+
47+
NuoDB domain and database are modeled as Kubernetes [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources) (CRs). Their [Custom Resource Definitions](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#customresourcedefinitions) (CRDs) act as contracts between NuoDB Operator and the other components.
48+
49+
{{< picture src="overview.png" alt="NuoDB Control Plane overview" >}}
50+
51+
## Key concepts
52+
53+
The NuoDB Control Plane can be broken down into several communicating layers.
54+
55+
{{< picture src="cp-arch-layers.png" alt="NuoDB Control Plane logical architecture" >}}
56+
57+
### REST Service
58+
59+
DBaaS REST Service facilitates multi-tenant access for external customers in accordance with access control rules.
60+
It exposes a REST API, enabling remote management of NuoDB domains and databases through coarse-grained CRUD operations (Create, Read, Update, and Delete).
61+
The data model used by the DBaaS REST Service to define user access control is outlined below:
62+
63+
- _Organizations_ consist of several users and policies.
64+
- _Projects_ serve as logical groupings of databases and have a service tier associated with them.
65+
- _Users_ are assigned roles that dictate access to projects and databases.
66+
67+
Projects abstract the relevant aspects of domains for DBaaS users and provide isolation between databases.
68+
Databases within the same project will inherit the service tier from the project they belong to, while databases in different projects will be managed in separate domains.
69+
70+
The REST APIs for projects and databases internally manipulate Domain and Database custom resources (CRs), respectively.
71+
72+
### DBaaS Operator
73+
74+
The DBaaS Operator is a [Kubernetes Operator](https://coreos.com/operators/) which deploys NuoDB into the Kubernetes cluster.
75+
The Operator simplifies the process of deploying the NuoDB domain and database into the local Kubernetes cluster by utilizing [NuoDB Helm Charts](https://github.com/nuodb/nuodb-helm-charts) and exposing high-level configuration options to the user.
76+
77+
### NuoDB Helm charts
78+
79+
The NuoDB Control Plane uses the production-ready NuoDB _admin_ and _database_ Helm charts to deploy a domain (NuoDB Admin processes, APs) and a database (Transaction Engines, TEs and Storage Managers, SMs) respectively.
80+
81+
### Kubernetes
82+
83+
Ultimately, the entire NuoDB DBaaS system operates within a Kubernetes cluster, including the NuoDB Control Plane and all APs, TEs, and SMs it deploys.
84+
Configuration information is stored in _ConfigMap_ and _Secret_ resources.
85+
86+
### DBaaS Configuration and Offerings
87+
88+
Internally, the NuoDB Control Plane leverages _Service Tiers_ and _Helm Features_ to streamline database deployment and provide DBaaS end users with a variety of predefined configuration options.
89+
For more information on creating reusable configuration options, refer to the documentation on [Service Tiers]({{< ref "../administration/configure/service-tiers.md" >}}).
90+
91+
### NuoDB
92+
93+
NuoDB is a distributed Relational Database Management System (RDBMS) that operates as a multi-process, distributed architecture across multiple hosts and data centers.
94+
NuoDB is composed of TE and SM database processes, which are managed by APs.
95+
For more information on NuoDB's system architecture, refer to the [NuoDB System Architecture](https://doc.nuodb.com/nuodb/latest/architecture/system-architecture/) documentation.

0 commit comments

Comments
 (0)