Concepts and Terminology
Kubeark operates on two fundamental perspectives: the Kubernetes perspective and the Infrastructure perspective.
In the Kubernetes perspective, Kubeark enables users to define and manage clusters, templates, deployments, and other Kubernetes-related entities. This aspect focuses on the orchestration and operation of containerized applications.
Conversely, the Infrastructure perspective is designed to assist customers in managing their underlying infrastructure. It includes features for defining infrastructure templates, managing infrastructure deployments, and handling other infrastructure-related tasks. This dual approach allows Kubeark to provide a comprehensive solution for both application and infrastructure management.
Kubeark leverages the power of templates to make both deployment and configuration tasks easier and more efficient. Within the Kubeark ecosystem, "templates" refer to predefined configurations or scripts that serve as blueprints for deploying and managing specific components or services. These templates are designed to standardize and streamline the processes involved in setting up, configuring, and maintaining various parts of an IT environment.
Considerign the two perspectives described in the beginning of this section, the Kubeark templates come in two flavors: Kubernetes templates and Infrastructure templates, the latter being centered around Terraform. While the core idea behind both types of templates is the same β a reusable and modifiable configuration file to streamline deployment tasks βeach serves a distinct purpose.
Kubernetes templates are designed to facilitate the quick and smooth deployment and orchestration of containerized applications within a Kubernetes environment. On the flip side, Infrastructure templates function more like scripts or blueprints, aiding in the definition and provisioning of various infrastructure resources. Let's see the differences between the two:
ο»ΏKubernetes templates are purpose-built for the Kubernetes ecosystem. Through them, Kubeark enables users to seamlessly deploy and orchestrate containerized applications. By leveraging the power and scalability of Kubernetes, these templates assist in achieving efficient resource allocation, dynamic scaling, and robust application management within a Kubernetes environment.
Beyond the realm of Kubernetes, the Infrastructure templates expand deep into the broader architecture of infrastructure management and provisioning. These templates, specifically tailored for Terraform, act as scripts or blueprints for defining and provisioning infrastructure resources. They cater to tasks like provisioning virtual machines, setting up networks, orchestrating storage solutions, and more.
With Terraform's declarative language and Infrastructure-as-Code (IaC) capabilities, these templates ensure that infrastructure is consistently and reliably provisioned, managed, and scaled.
This dual approach enables you to efficiently manage your deployments whether they are application-centric or infrastructure-centric, providing flexibility and ease in orchestrating your entire technology stack.
ο»ΏWorkspaces in Kubeark are a key organizational concept, designed to streamline the management of resources and permissions. They serve as a container for grouping related automation components.
By using Workspaces, users can efficiently organize their resources based on projects, teams, or any other logical grouping, facilitating easier access and management. This structure enhances collaboration among team members and also ensures better control over access and resource allocation.
Workspaces simplify the complexity of managing diverse resources, making it more manageable and intuitive for users to navigate and operate within the Kubeark environment.
Detailed information here: Workspaceο»Ώο»Ώ
ο»ΏWorkflows in Kubeark represent a powerful automation feature within each Workspace. These are essentially canvases where users can design and execute a series of automated tasks and processes.
Workflows allow for the orchestration of complex operations, ranging from deployment strategies to infrastructure management, all within the context of a Workspace. They enable users to automate repetitive tasks, enforce consistency in operations, and integrate various stages of the development and deployment lifecycle.
By leveraging Workflows, teams can streamline their processes, reduce the potential for human error, and ensure a more efficient and reliable operational environment within their designated Workspaces.
Detailed information here: Workflowsο»Ώο»Ώ
ο»ΏForms in Kubeark are interactive components used within Workspaces and Workflows to capture user input and configurations. They provide a user-friendly interface for entering data, setting parameters, and making selections that influence the behavior of Workflows and other Kubeark functions.
Forms simplify the process of configuring complex tasks by presenting options in an easily understandable format, ensuring that users can input the necessary information without requiring deep technical knowledge of the underlying systems.
This feature enhances the accessibility and efficiency of Kubeark, making it more approachable for users of varying technical expertise.
Detailed information here: Formsο»Ώο»Ώ
ο»ΏFunctions in Kubeark refer to discrete, reusable operations or actions that can be integrated into Workflows. They are essentially building blocks designed to perform specific tasks within the automation process.
Functions can range from simple actions like sending notifications to more complex operations like deploying a cluster or updating a database.
The key advantage of Functions is their modularity and reusability, allowing users to create more efficient and maintainable Workflows.
By incorporating these Functions into different Workflows, users can optimize their automation processes, reduce redundancy, and ensure consistency across various tasks and projects within Kubeark.
Detailed information here: Functionsο»Ώο»Ώ
ο»ΏVault in Kubeark is a secure storage feature for managing sensitive data such as credentials, tokens, and keys. It's designed to enhance security by providing a centralized and encrypted location for storing confidential information.
Vault ensures that sensitive data is not exposed in scripts or configurations, reducing the risk of unauthorized access or breaches. It supports access controls and audit logs, allowing administrators to control who can access the stored information and track usage.
This feature is key for maintaining security best practices within Kubeark, especially when managing infrastructure and applications that require high levels of data protection and compliance. Vault's integration into the Kubeark platform ensures secure data management, making it more convenient and reliable for users.
In Kubeark, the Vault comes in two flavors:
ο»Ώ