Kubernetes Ingestor Plugin#
The Kubernetes Ingestor plugin is a powerful backend plugin for Backstage that automatically creates catalog entities from Kubernetes resources. It provides comprehensive support for standard Kubernetes workloads, custom resources, and Crossplane resources, making it easy to maintain an up-to-date catalog of your infrastructure and applications.
Features#
- Automatic Resource Discovery: Ingest standard Kubernetes workloads automatically
- Custom Resource Support: Add custom GVKs for ingestion
- Crossplane Integration: Auto-ingest Crossplane claims and XRDs
- Template Generation: Create templates for Crossplane XRDs
- API Entity Creation: Generate API entities for XRDs
- Relationship Mapping: Track dependencies between claims and APIs
- Flexible Configuration: Customize ingestion behavior and mapping
- Annotation Support: Rich annotation system for entity customization
Plugin Components#
Backend Plugin#
The plugin provides backend functionality for:
- Resource discovery and ingestion
- Template generation
- API entity creation
- Relationship management
Learn more about the backend plugin
Resource Types#
Standard Workloads#
- Deployments
- StatefulSets
- DaemonSets
- Jobs
- CronJobs
- And more...
Crossplane Resources#
- Claims (v1)
- XRs (v2)
- XRDs
- APIs
- Dependencies
Custom Resources#
- User-defined GVKs
- Custom workload types
- Specific resource kinds
Documentation Structure#
Annotations#
The plugin supports a rich set of annotations for customizing entity creation:
General Annotations:
terasky.backstage.io/add-to-catalog: true/false
terasky.backstage.io/exclude-from-catalog: true/false
terasky.backstage.io/system: string
terasky.backstage.io/backstage-namespace: string
terasky.backstage.io/owner: string
Namespace Annotations:
terasky.backstage.io/system-type: string
terasky.backstage.io/domain: string
Workload Resource Annotations:
terasky.backstage.io/source-code-repo-url: string
terasky.backstage.io/source-branch: string
terasky.backstage.io/techdocs-path: string
terasky.backstage.io/kubernetes-label-selector: string
terasky.backstage.io/component-type: string
terasky.backstage.io/lifecycle: string
terasky.backstage.io/dependsOn: string
terasky.backstage.io/providesApis: string
terasky.backstage.io/consumesApis: string
terasky.backstage.io/component-annotations: string
terasky.backstage.io/links: string
Getting Started#
To get started with the Kubernetes Ingestor plugin:
1. Install the backend plugin
2. Configure RBAC settings
3. Set up ingestion rules
4. Configure template generation
5. Start discovering resources
For detailed installation and configuration instructions, refer to the backend documentation linked above.