Humanitec Platform Orchestrator

website·Indexed 35 days ago

https://developer.humanitec.com/

Documentation for the Humanitec Platform Orchestrator, featuring guides for developers and platform engineers on building Internal Developer Platforms. Includes detailed examples of Resource Definitions using Terraform, Template, and Container drivers, as well as Score specification examples for managing environment variables, resources, affinity, and Kubernetes pod configurations.

Tokens
336.6K
Snippets
1.3K
Records
2K
Agent score
62%

What's inside Humanitec

  1. Overview of PostgreSQL Cloud SQL Driver

    The postgres-cloudsql driver provisions a new PostgreSQL database within an existing Google Cloud SQL Postgres instance. The instance must be reachable from Humanitec IPs and configured to accept connections via the Google Cloud SQL Auth Proxy. Any workload depending on this resource will automatically have the Google Cloud SQL Auth Proxy installed as a sidecar container.
  2. Overview of newapp.io convenience domain

    The newapp.io domain is a convenience offering managed by Humanitec, intended for quick starts and testing rather than production environments. It allows users to obtain DNS records and TLS/SSL certificates under a subdomain named after their Humanitec Organization ({yourOrgId}.newapp.io). It consists of two drivers: newapp-io-dns for DNS records and newapp-io-tls for wildcard certificates.
  3. Overview of MariaDB Cloud SQL Driver

    The MariaDB Cloud SQL driver provisions a functionally equivalent MariaDB database within an existing Google Cloud SQL MySQL instance. Because Google Cloud SQL does not natively support MariaDB, this driver provides MariaDB semantics over a MySQL backend.

    Key operational details:

    • The instance must be reachable from Humanitec IPs.
    • Connections must be accepted via the Google Cloud SQL Auth Proxy.
    • Any workload depending on this mariadb resource will automatically have the Google Cloud SQL Auth Proxy installed as a sidecar container.
  4. Overview of the Template Driver

    The Template Driver is a customizable driver built into the Humanitec Operator that allows for the provisioning of any Resource Type using Go templates. It is primarily used to generate Kubernetes manifests (such as ServiceAccounts, NetworkPolicies, Ingress, or CRDs) or to compute resource outputs like IDs and names. It utilizes Go templates and the Sprig template functions, similar to Helm.
  5. Overview of the Container (builtin) Driver

    The Container (builtin) Driver executes a container image as a Kubernetes Job on a specified target cluster. It is used to provision resources by running IaC tools (e.g., OpenTofu, CloudFormation, Pulumi) within a custom image. This driver is built into the Humanitec Operator and does not require an outgoing connection to the Orchestrator SaaS.

    Requirements:

    • Minimum Humanitec Operator version: 0.28.2.
    • The container image must fulfill the Driver contract.
    • To use this driver, set the driver_type to humanitec/container-builtin in the Resource Definition.
  6. Overview of the Terraform Runner Driver

    The Terraform Runner Driver is a virtual driver that wraps the Terraform Driver. It allows developers to separate the Terraform specification (scripts, files, source) from the cluster configuration where the runner executes. It supports AKS, EKS, and GKE clusters. For generic Kubernetes clusters, use the standard Terraform Driver with a runner object and cluster_type: k8s.
  7. Overview of the Wildcard DNS Driver

    The humanitec/dns-wildcard Driver generates new unique subdomains for a specified domain. It is designed to work with a pre-existing wildcard DNS record that points to a cluster Load Balancer. Because a wildcard record can only point to a single IP, this driver is limited to environments within a single cluster. Users must also provide a static wildcard TLS certificate.
  8. Overview of the Container Runner Driver

    The Container Runner Driver provides a standardized way to run a container image in a Kubernetes cluster, commonly used for executing IaC frameworks. It wraps the Container Driver and implements a 'config pattern' to separate cluster infrastructure details from the container's operational specification.

    Requirements:

    • Target cluster must be AKS, EKS, or GKE.
    • Kubernetes version 1.29 or higher.
    • Humanitec Operator 0.3.11 or higher installed.
  9. Overview of the Humanitec IDP reference architecture

    Humanitec provides reference architectures based on real-world setups to help platform engineering teams build Internal Developer Platforms (IDPs) quickly. This specific implementation leverages the following stack:

    • Backstage: For the developer portal.
    • Humanitec Platform Orchestrator: For orchestration and resource management.
    • Score: For defining application workloads.
    • Cloud Provider: AWS, Azure, or GCP.

    The architecture focuses on 'standardization by design' and implements Dynamic Configuration Management (DCM) to reduce developer overhead regarding infrastructure and DevOps tasks.

  10. Overview of Dependent Resources

    Dependent Resources are resources that a Workload depends on. They are categorized into two types:

    • Shared Resources: Available to all Workloads within a specific Application Environment (e.g., a shared database or domain name).
    • Private Resources: Available only to a single Workload, allowing for clear ownership of the resource (e.g., a workload-specific database).
  11. Overview of the Humanitec Platform Orchestrator MCP server

    The Model Context Protocol (MCP) server allows developers to access Humanitec Platform Orchestrator product knowledge directly within their AI coding tools. It is powered by kapa.ai and provides the same knowledge base as the interactive 'Ask AI' widget in the developer docs. Note that the server does not have access to data within your specific Orchestrator organization; it provides general product knowledge which your local AI tool can then combine with your project's contextual data.
  12. Overview of DNS and TLS Resources in Humanitec

    In Humanitec, DNS names are represented as Resources of type dns and TLS certificates as Resources of type tls-cert. By default, Humanitec automatically generates dynamic DNS names under the .newapp.io domain with valid SSL certificates. These are typically used with Kubernetes Ingress objects to map external Load Balancer requests to internal workloads.