KubeBuilder 基础入门指南让你不在迷失方向
// Important: Run "make" to regenerate code after modifying this file
// Product 该应用所属的产品 Product string `json:"product,omitempty"` } 修改之后我们执行一下 make manifests generate 可以发现已经生成了相关的字段,并且代码中的字段注释也就是 yaml 文件中的注释 # config/crd/bases/apps.lailin.xyz_applications.yaml ...... properties: product: description: Product 该应用所属的产品 type: string ...... 实现 controllerkubebuilder 已经帮我们实现了 Operator 所需的大部分逻辑,我们只需要在 Reconcile 中实现业务逻辑就行了 // controllers/application_controller.go
func (r *ApplicationReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) { _ = r.Log.WithValues("application", req.NamespacedName)
r.Log.Info("app changed", "ns", req.Namespace)
return ctrl.Result{}, nil } 逻辑修改好之后,我们先执行 make install 安装 CRD,然后执行 make run运行 controller go run ./main.go 2021-04-25T21:55:55.578+0800 INFO controller-runtime.metrics metrics server is starting to listen {"addr": ":8080"} 2021-04-25T21:55:55.579+0800 INFO setup starting manager 2021-04-25T21:55:55.579+0800 INFO controller-runtime.manager starting metrics server {"path": "/metrics"} 2021-04-25T21:55:55.579+0800 INFO controller-runtime.manager.controller.application Starting EventSource {"reconciler group": "apps.lailin.xyz", "reconciler kind": "Application", "source": "kind source: /, Kind="} 2021-04-25T21:55:55.680+0800 INFO controller-runtime.manager.controller.application Starting Controller {"reconciler group": "apps.lailin.xyz", "reconciler kind": "Application"} (编辑:焦作站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |