-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #23 from ksctl/feat-add-versioning-based-docs
proposal: added versioning
- Loading branch information
Showing
63 changed files
with
1,120 additions
and
3 deletions.
There are no files selected for viewing
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
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
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
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,10 @@ | ||
--- | ||
title: Develop Documentation | ||
linkTitle: Develop | ||
description: develop branch documentation | ||
weight: 20 | ||
--- | ||
|
||
{{% pageinfo %}} | ||
This is the `main` branch documentation | ||
{{% /pageinfo %}} |
File renamed without changes.
File renamed without changes.
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,9 @@ | ||
--- | ||
title: Cloud Provider | ||
weight: 4 | ||
description: > | ||
Info about the cloud providers available | ||
--- | ||
{{% pageinfo %}} | ||
This Page includes more info about different cloud providers | ||
{{% /pageinfo %}} |
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,15 @@ | ||
--- | ||
title: Amazon Web Services | ||
description: > | ||
Amazon Web Services | ||
categories: [Cloud Provider] | ||
tags: [aws, ha, managed, core] | ||
--- | ||
{{% pageinfo %}} | ||
Aws support for HA and Managed Clusters | ||
{{% /pageinfo %}} | ||
|
||
Support for aws provider is added. | ||
Supported functionality | ||
- [ ] Managed EKS | ||
- [x] Self-managed HA cluster with k3s and kubeadm |
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,143 @@ | ||
--- | ||
title: Azure | ||
description: > | ||
Azure Cloud Provider | ||
categories: [Cloud Provider] | ||
tags: [azure, ha, managed, core] | ||
--- | ||
|
||
{{% pageinfo %}} | ||
Azure support for HA and Managed Clusters | ||
{{% /pageinfo %}} | ||
|
||
|
||
{{% alert color="warning" title="Caution" %}} | ||
we need credentials to access clusters | ||
|
||
these are confidential information so shouldn't be shared with anyone | ||
{{% /alert %}} | ||
|
||
|
||
### Azure Subscription ID | ||
|
||
subscription id using your subscription | ||
|
||
![azure-subscription](/img/azure/azure-subs-id.png) | ||
|
||
|
||
### Azure Tenant ID | ||
|
||
#### Azure Dashboard | ||
|
||
Azure Dashboard contains all the credentials required | ||
|
||
|
||
![azure-dashboard](/img/azure/azure-dashboard.png) | ||
|
||
lets get the tenant id from the Azure | ||
|
||
![](/img/azure/azure-tenantid.png) | ||
|
||
|
||
|
||
### Azure Client ID | ||
|
||
it represents the id of app created | ||
|
||
|
||
![](/img/azure/azure-app-reg.png) | ||
|
||
![](/img/azure/azure-create-app-reg.png) | ||
|
||
![](/img/azure/azure-clientid.png) | ||
|
||
|
||
|
||
### Azure Client Secret | ||
|
||
it represents the secret associated with the app in order to use it | ||
|
||
![create app secret](/img/azure/azure-client-secret1.png) | ||
|
||
|
||
![after-click](/img/azure/azure-client-secret.png) | ||
|
||
|
||
![copy-secret](/img/azure/azure-client-secret2.png) | ||
|
||
### Assign Role to your app | ||
|
||
head over to subscriptions page and click **Access Control (IAM)** | ||
select the **Role Assignment** and then click **Add > Add Role Assignment** | ||
create a new role and when selecting the identity specify the name of the app | ||
Here you can customize the role this app has | ||
|
||
![role-assign-app](/img/azure/azure-role-app.png) | ||
|
||
|
||
## How these credentials are used by ksctl | ||
|
||
|
||
1. Environment Variables | ||
|
||
```bash | ||
export AZURE_TENANT_ID="" | ||
export AZURE_SUBSCRIPTION_ID="" | ||
export AZURE_CLIENT_ID="" | ||
export AZURE_CLIENT_SECRET="" | ||
``` | ||
|
||
2. Using command line | ||
|
||
```bash | ||
ksctl cred | ||
``` | ||
|
||
## Current Features | ||
|
||
### Cluster features | ||
#### Highly Available cluster | ||
clusters which are managed by the user not by cloud provider | ||
|
||
using K3s kubernetes distribution which is lightweight | ||
|
||
custom components being used | ||
- Etcd database VM | ||
- HAProxy loadbalancer VM for controlplane nodes | ||
- controlplane VMs | ||
- workerplane VMs | ||
|
||
#### Managed Cluster | ||
clusters which are managed by the cloud provider | ||
|
||
### Other capabilities | ||
|
||
#### Create, Update, Delete, Switch | ||
|
||
{{% alert title="Update the cluster infrastructure" %}} | ||
|
||
**Managed cluster**: till now it's not supported | ||
|
||
**HA cluster** | ||
- addition and deletion of new workerplane node | ||
- SSH access to each cluster node (DB, LB, Controplane, WorkerPlane) _Public Access_, secured by private key | ||
|
||
{{% /alert %}} | ||
|
||
{{% alert color="success" title="Managed Cluster" %}} | ||
|
||
<video width="360" height="202" controls> | ||
<source src="/videos/ksctl-azure-managed.mp4" type="video/mp4" /> | ||
Your browser does not support the video tag. | ||
</video> | ||
{{% /alert %}} | ||
|
||
|
||
{{% alert color="success" title="Highly Available Cluster" %}} | ||
|
||
<video width="360" height="202" controls> | ||
<source src="/videos/ksctl-azure-ha.mp4" type="video/mp4" /> | ||
Your browser does not support the video tag. | ||
</video> | ||
{{% /alert %}} | ||
|
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,90 @@ | ||
--- | ||
title: Civo | ||
description: > | ||
Civo Cloud Provider | ||
categories: [Cloud Provider] | ||
tags: [civo, ha, managed, core] | ||
--- | ||
|
||
{{% pageinfo %}} | ||
Civo support for HA and Managed Clusters | ||
{{% /pageinfo %}} | ||
|
||
{{% alert color="warning" title="Caution" %}} | ||
we need credentials to access clusters | ||
|
||
these are confidential information so shouldn't be shared with anyone | ||
{{% /alert %}} | ||
|
||
|
||
## Getting credentials | ||
|
||
### under settings look for the profile | ||
![](/img/civo/civo-settings.png) | ||
![](/img/civo/profile.png) | ||
|
||
### copy the credentials | ||
![](/img/civo/security-api.png) | ||
|
||
## How to add credentials to ksctl | ||
|
||
1. Environment Variables | ||
|
||
```bash | ||
export CIVO_TOKEN="" | ||
``` | ||
|
||
2. Using command line | ||
|
||
```bash | ||
ksctl cred | ||
``` | ||
|
||
## Current Features | ||
|
||
### Cluster features | ||
#### Highly Available cluster | ||
clusters which are managed by the user not by cloud provider | ||
|
||
> using K3s kubernetes distribution which is lightweight | ||
custom components being used | ||
- Etcd database VM | ||
- HAProxy loadbalancer instance for controlplane nodes | ||
- controlplane instances | ||
- workerplane instances | ||
|
||
#### Managed Cluster | ||
clusters which are managed by the cloud provider | ||
|
||
### Other capabilities | ||
|
||
#### Create, Update, Delete, Switch | ||
|
||
{{% alert title="Update the cluster infrastructure" %}} | ||
|
||
**Managed cluster**: till now it's not supported | ||
|
||
**HA cluster** | ||
- addition and deletion of new workerplane node | ||
- SSH access to each cluster node (DB, LB, Controplane) _Public Access_, secured by private key | ||
- SSH access to each workplane _Private Access_ via local network, secured by private key | ||
{{% /alert %}} | ||
|
||
{{% alert color="success" title="Managed Cluster" %}} | ||
|
||
<video width="360" height="202" controls> | ||
<source src="/videos/ksctl-civo-managed.mp4" type="video/mp4" /> | ||
Your browser does not support the video tag. | ||
</video> | ||
{{% /alert %}} | ||
|
||
|
||
{{% alert color="success" title="Highly Available Cluster" %}} | ||
|
||
<video width="360" height="202" controls> | ||
<source src="/videos/ksctl-civo-ha.mp4" type="video/mp4" /> | ||
Your browser does not support the video tag. | ||
</video> | ||
{{% /alert %}} | ||
|
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,17 @@ | ||
--- | ||
title: Google Cloud Platform | ||
description: > | ||
Google Cloud Platform | ||
categories: [Cloud Provider] | ||
tags: [aws, ha, managed, core] | ||
--- | ||
|
||
{{% pageinfo %}} | ||
Gcp support for HA and Managed Clusters | ||
{{% /pageinfo %}} | ||
|
||
{{% alert color="warning" title="Caution" %}} | ||
we need credentials to access clusters | ||
|
||
these are confidential information so shouldn't be shared with anyone | ||
{{% /alert %}} |
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 @@ | ||
--- | ||
title: Local | ||
description: > | ||
Local Provider | ||
categories: [Cloud Provider] | ||
tags: [docker, kind, managed,core] | ||
--- | ||
|
||
{{% pageinfo %}} | ||
It creates cluster on the host machine utilizing kind | ||
{{% /pageinfo %}} | ||
|
||
{{% alert title="Note" %}}**Prequisites**: Docker{{% /alert %}} | ||
|
||
|
||
## Current features | ||
|
||
currently using Kind `Kubernetes in Docker` | ||
|
||
{{< alert color="warning" title="About HA Cluster" >}}local system are constrained to fewer CPUs and memory so no HA cluster{{< /alert >}} |
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,43 @@ | ||
--- | ||
title: Concepts | ||
description: > | ||
Concepts around ksctl core | ||
--- | ||
|
||
{{% pageinfo %}} | ||
This section will help you to learn about the underlying system of Ksctl. It will help you to obtain a deeper understanding of how Ksctl works. | ||
{{% /pageinfo %}} | ||
|
||
## Sequence diagrams for 2 major operations | ||
|
||
### Create Cloud-Managed Clusters | ||
```mermaid | ||
sequenceDiagram | ||
participant cm as Manager Cluster Managed | ||
participant cc as Cloud Controller | ||
participant kc as Ksctl Kubernetes Controller | ||
cm->>cc: transfers specs from user or machine | ||
cc->>cc: to create the cloud infra (network, subnet, firewall, cluster) | ||
cc->>cm: 'kubeconfig' and other cluster access to the state | ||
cm->>kc: shares 'kubeconfig' | ||
kc->>kc: installs kubectl agent, stateimporter and controllers | ||
kc->>cm: status of creation | ||
``` | ||
|
||
### Create Self-Managed HA clusters | ||
```mermaid | ||
sequenceDiagram | ||
participant csm as Manager Cluster Self-Managed | ||
participant cc as Cloud Controller | ||
participant bc as Bootstrap Controller | ||
participant kc as Ksctl Kubernetes Controller | ||
csm->>cc: transfers specs from user or machine | ||
cc->>cc: to create the cloud infra (network, subnet, firewall, vms) | ||
cc->>csm: return state to be used by BootstrapController | ||
csm->>bc: transfers infra state like ssh key, pub IPs, etc | ||
bc->>bc: bootstrap the infra by either (k3s or kubeadm) | ||
bc->>csm: 'kubeconfig' and other cluster access to the state | ||
csm->>kc: shares 'kubeconfig' | ||
kc->>kc: installs kubectl agent, stateimporter and controllers | ||
kc->>csm: status of creation | ||
``` |
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,10 @@ | ||
--- | ||
title: Cloud Controller | ||
description: > | ||
The Component of Ksctl responsible for creating and managing clusters for different Cloud platforms. | ||
categories: [Examples] | ||
--- | ||
|
||
{{% pageinfo %}} | ||
It is responsible for controlling the sequence of tasks for every cloud provider to be executed | ||
{{% /pageinfo %}} |
11 changes: 11 additions & 0 deletions
11
content/en/docs/stable/Concepts/ksctl distro controller.md
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,11 @@ | ||
--- | ||
title: Distribution Controller | ||
description: > | ||
The Component of Ksctl responsible for selecting the type of Bootstrap solution (Kubeadm or K3s). | ||
categories: [Examples] | ||
--- | ||
|
||
|
||
{{% pageinfo %}} | ||
It is responsible for controlling the execution sequence for configuring Cloud Resources wrt to the Kubernetes distribution choosen | ||
{{% /pageinfo %}} |
Oops, something went wrong.