Add ARCH doc. (#3262)

This commit is contained in:
zzjin
2023-06-04 23:33:27 +08:00
committed by GitHub
parent 019d321b26
commit be23cefe06
13 changed files with 57 additions and 7 deletions
+23
View File
@@ -0,0 +1,23 @@
# Architecture Description
Sealos is built using the approach of application separation and application interconnection, where different applications can be deployed independently or combined with other applications to provide services.
All services are authenticated using `kubeconfig` as the application identity, ensuring a consistent user experience whether in a browser, using the `sealos` command line locally, or even with a third-party client.
## Overall Architecture
![Architecture](./images/architecture_light.png#gh-light-mode-only)![Architecture](./images/architecture_dark.png#gh-dark-mode-only)
## Application Architecture
Applications on Sealos adopt a front-end and back-end separation architecture, and the front-end can provide `SSR` capabilities, allowing applications to provide services independently to the outside world without being bound to the Sealos monolith.
Using the following diagram as an example:
**App Launchpad** is a application deployment tool provided by Sealos, and **Terminal** is a terminal application for the Sealos system, providing command-line services consistent like a single-machine operating system terminal.
For various applications on Sealos, they can interact directly with `Kubernetes` services, or interact with various CRD controllers such as Terminal Controller and Ingress-Nginx Controller, etc.
Applications can also call each other, for example, a database created by a user in the **Database** application can directly invoke the **Terminal** application and automatically connect to the database for debugging.
For more information, please refer to the [link](../platform-components) documentation.
![Application](./images/application_light.png#gh-light-mode-only)![Application](./images/application_dark.png#gh-dark-mode-only)
Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 KiB

@@ -2,7 +2,7 @@
sidebar_position: 3
---
# Bytebase Introduction
# Bytebase APP Introduction
Bytebase is an open-source database DevOps tool, it's the GitLab for managing databases throughout the application development lifecycle. It offers a web-based workspace for DBAs and Developers to collaborate and manage the database change safely and efficiently.
@@ -0,0 +1,23 @@
# 架构说明
Sealos 采用应用分离与应用互联的方式构建,不同应用可以独立部署,也可以与其他应用联合起来提供服务。
所有服务全部通过 `kubeconfig` 作为应用身份验证,使得不管是在浏览器,还是本地使用 `sealos` 命令行,甚至是本地的第三方客户端,都能够获得一致的使用体验。
## 整体架构
![Architecture](./images/architecture_light.png#gh-light-mode-only)![Architecture](./images/architecture_dark.png#gh-dark-mode-only)
## 应用架构
Sealos 上的应用采用前后端分离的架构,同时前端能够提供 `SSR` 能力,使得应用也可以单独对外提供服务,而不需要绑定在 Sealos 单体上。
以下图为例:
**应用管理 App Launchpad** 是 Sealos 提供的一个单镜像部署工具, **终端 Terminal** 是 Sealos 云操作作系统的终端应用,提供和单机操作系统终端一致的命令行服务。
对于 Sealos 上的各种应用而言,它们可以直接与 `Kubernetes` 的服务进行交互,也可以与各种 CRD Controller 比如 Terminal Controller 和 Ingress-Nginx Controller 等等进行交互。
应用之间也可以互相调用,比如用户在**数据库**应用中新建的数据库,可以直接唤起**终端**应用并自动连接上数据库进行调试。
详细信息可以点击 [链接](../platform-components) 文档了解更多。
![Application](./images/application_light.png#gh-light-mode-only)![Application](./images/application_dark.png#gh-dark-mode-only)
Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 KiB

@@ -1,7 +1,7 @@
---
sidebar_position: 3
---
# Bytebase 介绍
# Bytebase APP 介绍
Bytebase 是一个开源的数据库管理工具。在整个项目周期中,可将其类比于负责管理数据库的 GitLab 。DBA 和开发者可直接于它提供的网页工作环境中,有效率及安全地进行协作及数据库管理。
+9 -5
View File
@@ -1,8 +1,12 @@
[
{
"type": "doc",
"id": "Intro",
"label": "Intro"
"type": "category",
"label": "Intro",
"link": {
"type": "doc",
"id": "Intro"
},
"items": ["Intro/Architecture"]
},
{
"type": "category",
@@ -32,10 +36,10 @@
"type": "category",
"label": "Cluster Lifecycle Management",
"link": {
"type": "generated-index"
"type": "doc",
"id": "lifecycle-management/Intro"
},
"items": [
"lifecycle-management/Intro",
{
"type": "category",
"label": "Quick Start",