## 5 The COGNIFOG Project
### Technology Demonstrator  
The three trials above are scheduled for deployment and evaluation during 2025 with final results ready in late 2025 or early 2026. In preparation for the trials, an internal technology demonstrator has been designed to test all major technology components, evaluate their performance in different simulated conditions, and validate the overall COGNIFOG architecture. Unlike the use-case trials, the technology demonstrator, referred to as 'Quick Start', is not focused on testing via a real-world scenario, but rather on facilitating simple applications that help COGNIFOG users/administators to understand, deploy, test, and use its internal modules/building blocks. The COGNIFOG framework aims to simplify the deployment and orchestration of services across diverse infrastructures. To achieve this, it is essential to abstract as many deployment and configuration steps as possible, empowering framework users to focus on their core applications. The COGNIFOG Quick Start facilitates this by automating the deployment and configuration of key framework components. Specifically, it uses open-source orchestration technologies like Kubernetes (K8s), the industry-standard container orchestration platform, and its lightweight distribution, K3s, designed for resource-constrained environments. Additionally, some users may be interested in KubeEdge, which extends Kubernetes capabilities to the edge, enabling seamless management of edge devices. These technologies offer several advantages. K3s delivers strong performance even on low compute resources, while KubeEdge enables the management of edge devices and their interconnections without relying on the main Kubernetes control plane. However, these solutions prioritize simplifying deployment and integration in the execution environment, which may come at the expense of certain application performance metrics. The COGNIFOG framework addresses this by providing tools to design the system, verify timing behaviour and energy consumption during application execution, and redeploy as needed. The project's added value lies in leveraging the well-known K3s technology and incorporating a custom scheduler to enhance application response time and optimize energy consumption. By streamlining the setup of these foundational technologies alongside COGNIFOG's building blocks, Quick Start allows users to concentrate on developing and integrating their own value-added services and applications. To achieve such automation, Quick Start uses the following technologies:  
* Vagrant: For standalone environments, Vagrant enables the rapid provisioning of a virtualized cloud-edge system on local machines. This environment encompasses all necessary components, including K8s, K3s, KubeEdge clusters, and COGNIFOG building blocks, facilitating application and workflow validation prior to production deployment. In Quick Start, Vagrant is used to create VMs with the same base system configuration every time. * Ansible: Utilized in both standalone and distributed environments, Ansible automates infrastructure configuration, ensuring uniformity and reliability, and reducing manual intervention. * Helm charts: Serving as a Kubernetes package manager, Helm charts define, install, and manage applications within clusters. These YAML-based configurations specify application services, configurations, and dependencies. * Kubernetes manifests: These YAML or JSON files define Kubernetes resources, such as pods, services, and deployments, specifying configuration parameters for direct application to Kubernetes clusters via the kubect command. For more details on Quick Start and the overall COGNIFOG development environment, see [47]. The chosen application for the Quick Start instance reproduces a basic Smart Environment monitoring service from a Smart City. It involves environmental data acquisition and processing from publicly available weather station datasets, and object detection from open-source street camera video datasets.