Skip to content

    Namespaces

    This page describes how to configure namespaces in the context of Kubernetes .

    A namespace is a way to divide cluster resources between multiple users (via resource quota) or between multiple projects (via resource isolation).

    Kannika Armory identifies two namespaces:

    It is possible to use the same namespace for the platform and the resources. However, it is advised to create a separate namespace for the resources for better isolation and management.

    To set a separate namespace for the resources, use the global.kubernetes.namespace value in the Helm installation:

    Terminal window
    $ helm install kannika oci://quay.io/kannika/charts/kannika \
    --create-namespace \
    --namespace kannika-system \
    --version 0.12.0 \
    --set global.kubernetes.namespace=kannika-data

    In this example:

    • The system namespace is kannika-system
    • The resource namespace is kannika-data

    Resource namespace

    The “resource namespace” is where the Kannika Armory resources managed by the platform live.

    Kannika Armory resources will generate and look up other resources in the same namespace. For example, when running a Backup, a StatefulSet will be created in the same namespace as the Backup.

    The platform can be configured to watch and create resources in a certain namespace. By default, Armory will use the same namespace as the Helm’s release namespace.

    This namespace must already exist in the Kubernetes cluster.

    Terminal window
    # Create the namespace where the resources will live
    $ kubectl create namespace kannika-data

    To configure the namespace, set the global.kubernetes.namespace value in the Helm installation:

    values.yaml
    global:
    kubernetes:
    namespace: "kannika-data"

    In this example, the platform will watch and create resources in the kannika-data namespace.

    System namespace

    The “system namespace” is where the platform is installed (e.g. kannika-system). This is set by the --namespace flag when installing the platform using Helm.

    Terminal window
    $ helm install kannika oci://quay.io/kannika/charts/kannika \
    --create-namespace \
    --namespace kannika-system \
    --version 0.12.0

    In this example, the platform will be installed in the kannika-system namespace.

    Multiple namespaces

    Multiple namespaces are not fully supported yet at the moment. Please check the Roadmap for more information.