ဒီနေ့မှာတော့ argo cd နဲ့ flux cd တို့ရဲ့ ကွာခြားချက်တွေကို ပြောပြပေးပါမယ်။ သူတို့နှစ်ခုစလုံးဟာ gitops ကို အသုံးပြုတဲ့ နာမည်ကြီး tool တွေ ဖြစ်ပေမယ့် လုပ်ဆောင်ပုံနဲ့ အဓိကရည်ရွယ်ချက်တွေမှာ ကွာခြားချက်တွေ ရှိပါတယ်။
architecture
argo cd မှာ pull-based စနစ်ကို သုံးပါတယ်။ argo cd agent ကို kubernetes cluster ထဲမှာ install လုပ်ထားပြီး git repository ကို အချိန်တိုင်း စောင့်ကြည့်နေပါတယ်။ git ထဲမှာ ပြောင်းလဲမှုတစ်ခုခုရှိရင် argo cd က အဲဒီပြောင်းလဲမှုကို သိပြီး cluster ရဲ့ လက်ရှိအခြေအနေနဲ့ ကိုက်ညီအောင် sync လုပ်ပေးပါတယ်။ flux cd လည်း pull-based စနစ်ကိုပဲ အဓိကထားပါတယ်။ flux cd agent ကိုလည်း cluster ထဲမှာပဲ install လုပ်ထားပါတယ်။ git repository ကို monitor လုပ်ပြီး ပြောင်းလဲမှုရှိရင် cluster ကို sync လုပ်ပါတယ်။ flux cd ရဲ့ အဓိကအားသာချက်က git နဲ့ container registry ကို monitor လုပ်နိုင်စွမ်းပါ။ container registry မှာ image tag အသစ်တွေ့ရင် git manifest ထဲမှာ auto update လုပ်ပေးနိုင်ပါတယ်။ flux cd က fully declarative ဖြစ်ပြီး argocd မှာတော့ တစ်ချို့အရာတွေကို UI ကနေလုပ်လို့ရပါတယ်
user interface
argo cd မှာ ui ကနေ application တွေရဲ့ deployment status ကို live view နဲ့ မြင်နိုင်ပါတယ်။ pod, service, ingress စတဲ့ resource တစ်ခုချင်းစီရဲ့ အခြေအနေကို ကြည့်ရှုနိုင်ပြီး logs, events, manifest တွေကိုလည်း အလွယ်တကူ ကြည့်ရှုနိုင်ပါတယ်။ rollback လုပ်တာ၊ sync လုပ်တာ၊ healthy status ကို စစ်ဆေးတာ စတာတွေကို ui ကနေပဲ click တစ်ချက်နှိပ်ရုံနဲ့ လုပ်နိုင်ပါတယ်။ flux cd မှာတော့ built-in ui မပါပါဘူး။ command line interface (cli) ကို အဓိကထားပြီး အသုံးပြုရပါတယ်။ weave gitops နဲ့ ချိတ်ဆက်ပြီး ui ကို အသုံးပြုနိုင်ပါတယ်။ ဒါပေမယ့် argo cd လို ပြည့်စုံတဲ့ ui မျိုးတော့ မဟုတ်ပါဘူး။
core functionality
argo cd က application deployment ကို ဦးစားပေးပါတယ်။ application တစ်ခုချင်းစီကို စီမံခန့်ခွဲရာမှာ အားသာချက်ရှိပါတယ်။ application တွေရဲ့ status ကို ကျယ်ကျယ်ပြန့်ပြန့် သိနိုင်ပြီး ပြဿနာရှာဖွေဖြေရှင်းရာမှာ ပိုအဆင်ပြေပါတယ်။ argo cd မှာ argocd image updater က သီးသန့် plugin တစ်ခုအနေနဲ့ ရှိပါတယ်။ image တွေ update ဖြစ်ဖို့ဆို အဲဒီ plugin ကို သုံးရမှာ ဖြစ်ပါတယ်။ flux cd ကတော့ automation ကို ပိုပြီး အလေးထားပါတယ်။ image automation က flux cd ရဲ့ ထူးခြားတဲ့ လုပ်ဆောင်ချက်တစ်ခု ဖြစ်ပါတယ်။ container registry မှာ image အသစ်တစ်ခု ရောက်လာတာနဲ့ git repository ထဲက manifest မှာ ပါတဲ့ image tag ကို အလိုအလျောက်ပြောင်းပေးနိုင်ပါတယ်။
community & adoption
argo cd က သူ့ရဲ့ ui ကြောင့် လူကြိုက်များပြီး strong ဖြစ်တဲ့ community တစ်ခု ရှိပါတယ်။ cncf (cloud native computing foundation) ရဲ့ project တစ်ခု ဖြစ်ပါတယ်။ web ui ပါတာကြောင့် သုံးရလွယ်ပြီး အများစုက သုံးစွဲလာပါတယ်။ flux cd ကလည်း cncf ရဲ့ project တစ်ခုဖြစ်ပြီး gitops ရဲ့ မူလအစကို တည်ထောင်ခဲ့တဲ့ weaveworks ကနေ စတင်ခဲ့တာ ဖြစ်ပါတယ်။ argo cd လိုမျိုး လူသိမများပေမယ့် automation ပိုင်းနဲ့ cli ကို ပိုနှစ်သက်တဲ့ သူတွေကြားမှာ ရေပန်းစားပါတယ်။
အတိုချုပ်ရရင် argo cd က ui-driven ဖြစ်ပြီး application deployment တွေကို မြင်သာအောင် ကြည့်ချင်တဲ့သူတွေအတွက် ရွေးချယ်သင့်ပါတယ်။ flux cd ကိုတော့ automation-focused ဖြစ်ပြီး cli ကို ကျွမ်းကျင်စွာအသုံးပြုလိုတဲ့သူတွေအတွက် ပိုသင့်တော်ပါတယ်။
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 ကနေ ခလုတ်လေးတွေ လိုက်နှိပ်ပြီ...

