GuidesChangelogDiscussions
Log In

Framework Management

Ketch implements the concept of Framework, which Platform Engineers and DevOps can use to isolate workloads across different namespaces in your cluster. You can add multiple frameworks to the same cluster.

The sections below describe how you can manage the framework 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

name

string

The framework name.

Unless you tie the framework to an existing namespace in your cluster, Ketch will create a new namespace for that framework with the name ketch-frameworkname

Required: Yes

--app-quota-limit

int

Quota limit for applications when adding it to this framework

Required: No
Default: Unlimited (-1)

--cluster-issuer

string

ClusterIssuer to obtain SSL certificates

Required: No

--ingress-class-name

string

If set, it is used as kubernetes.io/ingress.class annotations.

Required: No
Default: 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

Required: Yes

--ingress-type

string

Ingress controller type

Required: Yes

--namespace

string

The name of an existing Kubernetes namespace for this framework

Required: No
Default: If not provided, Ketch will create a namespace for the framework in your cluster. The namespace will be ketch-frameworkname

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

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.

Listing Frameworks

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

ketch framework list

Removing Framework

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

ketch framework remove FRAMEWORK_NAME

Updating Framework

The command below updates a specific Ketch framework 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

--namespace

string

Kubernetes namespace for this framework