ပုံမှန်အားဖြင့် kubernetes က secret တွေ configmap တွေ update ဖြစ်သွားရင် workload တွေကိုအလိုအလျောက် rollout မလုပ်ပေးနိုင်ပါဖူး။ ဒါကြောင့် secrets / configs တွေ update ဖြစ်လာရင် workload တွေနဲ့ အနည်းငယ် gap ဖြစ်သွားနိုင်ပါတယ်။ reloader ဆိုတာကတော့ secret တွေ configmap တွေကို စောင့်ကြည့်ပေးနေပြီး changes ဖြစ်တာနဲ့ သက်ဆိုင်ရာ workload တွေကို rollout လုပ်ပေးသွားမှာဖြစ်ပါတယ်။ အဲ့လိုနဲ့ပဲ reloader က ကျွန်တော်တို့ရဲ့ kubernetes ပေါ်က workload တွေကို configuration changes တွေနဲ့အမြဲ sync လုပ်ပေးနေမှာဖြစ်ပါတယ်။
why reloader?
- no manual restart: secret တွေ changes ဖြစ်တာနဲ့ workload တွေကိုပါ rollout လုပ်ပေးတာမလို့ manual restart လုပ်ပေးဖို့မလို
- secure by design: workload တွေမှာ latest config/secret တွေကိုပဲ အမြဲသုံးပေးခြင်း
- flexible: အဓိက workload type တွေနဲ့ အကုန်အသုံးပြုလို့ရခြင်း eg — deployment, statefulSet, daemonset, argocd
- fast feedback loop: secrets တွေ မကြာခဏ changes ဖြစ်တတ်တဲ့ CICD pipeline တွေအတွက်အသုံးပြုနိုင်ခြင်း
how to use it?
reloader အသုံးပြုပုံကရိုးရှင်းပါတယ်။ workload ရဲ့ annotations မှာ reloader.stakater.com/auto: "true" ကို ထည့်ပေးလိုက်ရင်ရပါပြီ။ အဲ့ဒါဆိုသူက configmap ၊ secrets အကုန်လုံးကိုစောင့်ကြည့်နေမှာဖြစ်ပြီး workload မှာသုံးထားတဲ့ secret တွေ changes ဖြစ်တာနဲ့ rollout လုပ်ပေးမှာဖြစ်ပါတယ်။
other features?
reloader မှာတစ်ခြား feature တွေလည်းပါဝင်ပါသေးတယ်။
- ignore annotation: တစ်ချို့ secret တွေ configmap တွေကို reloader ကနေ ignore လုပ်စေချင်တယ်ဆိုရင်အဲ့ဒီ secret / cm တွေမှာ reloader.stakater.com/ignore: "true" အဲ့ဒီ annotation ကိုထည့်ပေးရပါမယ်။
- alerts on reload: reloader ကနေ workload တွေကို rollout လုပ်ပေးပြီးတဲ့အခါတိုင်းမှာ slack, google chat တို့ကို alert ပို့ပေးတာမျိုးလည်း လုပ်လို့ရပါတယ်။
- pause deployments: ဒါကတော့ workload တွေ rollout လုပ်တာကို pause လုပ်ဖို့အတွက် duration (eg- 5m, 7m ) ဖြစ်ပါတယ်။ ခဏလေးအတွင်းမှာ secret တွေ update လုပ်တာများပြီး multi restart ဖြစ်တာကို ကာကွယ်ဖို့အတွက်ဖြစ်ပါတယ်။
စိတ်ဝင်စားလို့ အသုံးပြုချင်ရင်တော့ reloader ရဲ့ github link ကနေ လေ့လာလို့ရပါတယ်။
Discussion
Join the conversation
How do you feel about this article?
Comments
Sign in to join the conversation
Sign in to be the first to comment!
Share Your Article
Share with your professional network
Recent Articles

AWS - Application Load Balancer
Elastic Load Balancing (ELB) ELB ဆိုတာကတော့ request တွေကို တစ်နေရာတည်းမှ လက်ခံကာ Amazon EC2 instances၊ containers, etc.....

Terraform Day 3: Benefits of Terraform State
Terraform ကိုလေ့လာ တဲ့အခါ ကျွန််တော်တို့ရဲ့ Project Folder ထဲမှာ terraform.tfstate ဆိုတဲ့ ဖိုင်လေးကို တွေ့ဖူးကြပါလိမ့်မယ...

Terraform Day 2: Essential IaC Principles You Must Know
မနေ့ကတော့ Terraform အကြောင်း အကြမ်းဖျင်း Concept ကို ပြောပြခဲ့ပြီးပြီဆိုတော့ ဒီနေ့မှာတော့ Terraform ကို Professional ကျက...

TCP/IP Protocol
အားလုံးပဲမင်္ဂလာပါ။ ဒီနေ့ ကျွန်တော်တို့ TCP/IP Protocol အကြောင်း ဆွေးနွေးသွားပါမယ်။ ပထမဆုံးအနေနဲ့ TCP/IP ရဲ့ History လေး...

Terraform Day 1: Introduction to IAC and Terraform
ကျွန်တော်တို့ cloud အကြောင်း စပြောကြပြီဆိုရင် အရင်ဆုံး ခေါင်းထဲရောက်လာတာ Console ထဲဝင်၊ UI ကနေ ခလုတ်လေးတွေ လိုက်နှိပ်ပြီ...

