What is Kubebuilder
Kubebuilder is an SDK for rapidly building and publishing Kubernetes APIs in Go.It builds on top of the canonical techniques used to build the core Kubernetes APIsto provide simple abstractions that reduce boilerplate and toil.
Similar to web development frameworks such as Ruby on Rails and SpringBoot,Kubebuilder increases velocity and reduces the complexity managed bydevelopers.
Included in Kubebuilder:
- Initializing projects with a base structure including
- Go package dependencies at canonical versions.
- main program entry point
- Makefile for formatting, generating, testing and building go
- Dockerfile for building container images
- Scaffolding APIs with
- Resource (Model) definition
- Controller implementation
- Integration tests for Resource and Controller
- CRD definition
- Simple abstractions for implementing APIs
- Controllers
- Resource Schema Validation
- Validating Webhooks
- Artifacts for publishing APIs for installation into clusters
- Namespace
- CRDs
- RBAC Roles and RoleBindings
- Controller StatefulSet + Service
- API reference documentation with examples
Kubebuilder is developed on top of the controller-runtime and controller-tools libraries.
当前内容版权归 kubebuilder.io 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 kubebuilder.io .