首页 > 其他分享 >kubebuilder

kubebuilder

时间:2024-02-02 10:55:28浏览次数:32  
标签:kind -- make application kubebuilder operator

https://book.kubebuilder.io/quick-start
crd+operator 定义了CRD之后,下一步就是需要一个像Deployment Controller Manager一样的监听服务,监听CRD对应资源的创建、更新、删除,而这个监听服务就是Operator。

项目初始化

kubebuilder init --domain cheng.com --repo github.com/cheng-sir/application-operator --owner cheng 
kubebuilder create api --group apps --version v1 --kind Application

项目开发

定义crd 修改:/api//xxxx_types.go 中Spec结构体
CRD部署 make manifests make install
开发operator 修改:/controllers/xxxx_controller.go 实现Reconcile的逻辑
启动Contoller make run

项目发布

make docker-build IMG=application-operator:v0.1.0   # 构建镜像
kind load docker-image application-operator:v0.1.0 --name cheng1 # 推到kind环境
make deploy IMG=application-operator:v0.1.0  # 部署控制器

资源清理

# 卸载Controller
make undeploy
# 卸载crd
make uninstall

标签:kind,--,make,application,kubebuilder,operator
From: https://www.cnblogs.com/cheng-sir/p/18002757

相关文章

  • kubebuilder 构建operator
    1.wsl上配置环境环境window环境上安装wsl,安装golang安装kubebuilder:wgethttps://github.com/kubernetes-sigs/kubebuilder/releases/download/v2.3.1/kubebuilder_2.3.1_linux_amd64.tar.gz tar-zxvfkubebuilder_2.3.1_linux_amd64.tar.gz#带kubectl,etcd等 mvkubebuild......
  • kubebuilder笔记
    一、kubebuilder作用提供脚手架工具初始化CRDs工程,自动生成boilerplate代码和配置提供代码库封装底层的K8sgo-client二、kubebuilder整体流程用户自定义crd,将自定义的crd注册到scheme中,这样通过GVK能找到对应的go的struct,也能通过go的struct找对对应的GVKCache监听S......
  • kubebuilder开发kubernetes operator demo
    环境准备go环境配置wgethttps://golang.google.cn/dl/go1.19.8.linux-amd64.tar.gztarzxvfgo1.19.8.linux-amd64.tar.gzmvgo/usr/local/vim/etc/profile在最结尾添加exportHOME=/rootexportGOROOT=/usr/local/goexportGOPATH=/opt/idcus/goexportPATH=$PATH:......
  • kubegres 源码解析(二) kubebuilder简介
    摘要Kubegres完全使用KubebuilderV3版本开发,在对Kubegres进行代码解析前,首先了解一下Kubebuilder,本文尝试理清几个问题:如何使用Kubebuilder生成Controller/Operator项目?项目结构是什么,每个文件的作用是什么?具体到最重要的几个文件,代码如何组织,功......
  • kubebuilder安装
    注意:go版本和kubebuilder版本需要兼容如下goenv参数一定要修改CGO_ENABLED="0"GO111MODULE="on"本机环境centos7.9amd64,go1.17和kubebuilderv3.4.1......