-
Notifications
You must be signed in to change notification settings - Fork 165
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(new architecture): add che with devworkspace architecture articles
Signed-off-by: mloriedo <mario.loriedo@gmail.com>
- Loading branch information
Showing
13 changed files
with
136 additions
and
0 deletions.
There are no files selected for viewing
Binary file added
BIN
+62.1 KB
modules/administration-guide/images/architecture/che-architecture-with-dw.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+109 KB
modules/administration-guide/images/architecture/workspace-components-with-dw.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+93.3 KB
...administration-guide/images/architecture/workspaces-server-and-devworkspace.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 7 additions & 0 deletions
7
modules/administration-guide/pages/che-architecture-overview-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
[id="che-architecture-overview-with-dw"] | ||
// = Che architecture with DevWorkspace | ||
:navtitle: Future Che architecture | ||
:keywords: administration-guide, che-architecture-overview | ||
:page-aliases: .:che-architecture-overview-with-dw, .:high-level-che-architecture-with-dw, overview:high-level-che-architecture-with-dw, administration-guide:high-level-che-architecture-with-dw | ||
|
||
include::partial$con_che-architecture-overview-with-dw.adoc[] |
7 changes: 7 additions & 0 deletions
7
modules/administration-guide/pages/che-workspace-controller-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
[id="che-workspace-controller-with-dw"] | ||
// = Che workspace controller with DevWorkspace | ||
:navtitle: Che workspace controller | ||
:keywords: administration-guide, che-workspace-controller | ||
:page-aliases: .:che-workspace-controller-with-dw | ||
|
||
include::partial$assembly_understanding-che-workspace-controller-with-dw.adoc[] |
7 changes: 7 additions & 0 deletions
7
modules/administration-guide/pages/che-workspaces-architecture-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
[id="che-workspaces-architecture-with-dw"] | ||
// = Che Workspace components with DevWorkspace Operator | ||
:navtitle: Che workspaces architecture | ||
:keywords: administration-guide, che-workspaces-architecture, devworkspace | ||
:page-aliases: .:che-workspaces-architecture-with-dw | ||
|
||
include::partial$assembly_understanding-che-workspaces-architecture-with-dw.adoc[] |
24 changes: 24 additions & 0 deletions
24
...ion-guide/partials/assembly_understanding-che-workspace-controller-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
|
||
|
||
:parent-context-of-understanding-che-workspace-controller-with-dw: {context} | ||
|
||
[id="understanding-{prod-id-short}-workspace-controller_{context}-with-dw"] | ||
= Understanding {prod-short} server-side components with the DevWorkspace Operator | ||
|
||
:context: understanding-{prod-id-short}-workspace-controller-with-dw | ||
|
||
include::partial$con_che-workspace-controller-with-dw.adoc[leveloffset=+1] | ||
|
||
include::partial$con_devworkspace-operator.adoc[leveloffset=+1] | ||
|
||
include::partial$con_che-server.adoc[leveloffset=+1] | ||
|
||
include::partial$con_che-user-dashboard.adoc[leveloffset=+1] | ||
|
||
include::partial$con_che-devfile-registry.adoc[leveloffset=+1] | ||
|
||
include::partial$con_che-plug-in-registry.adoc[leveloffset=+1] | ||
|
||
include::partial$con_che-postgresql.adoc[leveloffset=+1] | ||
|
||
:context: {parent-context-of-understanding-che-workspace-controller-with-dw} |
19 changes: 19 additions & 0 deletions
19
...-guide/partials/assembly_understanding-che-workspaces-architecture-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
|
||
|
||
:parent-context-of-understanding-che-workspaces-architecture-with-dw: {context} | ||
|
||
[id="understanding-{prod-id-short}-workspaces-architecture_{context}-with-dw"] | ||
= Understanding {prod-short} workspace components with the DevWorkspace Operator | ||
|
||
:context: understanding-{prod-id-short}-workspaces-architecture-with-dw | ||
|
||
include::partial$con_che-workspaces-architecture-with-dw.adoc[leveloffset=+1] | ||
|
||
|
||
include::partial$assembly_che-workspace-components.adoc[leveloffset=+1] | ||
|
||
|
||
include::partial$con_che-workspace-creation-flow.adoc[leveloffset=+1] | ||
|
||
|
||
:context: {parent-context-of-understanding-che-workspaces-architecture-with-dw} |
20 changes: 20 additions & 0 deletions
20
modules/administration-guide/partials/con_che-architecture-overview-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
[id="{prod-id-short}-architecture-overview-with-dw_{context}"] | ||
= {prod-short} architecture when using the DevWorkspace Operator | ||
|
||
{prod-short} default workspace engine is still the {prod-id-short}-server but from v.7.28.0 of {prod-short} an administrator can configure {prod-short} to use another workspace engine: the https://github.com/devfile/devworkspace-operator[DevWorkspace {orch-name} Operator]. With this new workspace engine configured, {prod-short} workspaces are valid {orch-name} objects and inherit the characteristics of such objects: managed with the {orch-name} API and secured through RBAC. This section describes the architecture of {prod-short} with the DevWorkspace {orch-name} Operator as the workspace engine. This will eventually become the default architecture when the DevWorkspace will reach feature parity with {prod-id-short}-server. Until then an administrator has to explicitly configure {prod-id-short} to use the DevWorkspace following the instructions in xref:installation-guide:enabling-dev-workspace-engine.adoc[this article]. | ||
|
||
{prod} components, with the DevWorkspace Operator enabled, are: | ||
|
||
* A workspace server: an always-running service that manages user workspaces through the DevWorkspace Operator. | ||
* DevWorkspace Operator: the DevWorkspace Custom Resource Definition and the associated controller that extend {orch-name} and provide DevWorkpaces native support. | ||
* User workspaces: container-based IDEs that the server stops when the user stops coding. | ||
|
||
.High-level {prod-short} architecture | ||
image::administration-guide:architecture/{project-context}-architecture-with-dw.png[] | ||
|
||
When {prod-short} is installed on a {platforms-name} cluster, the workspace server and the DevWorkspace Operator are deployed. A {prod-short} workspace is created immediately after a user requests it. | ||
|
||
.Additional resources | ||
|
||
* xref:administration-guide:che-workspace-controller-with-dw.adoc[] | ||
* xref:administration-guide:che-workspaces-architecture-with-dw.adoc[] |
14 changes: 14 additions & 0 deletions
14
modules/administration-guide/partials/con_che-workspace-controller-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
|
||
[id="{prod-id-short}-workspace-controller-with-dw_{context}"] | ||
= {prod-short} server and the DevWorkspace Operator | ||
|
||
The {prod-short} server and the DevWorkspace Operator are the two central server-side components of {prod-short}. Together it manages {prod-short} workspaces: container-based development environments. | ||
|
||
NOTE: When {prod-short} uses the DevWorkspace Operator, it can only be configured in **multi-user** mode: multi-tenant and secured development environments. | ||
|
||
NOTE: When {prod-short} uses the DevWorkspace Operator, {identity-provider} is not a requirement anymore. On vanilla Kubernetes, {prod-short} can be configured to use any OpenID Connect (OIDC) provider (the default is https://dexidp.io/[Dex]). On OpenShift, {prod-short} uses the available OpenShift OAuth v2 service. | ||
|
||
The following diagram shows the different server-side components of {prod-short}. | ||
|
||
.{prod-short} workspaces controller | ||
image::architecture/workspaces-server-and-devworkspace.png[] |
18 changes: 18 additions & 0 deletions
18
modules/administration-guide/partials/con_che-workspaces-architecture-with-dw.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
[id="{prod-id-short}-workspaces-architecture-with-dw_{context}"] | ||
= {prod-short} workspaces components with the DevWorkspace Operator | ||
|
||
A {prod-short} deployment on a {orch-name} cluster consists of the {prod-short} server-side components and several additional Pods hosting workspaces. The {prod-short} server orchestrates the lifecycle of those workspaces, which consist of one or more containers running an IDE with its plug-ins, development tools and the application runtime dependencies. | ||
|
||
The {prod-short} workspace is composed by microservices running in containers to provide the features of a modern IDE running in your browser. | ||
|
||
The source code of the projects of a {prod-short} workspace is persisted in a {platforms-name} `PersistentVolume`. Microservices run in containers that have read-write access to the source code (IDE services, development tools), and runtime applications have read-write access to this shared directory. | ||
|
||
The following diagram shows the detailed components of a {prod-short} workspace. | ||
|
||
.{prod-short} workspace components | ||
image::architecture/workspace-components-with-dw.png[] | ||
|
||
In the diagram, there is one running workspaces. | ||
|
||
Use the devfile format to specify the tools and runtime applications of a {prod-short} workspace. | ||
|
19 changes: 19 additions & 0 deletions
19
modules/administration-guide/partials/con_devworkspace-operator.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
// Module included in the following assemblies: | ||
// | ||
// {prod-id-short}-workspace-controller-with-dw | ||
|
||
|
||
[id="devworkspace-operator_{context}"] | ||
= DevWorkspace Operator | ||
|
||
The DevWorkspace is an Operator that extends the {kubernetes} API to manage DevWorkspaces custom resources. It's written in Go and the API interface is automatically generated from the https://github.com/devfile/api[Devfile] specification. | ||
|
||
[cols=2*] | ||
|=== | ||
| Source code | ||
| link:https://github.com/devfile/devworkspace-operator[DevWorkspace Operator repository] | ||
|
||
| Container image | ||
| `quay.io/devfile/devworkspace-controller` | ||
|
||
|=== |