Component C8 – k8or Portal

By Raj Marni. March 23, 2025. Revised. Version: 0.1.02

1. Overview

K8or OpsBoard (C8) is not just the user-facing web application—it is the orchestration hub that coordinates image uploads, metadata collection, and the initiation of downstream processes. In this layer, we detail its internal modules, communication patterns, and how it interacts with surrounding components.

Orbit Component C8 Diagram

At Layer 3, Component C8 – OpsBoard is an orchestration hub that:

  • Houses distinct internal modules for UI, API handling, file management, and service integration.

  • Interacts closely with adjacent components—C4 for build information, C12 for manifest generation, C32 for logging and tracking, and C56 for extended orchestration functions.

  • Utilizes modern, secure communication protocols to ensure that user actions translate seamlessly into downstream processing steps.


2. Internal Architecture of C8

2.1 Core Modules

  • User Interface (UI) Module

    • Frontend Framework: Implements a modern web interface (Angular) for image uploads and metadata input.

    • Real-Time Feedback: Displays upload progress, validation messages, and notifications.

  • API Gateway & Service Layer

    • RESTful Endpoints: Exposes APIs for image submission, status queries, and metadata validation.

    • Session & Authentication Manager: Integrates with identity services to authenticate users and maintain secure sessions.

  • Upload & Validation Engine

    • File Handling: Manages file buffering, chunking (if needed), and local validation (file size, type, and resolution).

    • Error Management: Detects and handles issues and providing error messages, if any.

  • Integration & Orchestration Module

    • Service Connectors: Manages calls to downstream components such as the Manifestor (C12), Image Harbor (C16), and Viewport (C32).

    • Event Dispatcher: Routes events and messages to appropriate services, both synchronously (via HTTP/REST) and asynchronously (via message queues or event buses).


3. Inter-Process Communication & External Interfaces

3.1 Interactions with Surrounding Components

  • Connection C4C8-1 (with Component C4: Docker Image Build Process)

    • Purpose:

      • Integrates build status or artifact references from C4 into the Portal.

      • Allows users to select a built image or receive notifications when a new Docker image is ready.

    • Communication Pattern:

      • A RESTful API call or webhook that passes build information from C4 to C8, so the OpsBoard can display build logs or trigger subsequent processing.

  • Connection C8C12-1 (with Component C12: Manifestor)

    • Purpose:

      • Transmits image metadata and configuration parameters collected via the Portal to C12 for Helm chart generation.

    • Communication Pattern:

      • Synchronous REST API calls that package the user’s data into a well-defined request.

      • Returns a confirmation or error message that the Manifestor has accepted and is processing the request.

  • Connection C8C32-1 (with Component C32: Viewport)

    • Purpose:

      • Sends detailed logs, status updates, and user interaction metrics to C32 for tracking and auditing purposes.

      • Supports querying of historical data to display deployment lifecycle information.

    • Communication Pattern:

      • Asynchronous data pushes and periodic batch updates via an internal event bus/API calls.

  • Connection C8C56-1 (with Component C56)

    • Purpose:

      • This connection handles supplementary functions such as notifications, additional orchestration commands, and real-time monitoring enhancements with Component C56 - SyncMaster.

    • Communication Pattern:

      • Implemented as RESTful endpoints for synchronous interactions when immediate response is required.


4. Technology & Protocols

  • API Communication:

    • Primarily uses REST/HTTP for synchronous interactions, with JSON as the data exchange format.

    • For asynchronous processing, message queues and event-driven frameworks using NATs.

  • Security & Authentication:

    • TLS encryption for all external communications.

    • Token-based authentication (JWT) to ensure secure access between C8 and its neighboring components.

  • Data Validation & Error Handling:

    • Built-in validation routines ensure that inputs meet strict criteria before being forwarded to downstream services.

    • Robust logging and error reporting integrated with centralized monitoring solutions.

Last updated