You are viewing documentation for Cozystack v1, which is currently in beta. For the latest stable version, see the v0 documentation.

Cozystack Components Reference

Full reference for Cozystack components.

Overwriting Component Parameters

You might want to override specific options for the components. To achieve this, specify values in the spec.components section of the Platform Package.

For example, if you want to overwrite k8sServiceHost and k8sServicePort for cilium, take a look at its values.yaml file.

Then specify these options in the networking component of your Platform Package:

apiVersion: cozystack.io/v1alpha1
kind: Package
metadata:
  name: cozystack.cozystack-platform
spec:
  variant: distro-full
  components:
    platform:
      values:
        networking:
          podCIDR: "10.244.0.0/16"
          serviceCIDR: "10.96.0.0/16"
    networking:
      values:
        cilium:
          k8sServiceHost: 11.22.33.44
          k8sServicePort: 6443

Enabling and Disabling Components

Bundles have optional components that need to be explicitly enabled (included) in the installation. Regular bundle components can, on the other hand, be disabled (excluded) from the installation, when you don’t need them.

Use bundles.enabledPackages and bundles.disabledPackages in the Platform Package values. For example, installing Cozystack in Hetzner requires swapping default load balancer, MetalLB, with one made specifically for Hetzner, called RobotLB:

apiVersion: cozystack.io/v1alpha1
kind: Package
metadata:
  name: cozystack.cozystack-platform
spec:
  variant: isp-full
  components:
    platform:
      values:
        bundles:
          disabledPackages:
            - metallb
          enabledPackages:
            - hetzner-robotlb
        # rest of the config

Disabling components must be done before installing Cozystack. Applying updated configuration with disabledPackages will not remove components that are already installed. To remove already installed components, delete the Helm release manually using this command:

kubectl delete hr -n <namespace> <component>