Skip to content

update: Index page for cost saving feature #649

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

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
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
28 changes: 4 additions & 24 deletions platform/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,22 +24,22 @@

vCluster Platform is installed into, and can connect to, as many physical Kubernetes clusters as you need to manage. vCluster Platform can then be used to manage workloads in each of the physical clusters, deploying spaces, virtual clusters, and apps as needed. vCluster Platform provides granular role based access control (RBAC) allowing for vCluster Platform administrators to limit which users and teams have access to which clusters, as well as much more granular control at the project, space, and virtual cluster levels. Read more about vCluster Platform integration with physical clusters in the [Clusters section ](understand/what-are-clusters.mdx).

### Virtual Clusters

Check warning on line 27 in platform/index.mdx

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.Headings] 'Virtual Clusters' should use sentence-style capitalization. Raw Output: {"message": "[Google.Headings] 'Virtual Clusters' should use sentence-style capitalization.", "location": {"path": "platform/index.mdx", "range": {"start": {"line": 27, "column": 5}}}, "severity": "WARNING"}

Virtual clusters are _virtual_ Kubernetes clusters. These virtual clusters run inside a namespace within the "parent" or "host" physical cluster, thereby allowing administrators to effectively create many Kubernetes instance in a single instance -- ideal for development, testing, and even production workloads. See the [Virtual Clusters section](understand/what-are-virtual-clusters.mdx) for details.

### Apps

Apps allow users to define applications that users can then be empowered to deploy in clusters, spaces, and virtual clusters they have appropriate access to. The idea here is nothing new, however, vCluster Platform's Apps interface allows for easily packaging applications, and critically, exposing parameters that users can then select or input at deployment time. Apps can be specified via Kubernetes Manifests,
bash scripts, helm charts, etc. See the [Apps section](understand/what-are-apps.mdx), and be sure to learn about [versioning](administer/templates/advanced/versioning.mdx) and [parameters](administer/templates/advanced/parameters.mdx).

Check failure on line 34 in platform/index.mdx

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Vale.Terms] Use 'Helm' instead of 'helm'. Raw Output: {"message": "[Vale.Terms] Use 'Helm' instead of 'helm'.", "location": {"path": "platform/index.mdx", "range": {"start": {"line": 34, "column": 15}}}, "severity": "ERROR"}

Check warning on line 34 in platform/index.mdx

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Loft.capitalize-helm-project] 'Helm' should be capitalized when referring to the project. Raw Output: {"message": "[Loft.capitalize-helm-project] 'Helm' should be capitalized when referring to the project.", "location": {"path": "platform/index.mdx", "range": {"start": {"line": 34, "column": 15}}}, "severity": "WARNING"}

### Cost Reduction Tools

Check warning on line 36 in platform/index.mdx

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.Headings] 'Cost Reduction Tools' should use sentence-style capitalization. Raw Output: {"message": "[Google.Headings] 'Cost Reduction Tools' should use sentence-style capitalization.", "location": {"path": "platform/index.mdx", "range": {"start": {"line": 36, "column": 5}}}, "severity": "WARNING"}

vCluster Platform provides features to reduce Kubernetes costs.

- Sleep mode
- Sleep Mode

Put Kubernetes namespaces to sleep. vCluster Platform sets `replicas: 0` for all replica-controlled resources such as `Deployments` and `StatefulSets`. This means that Kubernetes will delete all pods but the entire configuration of resources within the namespace is still there. Sleep mode can be:

Check warning on line 42 in platform/index.mdx

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.Will] Avoid using 'will'. Raw Output: {"message": "[Google.Will] Avoid using 'will'.", "location": {"path": "platform/index.mdx", "range": {"start": {"line": 42, "column": 182}}}, "severity": "WARNING"}

- Invoked manually
- Triggered by an inactivity timeout (no one has run a `kubectl` command in this namespace for X
Expand All @@ -47,28 +47,8 @@
- Scheduled using a CRON syntax


- Auto delete inactive virtual clusters
- Auto Delete for Virtual Clusters

Configure an auto-delete for virtual clusters that have not been used for a
certain period of time (inactivity). See [Sleep Mode](use-platform/namespaces/key-features/sleep-mode.mdx) for details.
Configure an auto-delete for virtual clusters that have not been used for a certain period of time (inactivity). [Inactivity Detection](use-platform/virtual-clusters/key-features/sleep-mode)
tracks activity via API requests to determine sleep or deletion eligibility. This helps ensure that unused resources do not continue to incur costs. See [Sleep Mode](use-platform/namespaces/key-features/sleep-mode.mdx) for details.


- Inactivity Detection

All requests that are made through vCluster Platform count as activity in the namespace.

```mermaid
flowchart LR;
kubectl("<code>kubectl get pod my-pod</code>") --> Platform

Platform("vCluster Platform")

Platform --> Cluster("Connected Cluster <br/> Kubernetes API Server")
Cluster --> Pod("<pre>apiVersion: v1\nkind: Pod\nmetadata:\n name: my-pod\n...</pre>")

class kubectl code
class Pod yaml
class Platform platform
```

If your kube-context points to vCluster Platform's API server as a proxy before the actual connected cluster's API server, every `kubectl` request will be an activity and reset the inactivity timeout.
Loading