kubebuilder 初识

287 阅读1分钟

环境: 已有的k8s集群,集群下有一个node

1、安装kubebuilder: github.com/kubernetes-…, 下载下来直接就是kubebuild的二进制文件,没有kustomize二进制文件

2、创建目录文件: mkdir bookinfo

3、在上面创建的目录中执行 kubebuilder init --domain bookinfo

image.png

4、kubebuilder create api --group bookinfo --version v1 --kind Book //kind需要使用大写标识

image.png

5、对controller的Reconcile打印下效果,便于后面的展示

image.png

image.png

6、make install // 创建CRD资源 image.png 可以看出 make install 会在当前项目的bin目录下,下载一个kustomize的二进制文件,并且使用 kustomize build config/crd生成对应的CRD的yaml文件,因为本地没有安装kubelet, 因此在本地生成对应的CRD yaml文件,copy 到对应的主机执行

image.png 对应的CRD资源已经创建成功

7、make build // 生成对应的manager的二进制,可以直接copy 到集群的node上进行执行 // 因为是在主机上直接执行二进制的方式,需要指定对应的kubeconfig文件路径,metrics-bind-address 默认端口为8080, 因为主机端口占用的问题,重新指定了新的端口

image.png

8、验证: a、创建对应的资源 // config/samples/XXX.yaml b、查看manager启动的日志,可以看出 image.png

好了,这就是kubebuilder 初识的DEMO了,后面会介绍详情的使用