Detailed text description: Landscape and Workspace architecture
This page provides a long description of the architecture diagram used in the Landscapes and Workspaces article.
Overview
The diagram presents two main runtime zones that share infrastructure:
- Workspace deployment area on the left.
- Landscape deployment area on the right.
Main components
- Workspace deployment:
- Contains a single reactive instance.
- That instance powers the Workspace Toolkit used by developers.
- Landscape deployment:
- Contains multiple workload types.
- Includes a reactive service named foo with three replicas.
- Includes a reactive docker image service named bar with two replicas.
- Includes one managed service.
- Includes one Helm/Kubernetes workload.
- Includes the Workspace Router service with two replicas.
- Workspace Router:
- Runs as a service inside the landscape deployment, above the other services.
- Is marked as the Landscape gateway.
- Receives all incoming requests from outside the landscape.
- Routes traffic by path to services or custom targets.
- Network file system:
- Shared across the Workspace Toolkit and all reactive services.
- Represents common persistent storage.
Traffic and routing flow
- Users send traffic from either:
- A custom domain using the pattern customdomain.com/*.
- The workspace development domain.
-
Requests first reach the Workspace Router, which is the Landscape gateway.
-
The router forwards requests based on path mapping, including examples:
- /foo to service foo.
- /bar to service bar.
- /dashboard to the Helm/Kubernetes workload, configured as a custom target.
- Services within the landscape communicate over private internal hostnames.
Developer interaction
The developer interacts through the Codesphere UI and manages the workspace and toolkit side while the landscape workloads run separately on dedicated compute resources.