Framework Management

Ketch implements the concept of Framework, which Platform Engineers and DevOps can use to isolate workloads from different teams, resources assigned to applications, and more. You can add multiple pools to the same cluster.

The sections below describes how you can manage the pool lifecycle within Ketch.

Creating Framework

You can add multiple Frameworks to the same cluster, and this can be done through the framework add command as described below:

ketch framework add FRAMEWORK_NAME [flags]

Flags:

Flag

Type

Description

--app-quota-limit

int

Quota limit for applications when adding it to this pool (default -1)

--cluster-issuer

string

ClusterIssuer to obtain SSL certificates

--ingress-class-name

string

If set, it is used as kubernetes.io/ingress.class annotations. Ketch uses "istio" class name for istio ingress controller, if class name is not specified

--ingress-service-endpoint

string

An IP address or DNS name of the ingress controller's Service

--ingress-type

string

Ingress controller type: traefik or istio (default traefik)

--namespace

string

Kubernetes namespace for this pool

Below is an example of the command to create a pool:

ketch framework add dev --ingress-service-endpoint 104.198.65.19 --ingress-type istio

๐Ÿ‘

Ingress Service Endpoint

You can find your ingress endpoint by running the command below:

kubectl get services -n istio-system

Note that the command above uses istio-system as the namespace. You should replace it with the namespace where your ingress controller (Traefik or Istio) is installed.

The command above will list the available services, including the External-IP for your ingress gateway.

๐Ÿ“˜

Ingress Type

Currently, Ketch supports Istio and Traefik as ingress controllers. As part of Ketch's roadmap, additional controllers will be added soon.

Listing Frameworks

The command below lists all available Ketch pools in the cluster:

ketch framework list

Removing Framework

The command below removes a specific Ketch pool from the cluster:

ketch framework remove FRAMEWORK_NAME

Updating Framework

The command below updates a specific Ketch pool in the cluster:

ketch framework update FRAMEWORK_NAME [flags]

Flags:

Flag

Type

Description

--app-quota-limit

int

Quota limit for applications when adding it to this framework (default -1)

--cluster-issuer

string

ClusterIssuer to obtain SSL certificates

--ingress-class-name

string

If set, it is used as kubernetes.io/ingress.class annotations. Ketch uses "istio" class name for istio ingress controller, if class name is not specified

--ingress-service-endpoint

string

An IP address or DNS name of the ingress controller's Service

--ingress-type

string

Ingress controller type: traefik or istio (default traefik)

--namespace

string

Kubernetes namespace for this framework