Kedify Custom Resource Definitions
Kedify utilizes YAML-based custom resource definition (CRDs) for configuring ScaledJobs, ScaledObjects and other autoscaling parameters. These custom resources allow users to leverage all existing functionalities of KEDA as well as extend them according to their needs. Kedify and KEDA both use YAML-based customer resource definition to define and implement configuration changes.
Kedify Custom Types
Kedify provides additional custom types to enhance the functionality and customization of KEDA deployments. These types are designed to offer more control and flexibility over the scaling behavior and configuration management of Kubernetes workloads.
KedifyConfiguration
The KedifyConfiguration custom resource is used to manage the installation and configuration of KEDA and its components within a Kubernetes cluster. This resource allows users to specify various installation parameters, resource settings, and custom configurations for KEDA. It is also a source of Helm values for KEDA and KEDA HTTP Add-On. Any updates to the installation should be done via this resource.
Example KedifyConfiguration
ScalingPolicy
A scaling policy is a set of rules that allows you to perform scaling actions on targets based on triggers. For example, a cron-based trigger supports dynamic configuration of ScaledObjects and ScaledJobs based on the time and day. For more details, please see the specific documentation on ScalingPolicy.
Example ScalingPolicy
KEDA Types
At it’s core, Kedify and KEDA define and map event sources, with or without authentication as necessary, to cluster resources for scaling purposes. Depending on the type and source requirements, custom configuration definitions may include customer authentication references.
ScaledObject
A ScaledObject configuration definition maps an event source target (see also Scalers) to a specific resource in order to define autoscaling behavior.
Example ScaledObject
ScaledJob
A ScaledJob configuration definition maps an event source target (see also Scalers) to a Kubernetes Job.
Example ScaledJob
TriggerAuthentication
A TriggerAuthentication resource is used to define authentication parameters for triggers that require authentication.
Example TriggerAuthentication
ClusterTriggerAuthentication
A ClusterTriggerAuthentication resource is similar to TriggerAuthentication but is available at the cluster scope rather than the namespace scope.
Example ClusterTriggerAuthentication