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 |
Updated over 1 year ago