GO? ???? Kubernetes ????? ???? ?? ???? ??? ???? ?? ?????. GO? ???, ??? ??? ? ??? ?? ??? ?? ?????. 1. KubeBuilder? ???? ????? ???????. 2. MyApp? ?? CRD (Custom Resource) ??? ?????. 3. ?? ??? ???? ?? ?? ??? ????? (? : ?? ?? ?? ????). 4. MAKE ??? ???? ????? ????? ??????. 5. IDEMPOTENCE, ?? ? ??, RBAC ?? ??? ??? ?? ??? ??? ??? ??, ?? ?? ?? ? WebHooks? ??? ??????. GO? ????-??? ? KubeBuilder? ?? ??? ? ?? ?? ?? ??? ????? ????? ???? ?? ??? ????? ??? ? ?? ? ?? ?? ??? ?????.
GO? ???? ??? Kubernetes ????? ???? ?? ????? ?? ? ?? ??? ?? ??? ???? ??? ?????. Kubernetes ??? GO? ??????? GO ??? ???? client-go
, controller-runtime
? ?? ??? ?????? KubeBuilder ? Kustomize ? ?? ??? ?? ?? ????? ????? ?? ?? ? ? ??????.

???? ??? ??? ? ??? ??? ????.
Kubernetes ????? Go? ???? ??? ??????
Go? Kubernetes ??? ??? ?????. ?? ??? ??? ????.

- ?? : GO? ?? ????? ????? ??? ?? ??? ??? Goroutines? ?? ??? ??? ??? ????.
- ??? ??? :
client-go
Kubernetes API?? ?? ??? ?????.controller-runtime
(Kubernetes SIG? ??)? ???? ???? ??? ??????. - ?? : KubeBuilder , Operator SDK ? KubeBuilder Init Smailline Scafolding, Testing ? Deployment? ?? ??.
???? Kubernetes? ???? ?? Go? ?? ???? ?????.
??? ?? ????? ?? ?? ??
Kubernetes ????? ?????? ???? ?? ???? ??? ??? ????? ??? ????. ?? ????? ??? ?????.

- ?? ???/??? : ?? ??? (? : ??, ??? ?? ???)? ?? ?? ??? ????.
- ????? : Kubernetes API? ?? ???? ??? ??, ??, ??????? ??????.
- ?? ?? : ??? ?? ? ??? ???? ?? ??.
- CRD (Custom Resource Definition) : ???? ???? ?? CRD? ???? ??? ?? ??? ?????.
??? : ???? ????? ???? ??
??? ????? ???? ?? ?? ??? KubeBuilder ? Controller-Runtime? ???? ????.
1. KubeBuilder? ??????
# Linux/MacOS?? curl -l -o kubebuilder https://go.kubebuilder.io/dl/latest/$(go env goos)/$ (go env goarch) CHMOD X KUBEBUILDER && SUDO MV KUBEBUILDER/USR/LOCAL/BIN/
2. ???? ???
mkdir my-controller && cd my-controller KubeBuilder init--domain example.com-repo example.com/mymodule
?? ?? ?? ?? ?? ? Docker ??? ?? ? GO ??? ?????.
3. ??? ?? ??? ??? (API)
KubeBuilder ?? API -?? ? -Version v1 --kind myapp
??? ??? ?????.
-
MyApp
? ?? - CRD ????? (
config/crd/bases/
) - ???? ?? ??
?? api/v1/myapp_types.go
?? MyAppSpec
? MyAppStatus
structs? ??? ?? ? ? ????.
4. ?? ??? ??????
controllers/myapp_controller.go
:
func (r *myEctReconciler) ?? (ctx context.context, req ctrl.request) (ctrl.result, error) { log : = r.log.withValues ( "myApp", req.namespacedName) // myApp ????? ????? var myapp myapp err : = r.get (ctx, req.namespacedname, & myapp); err! = nil { ctrl.result {}, client.ignorenotfound (err)? ?????. } // ??? ?? : ?? ?? ??? ????? ?????? ??? ?? : = NewDeploymentFormyApp (& myApp) var found appsv1.deployment err : = r.get (ctx, type.namespacedname {name : destiredDeployment.Name, ?? ???? : destiredDeployment.namespace}, & found) err! = nil && errors.isnotfound (err) { log.info ( "?? ??", "??", destiredDeployment.Name) return ctrl.result {}, r.create (ctx, destireddeployment) } else if err! = nil { ctrl.result {}, err } // ?? ? ?? ??????? ?????? ?? ?? ???? if! recram.deepequal (found.spec, destiredDeployment.spec) { found.spec = destiredDeployment.spec log.info ( "?? ????") ctrl.result {}, r.update (ctx, & found)? ?????. } ctrl.result {}, nil? ????? }
5. ????? ??????
?? ? :
???
?? ????? ?? :
Docker-Build Docker-Push IMG = MyRegistry/My-Controller : v1? ????? ?? IMG = myRegistry/my-controller : v1? ?? ? ????
CRD? ????? ????? ?????.
?? ??
- ????-??? ?? : ??? ??, ? ?? ??, ?? ?? ?? ?????.
- Idempotency : ?? ??? ?????????. ?? ? ??? ? ????.
- ?? ?? : ??? ????? ? ??,
ctrl.Result{RequeueAfter: ...}
???? ??? ??. - ?? ? ??? : ??? ? ?? (
logr
)? ???? Prometheus Metrics (?? ??)? ??????. - RBAC :
config/rbac/role.yaml
?? ??? ??? ??????.
?? ??
- ???? : ?? ?? ?? ?? (? : ???? ??? ??).
- STARING SUBRESOURCE :
.spec
??? ??? ??.status
? ???????. - WebHooks :
admission.Webhook
???? ??? ?? ?? ???? ??????. - ?? ?? CRD : ?? Webhooks? ???? ?? ?????? ?????.
?? ? ??
- ??? SDK : KubeBuilder? ?? ? ? ?? ??? ??? ? Ansible/Helm ??? ?????.
- KubeBuilder ?? : Book.kubeBuilder.io ? ??? ???
- ?? ???? : KubeBuilder ?? ?? ?? ??? ??????.
Go? ?? ????? ??? ?? ? ??? ???? ?? ??? ???? ? ?? ?? ? ???? ????. ??? ? ??, ?????? ?? ?? ?? ??? ??? ???? ??? ?? ????? ???? Kubernetes? ?? ? ? ????.
????? CRD? ???? ?? ??? ???? ?? ??? ???? ?????????.
? ??? GO? ???? Custom Kubernetes ????? ?????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

Golang? ?? ??? ??? ????? ??? ?? ???? ??? ? ??? ? ?? ????. ?? ??? ???, ?? ?? ? ??? ?? ?????? ????? API ??, ???? ???, ?? ???, ?????? ?? ? CLI ??? ?? ??? ?? ????? ???? ? ?????. Golang? ? ??? ??? ?? ??? ???? Gopherjs? ?? JavaScript? ?????? Tinygo? ?? WebAssembly?? ????? ??? ?? ??? ???? ?? ??? ???? HTML ???? ?? ? ? ????. ??? ???? ??? ?? ??? ??? ??JavaScript/TypeScript ? ???? ???????. ??? Golang? ??? ???? ???? ?? ?? ??? ? ?????.

GO? ???? ?? ??? ??? ???? ?? ??? ???? ??? ???? ????. 1. ?? ???? ?? ???? ??????? ?? ? ???? ??????. Windows? .msi ??? ???? MacOS? .pkg ??? ???? Linux? .tar.gz ??? ???? /usr /local ????? ??? ????. 2. Linux/MacOS?? ?? ??, ?? ~/.bashrc ?? ~/.zshrc? ???? ??? Gopath? ???? Windows Set ??? ??? ???? ?????. 3. ?? ??? ???? ??? ???? ??? ???? Hello.Go? ???? ?? ? ??? ???? ??????. ???? ???? ?? ?? ? ??

GO?? GraphQlapi? ????? GQLGEN ?????? ???? ?? ???? ????? ?? ????. 1. ?? ???? ???? ?? ?? ??? ???? GQLGEN? ?? ??? ?????? ??????. 2. ?? ?? GraphQLSchema? ???? POST ?? ? ?? ??? ??? ?? API ?? ? ?? ??? ??????. 3. ?? ?? ????? ????? ?? ??? ???? Resolver?? ???? ??? ?????. 4. ????? ??? Qlhandler? httpserver? ???? ?? ???? ?? API? ???????. ?? ?? ?? ??, ?? ??, ?? ??? ? ?? ??? ???? ???? ?? ??? ?????.

sync.waitgroup? ?? ? ??? ??? ?? ? ??? ???? ? ?????. ??? ??? ? ?? ??? ?? ?? ??? ???? : ??, ?? ? ??. 1. Aadd (n) ?? ? ?? ? ?? ?????. 2. DONE ()? ? ? ??? ??? ???? ???? 1 ? ?? ???. 3. Wait ()? ?? ??? ?? ? ??? ?? ? ??? ?????. ?? ??? ?? ?? ?? : ADD? ?? ? ???? ????????. ?? ??? ??? DON? ????? ??????. ??? ?? ???? ?? ????. ? ???? ?? ???, ?? ??? ?? ? ?? ?????? ????? ??? ????? ????? ?? ? ? ????.

Go? Embed ???? ???? ? ???? ??? HTML, CSS, ?? ? ?? ??? ???? ? ??? ?? ???? ????? ?? ???? ? ????. 1. ?? ? ???? ????? ??????. 2. ??/*? ?? ?? ????? ??? ? ??? embed.fs? ?? ?? ?? ??? ??? ? ????. 3. ?? ?? ?? ?? ??? ?? ??? ?? ??? ???? ???? ????? ?? ????. 4. ???? ???? ?? ???, ?? ?? ?? ? ?? ?? ?????????. Embed? ???? ??? ??? ????? ???? ??? ??? ? ? ????.

??? ? ??? ??? ??? ?? ???? ? ??? ??? ???? ? ????. 1. ?? ?????? ??, ???, ??, ??? ? ??? ???? ? ???? ??? ? ???? ????. 2. ??? ? ??? ??, ?? ??, ??? ???, ??? ?? ?? ?? ???? ??? ?? ??, ?? ???, ??? ?? ??, ?? ?? ?? ?? ?? ??? ? ????. 3. FFMPEG, OPENCV, WEBRTC, GSTREAMER ? ?? ??? ???? ??? ???? ?? ????. 4. ?? ?? ???? ???? ??, ???? ??? ??? ?? ??, ?? ??? ? ??? ?? ?????? ???????. ??? ?? ???? ????? ?? ???? ??? ??? ????? ? ??????.

?? ?? ??? ? ??? ???? ?? ??? ????. ??? Net/HTTP ???? ???? ?? ???? ???? ? ????. 1. net/http? ???? ?? ??? ??? ??????. ?? ?? ??? ???? ? ?? ??? ?? ??? ????. 2. ??? ?? : Servemux? ???? ?? ??? ? ??? ?? ?? ????? ??? ?????. 3. ???? ?? : ?? ?? ? ?? ??? ? ?? ?????? ???? ??? ??? ?????. 4. ?? ?? ??? : http.fileserver? ?? HTML, CSS ? JS ??? ?????. 5. ?? ? ?? : HTTPS ???, ?? ??? ??? ???? ?? ? ??? ????? ?? ?? ??? ?????. ??? ?? ???? ????? ??? ???? ?? ? ?? ????.

Select Plus Default? ??? ?? ??? ???? ??? ?? ????? ??? ? Select? ?? ??? ????? ???? ????. 1. ???? ?? ???? ???? ?? ? ? ??? ?? ??? ?? ??? ?? ?????. 2. ??? ??. ?? ?? ?? ????? ???? ?????. ??? ?? ?? ???? ?? ?? ????. 3. ?? ??? ????, ??? ?? ??? ???? ?? ?? ????? ???? ???????. ?? ??? ?? ?? ??? ?? ???? ?? ? ? ??? ?? ? ??? ?? ????? ??? ???? ????.
