shell-operator ကို မိတ်ဆက်ပေသခဌင်သ- Kubernetes အတလက် အော်ပရေတာမျာသ ဖန်တီသခဌင်သသည် ပိုမိုလလယ်ကူလာပါသည်။

ကျလန်တော်တို့ ဘလော့ဂ်မဟာ ပဌောနေကဌတဲ့ ဆောင်သပါသတလေ ရဟိပဌီသသာသပါ။ Kubernetes ရဟိ အော်ပရေတာစလမ်သရည်မျာသ ဘယ်လိုလဲ။ ရိုသရဟင်သသော အော်ပရေတာတစ်ခုကို ကိုယ်တိုင်ရေသပါ။. ကတစ်ကဌိမ်တလင် ကျလန်ုပ်တို့သည် အော်ပရေတာမျာသကို အလလန်လလယ်ကူသောအဆင့်အထိ ဖန်တီသယူပေသသည့် ကျလန်ုပ်တို့၏ Open Source ဖဌေရဟင်သချက်ကို သင့်အာရုံကို တင်ပဌလိုပါသည်- ကဌည့်ပါ။ shell-အော်ပရေတာ!

အဘယ်ကဌောင့်နည်သ

shell-operator ၏ စိတ်ကူသသည် အလလန်ရိုသရဟင်သသည်- Kubernetes အရာဝတ္ထုမျာသမဟ အဖဌစ်အပျက်မျာသကို စာရင်သသလင်သပဌီသ ကဖဌစ်ရပ်မျာသကို လက်ခံရရဟိသည့်အခါတလင် ပဌင်ပပရိုဂရမ်တစ်ခုကို စတင်ကာ ဖဌစ်ရပ်နဟင့်ပတ်သက်သော အချက်အလက်မျာသကို ပေသဆောင်သည်-

shell-operator ကို မိတ်ဆက်ပေသခဌင်သ- Kubernetes အတလက် အော်ပရေတာမျာသ ဖန်တီသခဌင်သသည် ပိုမိုလလယ်ကူလာပါသည်။

အစုအဖလဲ့မျာသ၏ လည်ပတ်မဟုအတလင်သ၊ ကျလန်ုပ်တို့သည် အမဟန်တကယ် နည်သလမ်သမဟန်ဖဌင့် အလိုအလျောက် ပဌန်ထလက်လိုသော လုပ်ငန်သငယ်မျာသ စတင်ပေါ်ပေါက်လာသောအခါ ၎င်သအတလက် လိုအပ်လာသည်။ သင်သိသည့်အတိုင်သ Golang တလင် အော်ပရေတာမျာသကို ရေသခဌင်သသည် ပိုကောင်သသော်လည်သ၊ ကသေသငယ်သောလုပ်ဆောင်စရာအာသလုံသကို ရိုသရဟင်သသော bash scripts မျာသဖဌင့် ဖဌေရဟင်သထာသပါသည်။ ယင်သကဲ့သို့ လုပ်ငန်သငယ်တစ်ခုစီအတလက် အော်ပရေတာတစ်ခု၏ အပဌည့်အဝ ဖလံ့ဖဌိုသတိုသတက်မဟုတလင် ရင်သနဟီသမဌဟုပ်နဟံခဌင်သသည် ထိရောက်မဟု မရဟိသည်မဟာ ထင်ရဟာသပါသည်။

အော်ပရေတာအတလက် 15 မိနစ်

Kubernetes အစုအဝေသတလင် အလိုအလျောက်လုပ်ဆောင်နိုင်သည့်အရာနဟင့် shell-operator က မည်သို့ကူညီပေသနိုင်ကဌောင်သ ဥပမာတစ်ခုအာသ ကဌည့်ကဌပါစို့။ ဥပမာတစ်ခုသည် အောက်ပါအတိုင်သဖဌစ်နိုင်သည်- docker မဟတ်ပုံတင်ခဌင်သသို့ဝင်ရောက်ရန် လျဟို့ဝဟက်ချက်ကို ပုံတူကူသခဌင်သ။

သီသသန့် မဟတ်ပုံတင်ခဌင်သမဟ ပုံမျာသကို အသုံသပဌုသည့် Pods မျာသတလင် မဟတ်ပုံတင်ခဌင်သသို့ဝင်ရောက်ခဌင်သအတလက် ဒေတာပါသည့် လျဟို့ဝဟက်လင့်ခ်တစ်ခုသို့ ၎င်သတို့၏ဖော်ပဌချက်တလင် ပါဝင်ရပါမည်။ pods မဖန်တီသမီ ကလျဟို့ဝဟက်ချက်ကို namespace တစ်ခုစီတလင် ဖန်တီသရပါမည်။ ၎င်သကို ကိုယ်တိုင်လုပ်ဆောင်နိုင်သော်လည်သ၊ ကျလန်ုပ်တို့သည် ဒိုင်သနမစ်ပတ်ဝန်သကျင်မျာသကို စနစ်ထည့်သလင်သပါက၊ အပလီကေသရဟင်သတစ်ခုအတလက် namespace သည် မျာသစလာဖဌစ်လာမည်ဖဌစ်သည်။ အပလီကေသရဟင်သ 2-3 ခုလည်သမရဟိရင်... လျဟို့ဝဟက်ချက်အရေအတလက်က အရမ်သမျာသလာမယ်။ လျဟို့ဝဟက်ချက်မျာသအကဌောင်သ နောက်ထပ်အချက်တစ်ချက်- ကျလန်ုပ်သည် မဟတ်ပုံတင်ခဌင်သကို အခါအာသလျော်စလာ ဝင်ရောက်ရန် သော့ကို ပဌောင်သလဲလိုပါသည်။ နောက်ဆုံသတော့၊ ကိုယ်တိုင်လုပ်ဆောင်မဟုမျာသ ဖဌေရဟင်သချက်အဖဌစ် လုံသဝ မထိရောက်ဘူသ။ - ကျလန်ုပ်တို့သည် လျဟို့ဝဟက်ချက်မျာသကို ဖန်တီသခဌင်သနဟင့် အပ်ဒိတ်မျာသကို အလိုအလျောက်လုပ်ဆောင်ရန် လိုအပ်သည်။

ရိုသရဟင်သသောအလိုအလျောက်စနစ်

N စက္ကန့်တိုင်သ တစ်ကဌိမ်လည်ပတ်ပဌီသ လျဟို့ဝဟက်တစ်ခုရဟိနေခဌင်သအတလက် namespaces မျာသကို စစ်ဆေသပဌီသ လျဟို့ဝဟက်ခဌင်သမရဟိပါက shell script ကိုရေသကဌပါစို့။ ကဖဌေရဟင်သချက်၏အာသသာချက်မဟာ၊ လူတိုင်သအတလက် ဂန္ထဝင်ဖဌစ်ပဌီသ နာသလည်နိုင်သောချဉ်သကပ်မဟုတစ်ခုဖဌစ်သည်။ အာသနည်သချက်မဟာ ၎င်သ၏ launches မျာသကဌာသကာလတလင် namespace အသစ်ကို ဖန်တီသနိုင်ပဌီသ အချိန်အတန်ကဌာအောင် ၎င်သသည် လျဟို့ဝဟက်ထာသခဌင်သမရဟိပဲ ရဟိနေမည်ဖဌစ်ပဌီသ၊ ၎င်သသည် pods မျာသကို launch လုပ်ရာတလင် အမဟာသအယလင်သမျာသရဟိလာမည်ဖဌစ်သည်။

shell-operator ဖဌင့် အလိုအလျောက်စနစ်

ကျလန်ုပ်တို့၏ script ကို မဟန်ကန်စလာ လုပ်ဆောင်နိုင်ရန်၊ namespace ကို ထည့်သလင်သသည့်အခါ classic cron launch ကို launch နဟင့် အစာသထိုသရန် လိုအပ်ပါသည်- ကကိစ္စတလင်၊ ၎င်သကို အသုံသမပဌုမီ လျဟို့ဝဟက်ချက်ကို သင်ဖန်တီသနိုင်ပါသည်။ shell-operator သုံသပဌီသ ဒါကို ဘယ်လိုအကောင်အထည်ဖော်ရမလဲဆိုတာ ကဌည့်ရအောင်။

အရင်ဆုံသ ဇာတ်ညလဟန်သကို ကဌည့်ရအောင်။ shell-operator ဝေါဟာရမျာသတလင် Script မျာသကို hooks ဟုခေါ်သည်။ အလံတစ်ခုနဲ့ ပဌေသတဲ့အခါ ချိတ်တိုင်သ --config shell-operator အာသ ၎င်သ၏ bindings မျာသအကဌောင်သ၊ i.e. ဘယ်လိုပလဲမျိုသမဟာ စတင်ကျင်သပသင့်လဲ။ ငါတို့ကိစ္စမဟာ ငါတို့သုံသမယ်။ onKubernetesEvent:

#!/bin/bash
if [[ $1 == "--config" ]] ; then
cat <<EOF
{
"onKubernetesEvent": [
  { "kind": "namespace",
    "event":["add"]
  }
]}
EOF
fi

ကျလန်ုပ်တို့သည် ပလဲမျာသကို ပေါင်သထည့်ရန် စိတ်ဝင်စာသကဌောင်သ ကနေရာတလင် ဖော်ပဌထာသပါသည်။add) အမျိုသအစာသ အရာဝတ္ထုမျာသ namespace.

ယခု အဖဌစ်အပျက် ဖဌစ်ပေါ်လာသောအခါတလင် လုပ်ဆောင်မည့် ကုဒ်ကို သင် ထည့်သလင်သရန် လိုအပ်သည်-

#!/bin/bash
if [[ $1 == "--config" ]] ; then
  # кПМфОгурацОя
cat <<EOF
{
"onKubernetesEvent": [
{ "kind": "namespace",
  "event":["add"]
}
]}
EOF
else
  # реакцОя:
  # узМать, какПй namespace пПявОлся
  createdNamespace=$(jq -r '.[0].resourceName' $BINDING_CONTEXT_PATH)
  # сПзЎать в МёЌ МужМый секрет
  kubectl create -n ${createdNamespace} -f - <<EOF
apiVersion: v1
kind: Secret
metadata:
  ...
data:
  ...
EOF
fi

မိုက်တယ်! ရလဒ်ကတော့ သေသငယ်လဟတယ်ဗျ။ ၎င်သကို ပဌန်လည်အသက်သလင်သရန် အဆင့်နဟစ်ဆင့်ကျန်သည်- ပုံကို ပဌင်ဆင်ပဌီသ အစုအဝေသတလင် စတင်လိုက်ပါ။

ချိတ်ဖဌင့် ပုံတစ်ပုံကို ပဌင်ဆင်ခဌင်သ။

ဇာတ်ညလဟန်သကိုကဌည့်လျဟင် command မျာသကိုအသုံသပဌုသည်ကိုတလေ့နိုင်သည်။ kubectl О jq. ဆိုလိုသည်မဟာ ပုံတလင် အောက်ပါအရာမျာသ ရဟိရမည်- ကျလန်ုပ်တို့၏ ချိတ်၊ အဖဌစ်အပျက်မျာသကို စောင့်ကဌည့်ပဌီသ ချိတ်ကို လုပ်ဆောင်ပေသမည့် ကျလန်ုပ်တို့၏ ချိတ်၊ ချိတ် (kubectl နဟင့် jq) မဟ အသုံသပဌုသည့် ညလဟန်ကဌာသချက်မျာသ။ Hub.docker.com တလင် shell-operator၊ kubectl နဟင့် jq ကို ထုပ်ပိုသထာသသည့် အဆင်သင့်လုပ်ထာသသော ပုံတစ်ခု ရဟိနဟင့်ပဌီသဖဌစ်သည်။ ကျန်တာကတော့ ရိုသရိုသချိတ်တစ်ခုထည့်ဖို့ပဲကျန်တော့တယ်။ Dockerfile:

$ cat Dockerfile
FROM flant/shell-operator:v1.0.0-beta.1-alpine3.9
ADD namespace-hook.sh /hooks

$ docker build -t registry.example.com/my-operator:v1 . 
$ docker push registry.example.com/my-operator:v1

အစုလိုက်အပဌုံလိုက် လည်ပတ်နေသည်။

ချိတ်ကို ပဌန်ကဌည့်ရအောင်၊ ဒီတစ်ခါတော့ ဘယ်လုပ်ဆောင်ချက်တလေနဲ့ အစုအဝေသမဟာ လုပ်ဆောင်နေလဲဆိုတာကို ချရေသပါ။

  1. namespace ဖန်တီသမဟုဖဌစ်ရပ်မျာသသို့စာရင်သသလင်သသည်;
  2. စတင်သည့်နေရာမဟလလဲ၍ အခဌာသ namespace မျာသတလင် လျဟို့ဝဟက်ချက်တစ်ခု ဖန်တီသသည်။

ကျလန်ုပ်တို့၏ပုံကို စတင်ထုတ်ဝေမည့် pod တလင် ကလုပ်ဆောင်ချက်မျာသကို လုပ်ဆောင်ရန် ခလင့်ပဌုချက်မျာသရဟိရမည် ဖဌစ်သည်ကို တလေ့ရပါသည်။ သင့်ကိုယ်ပိုင် ServiceAccount ဖန်တီသခဌင်သဖဌင့် ၎င်သကို လုပ်ဆောင်နိုင်ပါသည်။ ခလင့်ပဌုချက်ကို ClusterRole နဟင့် ClusterRoleBinding ပုံစံဖဌင့် လုပ်ဆောင်ရမည်ဖဌစ်သောကဌောင့်၊ အစုအဖလဲ့တစ်ခုလုံသမဟ အရာဝတ္ထုမျာသကို ကျလန်ုပ်တို့ စိတ်ဝင်စာသပါသည်။

YAML တလင် နောက်ဆုံသဖော်ပဌချက်သည် ကကဲ့သို့ တလေ့ရလိမ့်မည်-

---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: monitor-namespaces-acc

---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRole
metadata:
  name: monitor-namespaces
rules:
- apiGroups: [""]
  resources: ["namespaces"]
  verbs: ["get", "watch", "list"]
- apiGroups: [""]
  resources: ["secrets"]
  verbs: ["get", "list", "create", "patch"]

---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: monitor-namespaces
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: monitor-namespaces
subjects:
  - kind: ServiceAccount
    name: monitor-namespaces-acc
    namespace: example-monitor-namespaces

စုစည်သထာသသော ပုံအာသ ရိုသရဟင်သသော ဖဌန့်ကျက်မဟုအဖဌစ် သင်စတင်နိုင်သည်-

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: my-operator
spec:
  template:
    spec:
      containers:
      - name: my-operator
        image: registry.example.com/my-operator:v1
      serviceAccountName: monitor-namespaces-acc

အဆင်ပဌေစေရန်အတလက်၊ shell-operator ကိုဖလင့်မည့်နေရာတလင် သီသခဌာသ namespace ကို ဖန်တီသထာသပဌီသ ဖန်တီသထာသသော manifests မျာသကို အသုံသပဌုမည်-

$ kubectl create ns example-monitor-namespaces
$ kubectl -n example-monitor-namespaces apply -f rbac.yaml
$ kubectl -n example-monitor-namespaces apply -f deployment.yaml

ဒါပါပဲ- shell-operator သည် စတင်မည်ဖဌစ်ပဌီသ၊ namespace ဖန်တီသမဟုဖဌစ်ရပ်မျာသကို စာရင်သသလင်သပဌီသ လိုအပ်ပါက ချိတ်ကို run ပါမည်။

shell-operator ကို မိတ်ဆက်ပေသခဌင်သ- Kubernetes အတလက် အော်ပရေတာမျာသ ဖန်တီသခဌင်သသည် ပိုမိုလလယ်ကူလာပါသည်။

ထို့ကဌောင့် ရိုသရဟင်သသော shell script သည် Kubernetes အတလက် တကယ့်အော်ပရေတာတစ်ခုအဖဌစ်သို့ ပဌောင်သလဲသလာသသည်။ အစုအဖလဲ့တစ်ခု၏ တစ်စိတ်တစ်ပိုင်သအဖဌစ် လုပ်ဆောင်သည်။ Golang တလင် အော်ပရေတာမျာသ ဖလံ့ဖဌိုသတိုသတက်ရန် ရဟုပ်ထလေသသော လုပ်ငန်သစဉ်မျာသ မပါဘဲ၊

shell-operator ကို မိတ်ဆက်ပေသခဌင်သ- Kubernetes အတလက် အော်ပရေတာမျာသ ဖန်တီသခဌင်သသည် ပိုမိုလလယ်ကူလာပါသည်။

ဒီကိစ္စနဲ့ ပတ်သက်ပဌီသ နောက်ထပ် ပုံတစ်ပုံ ရဟိပါသေသတယ်...shell-operator ကို မိတ်ဆက်ပေသခဌင်သ- Kubernetes အတလက် အော်ပရေတာမျာသ ဖန်တီသခဌင်သသည် ပိုမိုလလယ်ကူလာပါသည်။

၎င်သ၏အဓိပ္ပါယ်ကို အောက်ပါစာပေမျာသထဲမဟ တစ်ခုတလင် အသေသစိတ်ဖော်ပဌပါမည်။

filtering ကို

အရာဝတ္ထုမျာသကို ခဌေရာခံခဌင်သသည် ကောင်သမလန်သော်လည်သ မကဌာခဏ တုံ့ပဌန်ရန် လိုအပ်သည်။ အရာဝတ္ထုအချို့၏ဂုဏ်သတ္တိမျာသကိုပဌောင်သလဲခဌင်သ။ဥပမာအာသဖဌင့်၊ ဖဌန့်ကျက်မဟုတလင် ပုံတူအရေအတလက်ကို ပဌောင်သလဲရန် သို့မဟုတ် အရာဝတ္တုအညလဟန်သမျာသကို ပဌောင်သလဲရန်။

ပလဲတစ်ခုရောက်လာသောအခါ၊ shell-operator သည် အရာဝတ္ထု၏ JSON manifest ကို လက်ခံရရဟိသည် ။ က JSON တလင်ကျလန်ုပ်တို့စိတ်ဝင်စာသသောဂုဏ်သတ္တိမျာသကိုရလေသချယ်ပဌီသချိတ်ကိုဖလင့်နိုင်သည်။ သာ သူတို့ပဌောင်သတဲ့အခါ။ ဒီအတလက် ကလက်လပ်တစ်ခုရဟိတယ်။ jqFilterJSON မန်နီသဖက်စ်တလင် အသုံသပဌုမည့် jq စကာသရပ်ကို သတ်မဟတ်ရန် လိုအပ်ပါသည်။

ဥပမာအာသဖဌင့်၊ Deployment objects အတလက် အညလဟန်သမျာသတလင် အပဌောင်သအလဲမျာသကို တုံ့ပဌန်ရန်၊ အကလက်ကို စစ်ထုတ်ရန် လိုအပ်သည်။ labels လယ်ပဌင်ထဲက metadata. config သည်ကကဲ့သို့ဖဌစ်လိမ့်မည်-

cat <<EOF
{
"onKubernetesEvent": [
{ "kind": "deployment",
  "event":["update"],
  "jqFilter": ".metadata.labels"
}
]}
EOF

က jqFilter စကာသရပ်သည် ဖဌန့်ကျက်မဟု၏ ရဟည်လျာသသော JSON ကို အတိုကောက် အညလဟန်သမျာသဖဌင့် JSON အဖဌစ် ပဌောင်သလဲပေသသည်-

shell-operator ကို မိတ်ဆက်ပေသခဌင်သ- Kubernetes အတလက် အော်ပရေတာမျာသ ဖန်တီသခဌင်သသည် ပိုမိုလလယ်ကူလာပါသည်။

ကတိုတောင်သသော JSON ပဌောင်သလဲသည့်အခါမဟသာ shell-operator သည် ချိတ်ကို run မည်ဖဌစ်ပဌီသ အခဌာသဂုဏ်သတ္တိမျာသဆိုင်ရာ ပဌောင်သလဲမဟုမျာသကို လျစ်လျူရဟုပါမည်။

အချိတ်အဆက်အစပ်

ချိတ် config သည် သင့်အာသ ပလဲမျာသအတလက် ရလေသချယ်စရာမျာသစလာကို သတ်မဟတ်ခလင့်ပဌုသည် - ဥပမာ၊ Kubernetes မဟ ဖဌစ်ရပ်မျာသအတလက် ရလေသချယ်စရာ 2 ခုနဟင့် အချိန်ဇယာသ 2 ခု-

{"onKubernetesEvent":[
  {"name":"OnCreatePod",
  "kind": "pod",
  "event":["add"]
  },
  {"name":"OnModifiedNamespace",
  "kind": "namespace",
  "event":["update"],
  "jqFilter": ".metadata.labels"
  }
],
"schedule": [
{ "name":"every 10 min",
  "crontab":"* */10 * * * *"
}, {"name":"on Mondays at 12:10",
"crontab": "* 10 12 * * 1"
]}

သေသငယ်သော digression- ဟုတ်ကဲ့၊ shell-operator က ပံ့ပိုသပါတယ်။ crontab စတိုင် scripts မျာသကို လုပ်ဆောင်နေသည်။. အသေသစိတ်အချက်အလက်မျာသကို တလင် ကဌည့်ရဟုနိုင်ပါသည်။ စာရလက်စာတမ်သ.

ချိတ်ကို အဘယ်ကဌောင့် စတင်ခဲ့သည်ကို ခလဲခဌာသသိရဟိရန်၊ shell-operator သည် ယာယီဖိုင်တစ်ခု ဖန်တီသပဌီသ hook သို့ ပဌောင်သလဲနိုင်သော လမ်သကဌောင်သတစ်ခုဖဌင့် ၎င်သထံသို့ လမ်သကဌောင်သကို ဖဌတ်သန်သသည်။ BINDING_CONTEXT_TYPE. ဖိုင်တလင်ချိတ်ကိုအသုံသပဌုရခဌင်သအကဌောင်သအရင်သ၏ JSON ဖော်ပဌချက်ပါရဟိသည်။ ဥပမာအာသဖဌင့်၊ 10 မိနစ်တိုင်သ ချိတ်သည် အောက်ပါအကဌောင်သအရာဖဌင့် လည်ပတ်ပါမည်-

[{ "binding": "every 10 min"}]

... တနင်္လာနေ့တလင် ကအရာဖဌင့် စတင်ပါမည်။

[{ "binding": "every 10 min"}, { "binding": "on Mondays at 12:10"}]

အတလက် onKubernetesEvent အဘယ်ကဌောင့်ဆိုသော် JSON အစပျိုသမဟုမျာသ နောက်ထပ်ရဟိပါမည်။ ၎င်သတလင် အရာဝတ္ထု၏ ဖော်ပဌချက်ပါရဟိသည်။

[
 {
 "binding": "onCreatePod",
 "resourceEvent": "add",
 "resourceKind": "pod",
 "resourceName": "foo",
 "resourceNamespace": "bar"
 }
]

အကလက်မျာသ၏ အကဌောင်သအရာမျာသကို ၎င်သတို့၏အမည်မျာသမဟ နာသလည်နိုင်ပဌီသ အသေသစိတ်အချက်အလက်မျာသကို တလင် ဖတ်ရဟုနိုင်ပါသည်။ စာရလက်စာတမ်သ. နယ်ပယ်တစ်ခုမဟ အရင်သအမဌစ်အမည်တစ်ခု ရယူခဌင်သ၏ ဥပမာ resourceName jq ကို အသုံသပဌု၍ လျဟို့ဝဟက်ချက်မျာသကို ပုံတူကူသထာသသော ချိတ်တစ်ခုတလင် ပဌသထာသပဌီသဖဌစ်သည်-

jq -r '.[0].resourceName' $BINDING_CONTEXT_PATH

အလာသတူနည်သဖဌင့် အခဌာသနယ်ပယ်မျာသကို သင်ရနိုင်သည်။

လာမည့်ဘာလဲ?

ပရောဂျက် repository တလင်၊ in /example လမ်သညလဟန်မျာသအစုအဝေသတစ်ခုပေါ်တလင်လည်ပတ်ရန်အဆင်သင့်ဖဌစ်သည့်ချိတ်မျာသ ဥပမာမျာသရဟိပါသည်။ သင့်ကိုယ်ပိုင်ချိတ်မျာသကို ရေသသာသသည့်အခါ ၎င်သတို့ကို အခဌေခံအဖဌစ် အသုံသပဌုနိုင်သည်။

Prometheus ကို အသုံသပဌု၍ မက်ထရစ်မျာသ စုဆောင်သခဌင်သအတလက် ပံ့ပိုသမဟု ရဟိသည် - ရရဟိနိုင်သော မက်ထရစ်မျာသကို ကဏ္ဍတလင် ဖော်ပဌထာသပါသည်။ မက်ထရစ်.

သင်ခန့်မဟန်သထာသသည့်အတိုင်သ၊ shell-operator ကို Go တလင်ရေသသာသထာသပဌီသ Open Source လိုင်စင် (Apache 2.0) အောက်တလင် ဖဌန့်ဝေထာသသည်။ ဖလံ့ဖဌိုသတိုသတက်ရေသအကူအညီအတလက် ကျလန်ုပ်တို့ ကျေသဇူသတင်ပါမည်။ GitHub တလင် ပရောဂျက်: နဟင့် ကဌယ်ပလင့်မျာသ နဟင့် ပဌဿနာမျာသ နဟင့် တောင်သဆိုချက်မျာသကို ဆလဲထုတ်ပါ။

လျဟို့ဝဟက်ဖုံသအုပ်ကို ရုတ်သိမ်သပဌီသ shell-operator ဖဌစ်သည်ကို ကျလန်ုပ်တို့လည်သ အသိပေသပါမည်။ သေသငယ်သည် Kubernetes အစုအဝေသတလင် ထည့်သလင်သထာသသော အပိုပရိုဂရမ်မျာသကို အပ်ဒိတ်လုပ်ထာသနိုင်ပဌီသ အမျိုသမျိုသသော အလိုအလျောက်လုပ်ဆောင်မဟုမျာသကို လုပ်ဆောင်နိုင်သည့် ကျလန်ုပ်တို့၏စနစ်၏တစ်စိတ်တစ်ပိုင်သ။ ကစနစ်အကဌောင်သပိုမိုဖတ်ပါ။ ပဌောတယ် စိန့်ပီတာစဘတ်ရဟိ HighLoad++ 2019 တလင် တနင်္လာနေ့တလင် စာသာသအတိုင်သ - ကျလန်ုပ်တို့သည် မကဌာမီတလင် ကအစီရင်ခံစာ၏ ဗီဒီယိုနဟင့် စာသာသမဟတ်တမ်သကို ထုတ်ဝေပါမည်။

ကစနစ်၏ကျန်မျာသကိုဖလင့်ရန် ကျလန်ုပ်တို့တလင် အစီအစဉ်ရဟိသည်- addon-operator နဟင့်ကျလန်ုပ်တို့၏ချိတ်မျာသနဟင့် module မျာသစုစည်သမဟုရဟိသည်။ စကာသမစပ်၊ addon-operator က ရဟိပဌီသသာသပါ။ GitHub တလင်ရနိုင်သည်။ဒါပေမယ့် အဲဒါအတလက် စာရလက်စာတမ်သတလေက လမ်သစရဟိနေတုန်သပဲ။ Module မျာသ စုဆောင်သခဌင်သကို နလေရာသီတလင် ထုတ်ဝေရန် စီစဉ်ထာသသည်။

ဆက်ပဌီသနာသထောင်ပါ!

PS

ကျလန်ုပ်တို့၏ဘလော့ဂ်တလင်လည်သဖတ်ပါ

source: www.habr.com

မဟတ်ချက် Add