<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>KubeBuilder :: Ay Docs</title>
    <link>https://ops.docs.72602.space/kubernetes/operator/kubebuilder/index.html</link>
    <description>Basic Kubebuilder 是一个使用 CRDs 构建 K8s API 的 SDK，主要是：&#xA;基于 controller-runtime 以及 client-go 构建 提供一套可扩展的 API 框架，方便用户从零开始开发 CRDs 和 Controllers 和 Admission Webhooks 来扩展 K8s。 还提供脚手架工具初始化 CRDs 工程，自动生成 boilerplate 模板代码和配置； Architecture Main.go import ( _ &#34;k8s.io/client-go/plugin/pkg/client/auth&#34; ctrl &#34;sigs.k8s.io/controller-runtime&#34; ) // nolint:gocyclo func main() { ... mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{} ... if err = (&amp;controller.GuestbookReconciler{ Client: mgr.GetClient(), Scheme: mgr.GetScheme(), }).SetupWithManager(mgr); err != nil { setupLog.Error(err, &#34;unable to create controller&#34;, &#34;controller&#34;, &#34;Guestbook&#34;) os.Exit(1) } ... if os.Getenv(&#34;ENABLE_WEBHOOKS&#34;) != &#34;false&#34; { if err = webhookwebappv1.SetupGuestbookWebhookWithManager(mgr); err != nil { setupLog.Error(err, &#34;unable to create webhook&#34;, &#34;webhook&#34;, &#34;Guestbook&#34;) os.Exit(1) } } Manager Manager是核心组件，可以协调多个控制器、处理缓存、客户端、领导选举等，来自https://github.com/kubernetes-sigs/controller-runtime/blob/v0.20.0/pkg/manager/manager.go</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Thu, 07 Mar 2024 15:00:59 +0800</lastBuildDate>
    <atom:link href="https://ops.docs.72602.space/kubernetes/operator/kubebuilder/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Quick Start</title>
      <link>https://ops.docs.72602.space/kubernetes/operator/kubebuilder/startup/index.html</link>
      <pubDate>Thu, 07 Mar 2024 15:00:59 +0800</pubDate>
      <guid>https://ops.docs.72602.space/kubernetes/operator/kubebuilder/startup/index.html</guid>
      <description>Prerequisites go version v1.23.0+ docker version 17.03+. kubectl version v1.11.3+. Access to a Kubernetes v1.11.3+ cluster. Installation # download kubebuilder and install locally. curl -L -o kubebuilder &#34;https://go.kubebuilder.io/dl/latest/$(go env GOOS)/$(go env GOARCH)&#34; chmod +x kubebuilder &amp;&amp; sudo mv kubebuilder /usr/local/bin/ Create A Project mkdir -p ~/projects/guestbook cd ~/projects/guestbook kubebuilder init --domain my.domain --repo my.domain/guestbook Error: unable to scaffold with “base.go.kubebuilder.io/v4”:exit status 1 Just try again!</description>
    </item>
  </channel>
</rss>