Home Lab ရှိခြင်း အနုပညာ
Beginning
ကောလိပ်ကျောင်းသားဘဝ အချိန်ပိုင်းအလုပ်ကတဖက်၊ ကျောင်းကတဖက်မို့ အခြားကိုယ်ပိုင်အချိန်မှာတော့ အပေါင်းအသင်းတွေနဲ့ သွားသွားလာလာ အချိန်တွေပိုများခဲ့ပါတယ်။ အခြားသူငယ်ချင်းတွေကလည်း ကိုယ့်လိုပဲ ဘဝတူတွေမို့လို့ ကိုယ့်လိုပဲ အချိန်တွေကို အတူတူဖြတ်သန်းကြပါတယ်။ အဲ့ဒီအချိန်က ငယ်ဘဝတွေကို ပြန်မရတော့ပါဘူး။ အချိန်တွေလည်း ပြောင်းခဲ့သလို၊ ဘဝတွေလည်း အချိန်တခုကို ဖြတ်သန်းပြီးနောက် အပြောင်းလဲကြီး ပြောင်းလဲခဲ့ရပါတယ်။ အချို့လည်း ကိုယ့်နားမှာ မရှိတော့သလို၊ အဝေးတနေရာမှာတောင် မရှိကြတော့ပါဘူး။ အဲ့ဒီအချိန်တွေလည်း ပြန်မလိုချင်တော့ပါ၊ စမြုတ်ပြန်ရုံသက်သက်မို့ ဟိုအချိန်တွေကို ပြန်တွေးမိသမျှပါပဲ။ အသက်အရွယ် တခုရောက်တဲ့အချိန်မှာ ကိုယ်စိတ်တွေမလေမလွှင့်ရအောင် ဝါသနာအသစ်သစ်တွေ လိုပါတယ်။ ကိုယ်တိုင်လည်း အချိန်တခုမှာ အခြေကျလာတာနဲ့ အမျှ အသစ်အသစ်သော ဝါသနာတွေကို မွေးမြူလာခဲ့မိတာ အခုဆိုရင်တော်တော်လည်း အနယ်ထိုင်လာတဲ့ အပိုင်းတွေရှိလာပါပြီ။ အဲ့ဒီထဲ စာရေးသူ မွေးမြူလာခဲ့ ဝါသနာထဲမှာ home lab တခုတည်ဆောက်ပြီးတော့၊ ကိုယ်ပိုင် စမ်းသပ်မှု မျိုးစုံလုပ်တာ အခုဆိုရင် ဆယ်စုနှစ် တစ်ခုနီးပါး ရှိလာပါတော့မယ်။
အစတုန်းကတော့ Microsoft ရဲ့ server environment ကိုလေ့လာဖို့ အတွက်ကိုယ့်ရဲ့ PC ပေါ်မှာပဲ VMware Workstation နဲ့ virtual machines (VMs) တွေကို စမ်းသပ်တည်ဆောက်ခဲ့ပါတယ်။ စာရေးသူ အတွက်က နည်းပညာတွေဟာ အစိမ်းသပ်သပ်မဟုတ်ပေမယ့်လည်း practical skill မှာတော်တော်လေး အားနည်းခဲ့ပါတယ်။ နည်းပညာ ကောလိပ်မှာ IT Networking ကို အချိန်ပိုင်းသင်ကြားပြသနေရင်းကနေ technical hands-on တွေနဲ့ရင့်ကျက်တဲ့ နည်းပညာသမားတစ်ယောက်ဖြစ်ချင်တဲ့ စိတ်တခုတည်းနဲ့ Helpdesk Support/Admin role ကနေပြန်လည် စတင်ခဲ့ပါတယ်။ ပြဿနာက အချို့အကြောင်းအရာတွေက practical အတွေ့အကြုံမရှိပဲနဲ့ သေသေချာချာ သိနိုင်ဖို့ဆိုတာတော်တော်လေးခက်ခဲပါတယ်။ ဒါကြောင့်လည်း အလုပ် interview တွေကိုသွားတဲ့အခါမှာ၊ interviewer ကမေးတဲ့ မေးခွန်းတွေကို ထဲထဲဝင်ဝင် မဖြေနိုင်ခဲ့ပါဘူး။ အလုပ် interview တခုပြီးတိုင်း ကိုယ်မသိတာတွေအများကြီး ရှိနေသေးပါလားဆိုတာ ပိုပိုသိလာတယ်။ အဲ့ဒီတုန်းက တော်တော်လေးကို စိတ်မချမ်းမသာ ဖြစ်ရတာတော့အမှန်ပါ။ စာရေးသူကို ဘေးမှာလမ်းပြပေးမည့်သူလည်း မရှိခဲ့ပါဘူး။ ဘယ်ကနေ ဘယ်လိုစလိုက်ရမယ်ဆိုတာကိုလည်း မတွေးနိုင်ခဲ့ပါဘူး။ အခုပြန်စဉ်းစားတော့ ရယ်ဖို့တောင်ကောင်းသား ငါ့ကောင်ရာလို့ တွေးမိပါရောဗျာ။ ဘယ်လိုပဲဖြစ်ဖြစ် စာရေးသူ မခံချင်စိတ်နဲ့သာ အမှောင်ထဲမှာ စမ်းတဝါးဝါး ဟိုစမ်းဒီစမ်းနဲ့ပဲ ဆေးမီးတို တော်တော်များများ စတင်စုဆောင်းမိလာပါတော့တယ်။ တခုသော ဆေးမီးတိုကတော့ home lab ပါ။ မလုပ်ရင် မတတ်လို့၊ တတ်အောင် လုပ်ရပါတော့တယ်။ လုပ်ပါများတော့၊ ဘယ်နည်းဟာဖြင့် အမှန်၊ ဘယ်နည်းဟာဖြင့် အမှားဆိုပြီး ခွဲခြားသိမြင်လာပါတော့တယ်။
Evolution
Home lab ဆိုတဲ့နေရာမှာလည်း စတာနဲ့ server rack တွေထဲမှာ server တွေ၊ SAN တွေ၊ switch တွေ၊ router တွေကိုရှိရှိသမျှ ဝယ်ပြီးတော့ setup လုပ်တာမျိုးတော့ မဟုတ်ပါဘူး။ စာရေးသူမှာ ရှိတဲ့ resource လေးတွေနဲ့ အလုပ်ဖြစ်အောင် လုပ်ရပါတယ်။ ကိုယ်တိုင်က စစချင်းတုန်း home lab တခုတည်ဆောက်ဖို့ အတွေ့အကြုံမရှိလို့၊ အခြားသူတွေဆို ဘယ်လိုမျိုးလုပ်သလဲဆိုတာကို blog တွေမှာလိုက်ဖတ်၊ YouTube တွေမှာကြည့်နဲ့ပဲ အချိန်တွေအများကြီး ပေးခဲ့ရပါတယ်။ ဒါဟာလည်း အခုလိုမျိုး internet ခေတ်ကြီးထဲမှာ အရမ်းကြီးခက်ခဲတဲ့ဟာ မဟုတ်ပေမယ့်လည်း၊ အတွေ့အကြုံ လုံးဝမရှိတဲ့ သူအတွက်တော့ ထင်သလောက်မလွယ်ပါဘူး။ YouTube tutorial video တခုကိုကြည့်ပြီး လိုက်လုပ်ရင် နာရီဝက်လောက်ကြာမှ ကိုယ်လုပ်နေတဲ့ဟာ ဆက်သွားမရတော့တာတွေ ခဏခဏဖြစ်ပါတယ်။ ဒီတော့မှ အခြားသော resource တွေမှာ ပြန်ဖတ်ရ၊ ပြန်ကြည့်ရနဲ့ အချိန်တွေ အများကြီး ပေးရပါတယ်။ အဲ့ဒီ ထပ်ခါထပ်ခါလုပ်ရတဲ့ လုပ်ငန်းစဉ်မှာ ကိုယ်ဘက်က နည်းနည်း သဘောပေါက်လာတဲ့နဲ့ အကြောင်းအရာတခုကို တကယ်ကိုပဲ ကိုယ်တိုင်သင်ကြား တတ်မြောက်ရပါတယ်။ ဒါဟာတကယ်ကို ကောင်းမွန်တဲ့ အတွေ့အကြုံတခုပါ။ အရသာ သိတဲ့သူအတွက်တော့ ထပ်ခါထပ်ခါ ပြန်လည် ခံစားမိချင်တတ်ပါတယ်။ ဒီအတွက် ကိုယ်လုပ်ချင်တိုင်း လုပ်လို့ရမည့် home lab တခုကတော့ လိုအပ်ပါတယ်။ ကဲ... စာရေးသူရဲ့ home lab ကိုဘယ်လိုမျိုးစခဲ့ပြီးတော့၊ ဘယ်လိုမျိုး အဆင့်ဆင့်ပြောင်းလဲခဲ့သလဲဆိုတာတချက်လောက် လေ့လာကြည့်ရအောင်။
version 0.1
Poor man's home lab
Sysadmin / Helpdesk role ကို ပထမဆုံးလုပ်တော့ လုပ်ဖော်ကိုင်ဖက်တစ်ယောက်၊ အလုပ်မှာလုပ်ရင်းကိုင်ရင်း သင်ကြားတာအပြင် အိမ်မှာလည်း home lab နဲ့ ကိုယ်ပိုင် environment တခုရှိသင့်တယ်လို့ ဆိုလာတယ်။ အဲ့ဒီ role မှာက Windows Active Directory Server တွေရယ်၊ Windows Exchange Email Server တွေရယ်နဲ့ ထိတွေ့ရတာများပါတယ်။ ပြီးတော့ network security အတွက်တော့ Cyberoam UTM တွေကို အသုံးပြုတာများပါတယ်။ Small-to-Medium Business (SMB) တွေအတွက် Managed Service Provider (MSP) တခုဖြစ်ပါတယ်။ များသောအားဖြင့် Windows Server migration၊ Exchange Server migration တွေကိုလည်း မကြာခဏဆိုသလိုလုပ်ရပါတယ်။ အခြားသော IT နဲ့ပတ်သတ်တဲ့ service တွေကိုလည်း လုပ်ရပါတယ်။ ဒီတော့ အလုပ်ပြီးရင် အိမ်ရောက်တာနဲ့ အလုပ်မှာလုပ်တဲ့ဟာမှန်သမျှကို ပြန်လည်စမ်းသပ်လေ့လာဖို့ စတင်ပြင်ဆင်ရပါတော့တယ်။ အဲ့ဒီတုန်းက စာရေးသူမှာ custom PC တခုရှိပါတယ်။ Gaming အတွက်မဟုတ်ပဲနဲ့ home lab ဖို့အတွက် CPU နဲ့ RAM မှာတော်တော်လေးတော့ဖြုန်းထားတယ်လို့ မှတ်မိပါတယ်။ CPU က Quad Core ပဲပါတဲ့ AMD CPU တခုပါ။ Athlon လား၊ Phenom လားဆိုတာတော့ ကောင်းကောင်းမမှတ်မိတော့ပါဘူး။ RAM ကလည်း 16 GB လောက်ထိရှိမယ်ထင်ပါတယ်။ အသေးစိတ် specs ကိုတော့ မမှတ်မိတော့ပါ။
သို့သော်... အဲ့ဒီ PC ပေါ်မှာပဲ VMware Workstation ကို install လုပ်ပြီးတော့ VM တွေကိုဖန်တီးခဲ့ရပါတယ်။ စာရေးသူ... အဲ့ဒီတုန်း PC ပေါ်မှာလည်း Windows 7 Professional ကိုသုံးပါတယ်။ Linux ကိုတွင်တွင်ကျယ်ကျယ် အိမ်မှာမသုံးဖြစ်သေးတာကို မှတ်မိနေပါတယ်။ ဒါကြောင့် VM ၃လုံးထက်ပိုပြီးတော့ တပြိုင်နက်တည်း run ရင် တော်တော်လေးကို နှေးလွန်းလှပါတယ်။ Windows Server VM တခုရဲ့ specs ကလည်း host machine မှာရှိတဲ့ resource တော်တော်များများကိုယူပါတယ်။ နောက်ဆုံးတော့... Windows Server တလုံးပေါ်မှာပဲကိုယ် စမ်းသပ်ချင်တဲ့ application/software တွေအကုန်လုံးကို install လုပ်ပြီးတော့ စမ်းသပ်ရပါတော့တယ်။ ဥပမာ - Windows AD နဲ့ Exchange Mail Server ကို VM တခုတည်းမှာ install လုပ်ပြီးတော့ Exchange Server နဲ့ AD ဘယ်လိုမျိုးတွဲပြီးတော့ သုံးရသလဲ၊ setup လုပ်ရသလဲဆိုတာတွေကို စမ်းသပ်ပါတယ်။ ISO တွေကတော့ Microsoft Evaluation ဖြစ်ဖြစ်၊ ကောလိပ်တုန်းက ကျောင်းသားအကောင့်နဲ့ ရထားတဲ့ Microsoft DreamSpark ကနေ download ဆွဲရပါတယ်။ ကိုယ်လိုချင်တဲ့ ISO မရှိရင်တော့၊ crack လုပ်ထားပြီးသား ISO တွေကို Google ပေါ်ကနေရှာပြီးတော့ သုံးရပါတော့တယ်။ ဒါကတော့... စာရေးသူ စစချင်းအသုံးပြုတဲ့ home lab environment တခုရဲ့ အနေအထားကို မှတ်မိသလောက် ပြန်ရေးချတာဖြစ်ပါတယ်။
Eating my own dog food
လုပ်ငန်းခွင်ဝင်နေပေမယ့်လည်း အစောပိုင်းမှာက စာရေးသူကိုယ်တိုင် setup လုပ်ထားတဲ့ environment သိပ်မရှိခဲ့ပါဘူး။ ကိုယ့်အရှေ့ senior တွေက setup လုပ်ပြီး ကိုယ်ကဝင် support လုပ်ရတဲ့ environment တွေပဲဖြစ်တာမို့၊ system တွေကို ဘယ်လိုမျိုး production environment မှာ setup လုပ်ရသလဲ ဆိုတာ သိပ်ပြီးမသိခဲ့ပါဘူး။ ဒီတော့... ကိုယ့် home lab ရှိနေတာမို့ ကိုယ် setup လုပ်ချင်တဲ့ environment ကိုယ်တိုင်ဖန်တီးခွင့်တွေ ရလာခဲ့ပြီးသကာလ၊ ဟုတ်ပြီ system တခုကို setup လုပ်တာသိပြီ၊ ဒါကြီးကို production environment တခုမှာ အသုံးပြုလို့ ရမရကို မသေချာခဲ့ပါဘူး။ နောက်ဆုံးတော့... ကိုယ်တိုင်စမ်းသပ် တည်ဆောင်ထားတဲ့ home lab ထဲက system တွေကို ကိုယ့်အိမ်က network မှာဘယ်လိုမျိုး အသုံးပြုနိုင်သလဲဆိုတာ စတင်ပြီးအဖြေရှာခဲ့ပါတယ်။ ဥပမာ Pi-hole ad blocker တို့၊ Plex media server ဆိုတာမျိုးဟာ စာရေးသူ အိမ်မှာအသုံးပြုနိုင်မယ့် use case တွေအများကြီးထွက်လာခဲ့ပါတယ်။ တဖြေးဖြေးနဲ့ Gitea လိုမျိုး self-hosted service တွေကိုလည်း စမ်းသပ်အသုံးပြုလာခဲ့ပါတယ်။
စစချင်းမှာတော့ ကောလိပ်တုန်းကရတဲ့ Windows Server 2012 R2 ISO နဲ့ သူ့ရဲ့ license key ကို အိမ်မှာမသုံးတော့တဲ့ PC အဟောင်းတလုံးပေါ်မှာ စတင် install လုပ်ပြီးတော့ production environment တခုတည်ဆောက်ခဲ့ပါတယ်။ ပြီးတော့ အဲ့ဒီ server ပေါ်မှာပဲ Hyper-V ကို hypervisor အနေနဲ့ run ပြီးတော့ VM တွေကိုထပ် run ခဲ့ပါတယ်။ ရှိသမျှ resource တွေအကုန်လုံးနီးပါး utilise လုပ်ပြီးတော့ အလုပ်ဖြစ်တဲ့ environment တခုအနေနဲ့ တော်တော်လေးကြာကြာ အသုံးပြုဖြစ်ခဲ့ပါတယ်။ Backup solution အတွက် Veeam ကိုလည်း အဲ့ဒီ server ပေါ်မှာပဲတင် run ခဲ့ပါတယ်။ တော်တော်လေးကို အဆင်ပြေပြီးတော့ ပြီးပြည့်စုံတဲ့ ပထမဆုံး production environment တခုကို ကိုယ်တိုင် ဖန်တီးခွင့်၊ အသုံးပြုခွင့် ရခဲ့ပါတယ်။
အဲ့ဒီနောက်မှာတော့... ရှိတဲ့ တပတ်ရစ် PC အဟောင်းလေးတလုံးတည်းနဲ့ပဲ WD Red NAS hard drive လေးလုံး၊ power supply ကို Watts ပိုများတဲ့ဟာ upgradeလုပ်၊ RAM ကိုလည်း ရှိသမျှလေးတွေစုပေါင်းထည့်ရင်း PC ပုံစံ၊ ကောင်းကောင်း သုံးလို့ရတဲ့ server လေးတလုံးဖြစ်ခဲ့ပါတယ်။ ကိုယ်တိုင်ဆင်၊ ကိုယ်တိုင် setup လုပ်၊ ကိုယ်တိုင် maintain လုပ်ပြီးတော့ ကိုယ်တိုင်ပဲ ဂုဏ်ယူစွာ ပြန်လည်အသုံးချခဲ့တဲ့ အိမ်က ကိုယ်ပိုင် production environment လေးတခုပါ။ Ultimate home lab ရယ်လို့မဟုတ်သော်လည်း စာရေးအတွက်တော့ အစုံစမ်းသပ်လို့ရတဲ့ environment လေးတခုပါ။ အိမ်က မိသားစုကလည်း ကိုယ်ဆင်ထားတဲ့ setup ကြောင့်အဆင်မပြေဘူးဆိုရင်လည်း ကိုယ်တိုင် firefighting လုပ်ရ၊ support လုပ်ရ၊ maintain လုပ်ရနဲ့ အိပ်ရေးပျက်ရတဲ့ ညတွေလည်း အများကြီးရှိခဲ့ပါတယ်။ စာရေးသူအတွက်တော့ ကျေကျေနပ်နပ်ကြီး support လုပ်ရတဲ့ production environment တခုပါ။ အဲ့ဒီအတွေ့အကြုံတွေကလည်း ကိုယ့်အတွက် လုပ်ငန်းခွင်မှာ အများကြီးပြန်လည် အထောက်အကူဖြစ်စေခဲ့ပါတယ်။
version 1.0
Linux addict
တချိန်က Linux ကိုနည်းပညာသမားတစ်ယောက်အနေနဲ့ မရှိမဖြစ်လေ့လာရမယ်လို့ မတွေးမိဘူးပါဘူး။ အဲ့ဒါကြောင့်လည်း လုပ်ငန်းခွင်စတင်ဝင်စက တော်တော်ကြာအောင်လည်း မလေ့လာဖြစ်ခဲ့ပါဘူး။ နောက်ပိုင်းမှာတော့ MSP environment မှလုပ်တာဖြစ်တဲ့အတွက် အချို့သော Linux box တွေနဲ့ကြုံတွေ့တဲ့အခါမှာ အလုပ်က Linux admin ဘီးကြဲတွေဆီကို ခခယယတောင်းပန်ပြီးတော့ အကူအညီတောင်းရပါတယ်။ စာရေးသူ အနေနဲ့ တော်တော်လေးကို အဖြစ်မရှိသလိုခံစားမိခဲ့ရပါတယ်။ အဲ့ဒီ Linux admin ဘီးကြဲကလည်း အလုပ်မှာ သူတစ်ယောက်တည်း Linux နဲ့ပတ်သတ်ရင်သိတာတတ်တာမို့ နည်းနည်းတော့လည်း မောက်မာလွန်းပါတယ်။ ကိုယ့်မှာလည်း production environment ကြီးဆိုတော့ Linux အကြောင်းဘာမှ မသိတာမို့ မကြာခဏဆိုသလို သွားသွားပြီးတော့ အကူအညီတောင်းရများလာတော့ကာ ကိုယ်မသိရကောင်းမလားဆိုပြီးတော့ ကိုယ်ဟာကို တင်းမိပါတယ်။ ဒါကြောင့် Ubuntu Linux ကို Virtualbox ပေါ်မှာ VM အနေနဲ့ setup လုပ်ပြီးတော့ ဖြေးဖြေးချင်းစီ စတင်လေ့လာဖြစ်ခဲ့ပါတယ်။ စစပိုင်းမှာတော့ ကိုယ်ဘာလုပ်လို့ လုပ်မှန်းမသိတာကနေ Google ပေါ်မှာ ဟိုရှာဒီရှာနဲ့ နည်းနည်းလေး အဆင်ပြေလာပါတယ်။ Online မှာလည်း အချိန်ရှိရင်ရှိသလောက် self-pace course တွေကိုလည်း တောက်လောက်ဆိုသလို လေ့လာဖြစ်ခဲ့ပါတယ်။
စာရေးသူက အဲ့အချိန်တုန်းက Network Operations Centre (NOC) မှာ ညပိုင်းအချိန်အလုပ်ဆင်းရပါတယ်။ ညနေပိုင်း ၅ နာရီလောက်နေ စပြီးတော့ အလုပ်တက်ရပြီး သန်းခေါင်ကျော် ၁နာရီ ၂ နာရီလောက်ကျရင် အလုပ်ဆင်းပါတယ်။ များသောအားဖြင့် ညပိုင်းအချိန်တွေမှာ system patching နဲ့ software/firmware update တွေ၊ backup system report တွေ စသဖြင့် business hours အပြင်ဘက်မှာလုပ်ရတဲ့ ကိစ္စတွေကို အကုန်လုပ်ရပါတယ်။ အချို့ညတွေဆို ဘာမှလုပ်စရာထွေထွေထူးထူး မရှိလို့ self-pace online course တွေကို တော်တော်လေးကို လေ့လာဖြစ်ခဲ့ရပါတယ်။ အကျိုးရလဒ်ကတော့ စာရေးသူ Linux ကိုစတင် အကျွမ်းဝင်ရင်းနှီးလာပါတော့တယ်။ အဲ့ဒီတုန်းကတော့ ဘာမှရည်ရွယ်ချက်ကောင်းကောင်း ရှိပုံမပေါ်ပါဘူး။ Skill အသစ်ခုကိုလေ့လာမယ်ဆိုတာနဲ့ အလုပ်က Linux admin ဘီးကြဲကို မခံချင်စိတ်နဲ့ သိအောင်လေ့လာမှရမယ်ဆိုတာမျိုး လောက်ပဲဖြစ်ခဲ့မယ်ထင်ပါတယ်။ ဘယ်လိုပဲဖြစ်ဖြစ် အဲ့ဒီ ခံစားချက်အစိမ်းရောင်တွေက ကိုယ့်အတွက် တွန်းအားဖြစ်စေခဲ့တာအမှန်ပါ။ ဘဝမှာကိုယ့်ကို နင်းခြေသွားတဲ့ ပုဂ္ဂိုလ်တိုင်းကိုလည်း ဘုန်းကြီးပါစေသက်ရှည်စေ၊ အားလုံးစိတ်နဲ့ ကျန်းမာစေရယ်လို့လည်း ဆုတောင်းမေတ္တာ မကြာခဏပို့ရပါ၏။ ထိုထိုသော ပုဂ္ဂိုလ်များကြောင့်သာ စာရေးသူအတွက် စိတ်ခွန်အားဖြစ်ရသည်မှာ အမှန်ပါ။
Linux ကိုသုံးရတာ အဆင်တော်တော်လေးပြေလာတဲ့နောက်မှာတော့ စာရေးသူအိမ်မှာလည်း Linux server တွေကိုစတင်အသုံးပြုဖြစ်လာပါတယ်။ မှတ်မှတ်ရရ Ubuntu LTS server တွေနဲ့ CentOS တွေကို အကျွမ်းတဝင်မြတ်မြတ်နိုးနိုး သုံးစွဲဖြစ်ခဲ့တယ်။ Pi-hole ad blocker နဲ့ Plex media server တွေကို Linux server မှာ install လုပ်ပြီးတော့ စာရေးသူ အိမ်မှာ ကိုယ်ပိုင် production environment တစ်ခုကို စတင်တည်ဆောင်ဖြစ်၊ သုံးဖြစ်လာပါတော့တယ်။ စမ်းသပ်ဖို့အတွက်တော့ မတူတဲ့ lab environment တခုသီးသန့် ခွဲထားပါတယ်။ Linux ကိုစသုံးကတည်းက ကိုယ်စမ်းသပ်လို့ရတဲ့ အရာတွေဟာ အဆုံးအစမရှိ ပိုမိုလာခဲ့ပါတယ်။ ညတိုင်း သန်းခေါင်ကျော်မှ အိပ်ဖြစ်ပြီးတော့ နေ့တိုင်းဆိုသလို home lab ထဲမှာပဲ အချိန်တွေအများကြီး ကုန်စေခဲ့ပါတယ်။ ထိုမှစပြီး စာရေးသူလက်တွေ့သမား ဖြစ်လာတယ်၊ လုပ်တွေ့မှ မလုပ်ရင် ပညာရပ်တခု မတတ်မြောက်နိုင်ဘူးဆိုတာကို ယုံကြည်လာမိပါတယ်။ Opensource နဲ့ Free Software ကမ္ဘာက နတ်ဘုရားများကိုလည်း စတင်ကိုးစားလာမိပြန်ပါတယ်။
Hardware hoard
နှောင်းပိုင်းမှာ စာရေးသူ အဓိကထားသုံးတဲ့ PC ကို upgrade လုပ်ချင်တာကြောင့် hardware အသစ်တွေနဲ့ PC အသစ်တခုပြီးတော့ တခုဆင်ဖြစ်ပါတယ်။ မသုံးတော့တဲ့ PC အဟောင်းတွေကိုလည်း လိုအပ်တဲ့ hardware လေးတွေနည်းနည်းဝယ်ထည့်ပြီးတော့ home lab အတွက်၊ အိမ်က production environment အတွက်စတင်သုံးဖြစ်လာပါတယ်။ အလုပ်က မသုံးတော့တဲ့ decommission လုပ်ထားတဲ့ rackable HPE server အဟောင်းတွေကိုလည်း ပစ်ထုတ်မယ်အပုံထဲက ရွေးထုတ်ပြီး home lab အတွက်သုံးပါတယ်။ Power consumption နဲ့ noise ကတော်တော်လေး အဆင်မပြေတာကြောင့် low budget tower PC လေးတွေ အသုံးဖြစ်ခဲ့ ပြန်ပါတယ်။ နောက်ပိုင်းမှာတော့ Dell ရဲ့ optiplex small form factor PC တွေ၊ Lenovo ရဲ့ Xeon CPU နဲ့ Workstation တွေကို အဟောင်းတန်ထဲကနေ ပြန်လည်ဝယ်ယူပြီးအသုံးပြုဖြစ်ခဲ့ပါတယ်။ အခြားသော home lab enthusiast တွေလို rack တွေတန်းစီးပြီးတော့ server တွေ၊ storage တွေ၊ networking gear တွေ အများကြီးနဲ့ setup လုပ်ထားတာတော့ မဟုတ်ပါဘူး။ စာရေးသူအတွက်တော့ Minimum Viable Product (MVP) အဆင့်လောက်သာဖြစ်တဲ့ home lab ပါ။ အစုံစမ်းသပ်လို့ ရတဲ့ home lab လေးပါ။ ဒါ့အပြင် Dell နဲ့ Lenovo laptop အဟောင်းတွေကိုလည်း distro hopping အတွက်အသုံးပြုခဲ့ဖူးပါတယ်။
တပြိုင်တည်းမှာပဲ တဘက်မှာ ကိုယ်တိုင်က Linux fanboy တစ်ယောက်မို့၊ Raspberry Pi လိုမျိုး low power/budget efficiency ကောင်းတဲ့ System on Chip (SoC) platform တွေကိုလည်းစတင်တွေ့ရှိမိလာပါတယ်။ စမ်းသပ်ဖို့အတွက် စာရေးသူ ဝယ်ထားတဲ့ Raspberry Pi မျိုးစုံတွေနဲ့ သူရဲ့ accessories ဟာလည်း အံဆွဲထဲမှာဗူးနဲ့ အပြည့်ရှိနေခဲ့ပါတယ်။ အဲ့ဒီတုန်းက Raspberry Pi ကို စျေးချိုချိုသာနဲ့ ဝယ်လို့ရတဲ့ အချိန်မို့ home lab သမားတွေအတွက်တော့ တကယ့်ကို ကစားစရာ ပမာထွက်သမျှလိုချင်၊ လိုချင်သမျှ ဝယ်ခဲ့တဲ့အတွက် ပိုပိုများများလာပါတော့တယ်။ ARM CPU အကြောင်းတွေလည်း တဖြည်းဖြည်းလေ့လာဖြစ်ခဲ့ပါတယ်။ အခုအချိန်မှာတော့ ARM လို့ပြောလိုက်ရင် Apple M1/M2/M3 chip တွေကို လူတွေအသိများပါတယ်။ သို့သော် ARM CPU တွေကို Android ဖုန်းတွေ၊ Raspberry Pi လိုမျိုး SoCs platform တွေ၊ Chromebook တွေမှာ အသုံးပြုထားတာကို သာမန်လူတွေ အနေနဲ့ သိကြမှာမဟုတ်ပါဘူး။ Marketing နဲ့ delivery မှာအလွန်ကောင်းတဲ့ Apple M* silicon တွေထွက်လာမှသာ Intel x86 CPU အပြင် နောက်တမျိုးရှိသေးပါလား ဆိုပြီးသိလာကြပါတယ်။ ARM အပြင် RISC-V လိုမျိုး CPU တွေကိုလည်း မကြာခင်မှာ popularise လုပ်လာနိုင်မယ်လို့ မျှော်လင့်ရပါတယ်။ တချိန်က Apple ဟာ PowerPC ရယ်လို့ RISC ကို အသုံးပြုခဲ့သော်လည်း critical mass မဖြစ်ခဲ့ပါဘူး။ အခုတခါတော့ ARM နဲ့ခရီးတော်တော်လေးရောက်နေပြီလို့ဆိုရမှာပါ။
version 1.1
Enter the BSD Realm
Linux အပြင်စိတ်ဝင်စားတဲ့ အခြား Operating System တွေထဲမှာ BSD လည်းပါလာခဲ့ပါတယ်။ အရင်ဆုံး စာရေးသူအိမ်မှာသုံးလို့ရမယ့် opensource router/firewall solution တခုကို ရှာကြည့်တော့ pfSense ဆိုတာကို အရင်ဆုံးရှာတွေ့ပါတယ်။ နောက်မှပဲ pfSense ကို Netgate ကဝယ်လိုက်ပြီးတဲ့နောက် developer အချို့က Netgate ရဲ့လမ်းညွှန်မှုအောက်မှ မနေချင်လို့ OPNsense ဆိုပြီး pfSense ကို fork လိုက်ကြပါတယ်။ ဒါကြောင့်... စာရေးသူလည်း pfSense ကိုသုံးနေရင်းကနေ OPNsense ရဲ့ ဦးတည်ရာကို ပိုပြီးကြိုက်နှစ်သက်လို့ OPNsense ကိုတခါပြောင်းသုံးပါလေရော။ ဒီလိုနဲ့ မထင်မှတ်ပဲ BSD ရဲ့ Ecosystem ကိုရောက်မှန်းမသိရောက်၊ ကြိုက်မှန်းမသိ စကြိုက်မိလာခဲ့ပါတယ်။ BSD မှာရှိတဲ့ distro တွေအားလုံးရဲ့ လားရာက stability နဲ့ security ဖြစ်တာမို့ ကိုယ့်ရဲ့ environment ထဲမှာစိတ်ချလက်ချ run လို့ရတဲ့ system မျိုးပါ။ Linux လောက်လူတွေစိတ်ဝင်စားခြင်း မခံရတဲ့အတွက်၊ သူ့ရဲ့ community ကလည်း Linux မှာလောက်မကြီးပါဘူး။ စာရေးသူ တကိုယ်ရေ အမြင်နဲ့ဆိုရင်တော့ Linux အပြင် BSD လို့မျိုး ထပ်ပြီးရွေးချယ်စရာရှိတာ opensource အတွက်ကောင်းတဲ့ အနေအထားတခုပါ။
OPNsense firewall appliance ကို စာရေးသူ အိမ်မှာ အဓိက internet gateway firewall အနေနဲ့ တော်တော်ကြာကြာသုံးဖြစ်လိုက်ပါသေးတယ်။ Internet လိုင်းကိုလည်း နှစ်ခုထားပြီးတော့ load balancing နဲ့ fail over configuration တွေအကုန်လုံးကိုလည်း စမ်းသပ်ခွင့်ရခဲ့ပါတယ်။ ဒါ့အပြင် OpenVPN server နဲ့ Wiregaurd server တွေကိုလည်း အဲ့ဒီ appliance ပေါ်မှာပဲ ထားပြီးတော့ အသုံးချခဲ့ပါတယ်။ Hardware ကိုတော့ 4 x Intel(R) Celeron(R) CPU J1900 နဲ့လာပြီး 1GB Ethernet port ၅ခုပါတဲ့ fanless/passive cooling mini PC တခုကို AliExpress ကနေဝယ်ပြီးတော့ အသုံးပြုခဲ့ပါတယ်။ တော်တော်လေးကို solid လည်းဖြစ်၊ versatile လည်းဖြစ်တဲ့ hardware platform တစ်ခုပါ။ နောက်ပိုင်းမှာတော့ built-in Wireless AP မပါလို့ Mikrotik networking gear တွေကို တဖန်သုံးပြန်ပါတယ်။
BSD ကို pfSense/OPNsense လိုမျိုး internet gateway firewall appliance အပြင်၊ FreeNAS / TrueNAS ဆိုတဲ့ enterprise grade NAS appliance အနေနဲ့လည်းသုံးခဲ့ဖူးပါတယ်။ သူ့မှာပါဝင်တဲ့ feature တွေက တော်တော်လည်းစုံပါတယ်။ ZFS ကို filesystem အနေနဲ့ အသုံးပြုပြီးတော့ စမ်းသပ်လို့ရနိုင်သမျှတွေကို စမ်းသပ်ဖြစ်ခဲ့ပါတယ်။ စာရေးသူ အနေနဲ့တော့ set and forget လိုမျိုး system တွေကို ကိုယ့်အိမ်အတွက် setup လုပ်ချင်ရင်တော့ BSD ကို အခြေခံထားတဲ့ appliance တွေကို စမ်းသပ်အသုံးပြုသင့်ပါတယ်။ သို့သော်... Linux လိုမျိုး Desktop Environment (DE) နဲ့သုံးရင်တော့ ထင်သလောက်အဆင်ပြေမှာ မဟုတ်ပါဘူး။ ပြောင်းလဲပြီးတော့ ကြိုးစားကြည့်ပါသေးတယ်။ ကိုယ်သုံးနေကျ Linux က workflow တော်တော်များများကို တိုက်ရိုက်ပြောင်းလဲယူသုံးဖို့ မလွယ်ခဲ့ပါဘူး။ OPNsense တို့၊ TrueNAS တို့လိုမျိုး appliance အနေနဲ့တော့ သုံးဖို့တော်တော်လေး အဆင်ပြေတဲ့ operating system တခုပါ။
ဒီစာကိုရေးနေရင်း TrueNAS သတင်းတက်လာတာက၊ BSD ကိုအခြေခံပြီးတော့ NAS appliance လုပ်ထားတဲ့ TrueNAS Core ကိုအဆုံးလိုက်ပြီဆိုတဲ့ သတင်းပဲဖြစ်ပါတယ်။ TrueNAS Scale ကတော့ Debian ကိုအခြေခံထားတာဖြစ်ပြီး၊ နောက်ပိုင်းလူသုံး ပိုများလာလို့လည်း ထင်ပါတယ်။ စာရေးသူ အမြင်မှတော့ BSD ကိုလည်း တဘက်ကလည်း ရသလောက် သိထားလေ့လာသင့်ထားတဲ့ operating system (OS) လို့ထင်ပါတယ်။ Opensource ကမ္ဘာအတွက် Plan B ဆိုရင်လည်း မမှားနိုင်ပါဘူး။
version 2.0
Crazy little thing called Proxmox
Windows Server 2012 R2 ကို production environment အနေနဲ့တော်တော်ကြာကြာသုံးပြီးနောက်မှာတော့၊ end of life မတိုင်ခင် တစ်နှစ်၊ နှစ်နှစ်လောက်မှာ setup လုပ်တဲ့ပုံပြောင်းချင်စိတ်ပေါက်လာပါတော့တယ်။ အရင်ဆုံး VMware ESXi ကို သုံးဖို့စိတ်ကူးဖြစ်ပါတယ်။ သို့သော်... latest ISO ကို ရဖို့အတွက် VMware အကောင့်နဲ့ဝင်ရ download ဆွဲရဆိုတော့ စိတ်ထဲမှာအရင်တုန်းကလိုမျိုး စိတ်မရှည်တော့ပါ။ ဒါနဲ့ Promox ကိုစမ်းသပ်ဖို့ စတင်စိတ်ဝင်စားခဲ့ပါတော့တယ်။ Enterprise နဲ့ Data Centre တွေမှာ Promox ကို Hypervisor အနေနဲ့သုံးတာ စာရေးသူမကြုံဘူးပါ။ VMware vSphere နဲ့ vCenter၊ ဒါမှမဟုတ်ရင် Linux QEMU/KVM နဲ့ OpenStack တို့ကို အသုံးများကြတယ်လို့ သိထားခဲ့ပါတယ်။ Proxmox ကတော့ Debian Linux QEMU/KVM ကို VMware ESXi လိုသုံးရလွယ်အောင်လုပ်ပေးထားတဲ့ hypervisor တခုဖြစ်ပါတယ်။ ပိုပြီးတော့ စိတ်ဝင်စားဖို့ကောင်းတာက LXD/LXC ကို out-of-the-box experience အနေနဲ့ ထည့်ပေးထားပါတယ်။ ရှိတဲ့ hardware ပေါ်မှာပဲ Windows Server 2012 R2 ကိုဖြုတ်ပြီး Proxmox ကိုပြန်လည် installation လုပ်ပြီးတော့ စတင်အသုံးပြုခဲ့ပါတယ်။
Proxmox ပေါ်မှာမှ VM တွေ၊ LXC တွေကို run ပြီးတော့ ကိုယ်လိုချင်တဲ့ service ကို spin up လုပ်ပါတယ်။ ဥပမာ - TrueNAS ကို VM အနေနဲ့ install လုပ်ပြီးတော့၊ WD Red NAS drive တွေကို အဲ့ဒီ VM ဆီကို pass-thru လုပ်ပြီး NAS ကို setup လုပ်ပါတယ်။ Plex တို့၊ Docker တို့လိုမျိုး service တွေကိုတော့ LXC နဲ့ပဲ setup လုပ်ပါတော့တယ်။ Docker container တွေကို LXC container ပေါ်မှာတင် run တဲ့အတွက် resource utilisation ကတော်တော်လေးကို efficient ဖြစ်ခဲ့ပါတယ်။ စာရေးသူလည်း LXC ရဲ့ power ကိုအဲ့ဒီအချိန်ကျမှ အပြည့်အဝ unleash လုပ်ဖြစ်ခဲ့တယ်လို့ ဆိုရမှာပါ။
Big boy Lenovo ThinkStation
COVID-19 ကာလအတွင်းမှာ ဘာစိတ်ကူးပေါက်မှန်းမသိ Lenovo ရဲ့ ThinkStation အဟောင်းတွေကိုဝယ်ပြီး home lab server အဖြစ်စမ်းသုံးချင်မိလာတယ်။ ဒါနဲ့ပဲ Lenovo ရဲ့ ThinkStation E32 တခုနဲ့ ThinkStation C30 တခုကိုဝယ်ပြီး စာရေးသူအိမ်မှာ lab server အနေနဲ့ စပြီးသုံးဖြစ်ပြန်ပါတယ်။ နောက်ပိုင်းမှာတော့ E32 ကို Desktop အနေနဲ့သုံးပြီး C30 ကိုပဲ dedicated home lab အနေနဲ့ Proxmox ကို install လုပ်ပြီးသုံးလာတာအခုအချိန်ထိပါပဲ။ ThinkStation တခုချင်းစီမှာပါတဲ့ hardware specs တွေကိုအောက်မှာဖော်ပြပေးထားပါတယ်။
Lenovo ThinkStation E32
Memory: 32 GB
Processor: 4 x Intel(R) Xeon(R) CPU E3-1225 v3 @ 3.20GHZ
Graphic: NVIDIA GK107GL (Quadro K2000)
Disk capacity: 2.5 TB (Mix of SSDs and HDD)
Lenovo ThinkStation C30
Memory: 128 GB
Processor: 24 x Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz (2 Sockets)
Disk capacity: 3.25 TB (Mix of SSD and HDDs)
ဒီ hardware platform တွေကို server အသွင်နဲ့အသုံးပြုရတာ တော်တော်လေးကိုအားရပါတယ်။ ပြဿနာက သူ့ရဲ့ power consumption ကြောင့်အမြဲတန်း run ထားဖို့သိပ်တော့အဆင်ပြေမယ်မထင်ပါ။ ဒါ့အပြင် Dell နဲ့ Lenovo က PC case တွေက အတွင်းမှာ hardware ထပ်တိုးထည့်ချင်တာတို့၊ လဲချင်တာတို့ ဆိုရင်တော့ ဖြုတ်ရတပ်ရတာ customise လုပ်ထားတဲ့ case လောက်မရိုးရှင်းလှပါဘူး။ အရမ်းတော့လည်း မခက်လှပါ။ သို့သော်... သူ့ hardware တွေနဲ့ အလုပ်မလုပ်ဘူးရင် နည်းနည်းတော့တိုင်ပတ်နိုင်ပါတယ်။ Lenovo ရဲ့ ThinkStation E32 နဲ့ ThinkStation C30 ဟာ စာရေးသူအတွက် home lab လုပ်သမျှထဲမှာ အဆင်ပြေတဲ့ platform တွေဖြစ်တဲ့အတွက်၊ rackable server တွေနဲ့ နှိုင်းယှဉ်လိုက်ရင် power consumption အတွက်ရော၊ noise အတွက်ပါ သက်သာတဲ့ option တခုပါ။ ဒါမှမဟုတ်ပဲနဲ့ ကိုယ်က အဲ့ဒီနှစ်ခုလုံးမှာ conscious ဖြစ်တဲ့ နည်းပညာသမားဆိုရင်တော့ ဒီထက်ကောင်းတဲ့ ရွေးချယ်စရာတွေရှိပါသေးတယ်။
V for Vagrant
များသောအားဖြင့် စာရေးသူသုံးတဲ့ PC မှာလုံလောက်တဲ့ resource မရှိလို့ သီးသန့် home lab server မှာကိုယ်စမ်းသပ်ချင်တဲ့ဟာတွေကို ခွဲပြီးတော့ setup လုပ်လေ့ရှိပါတယ်။ Lenovo ThinkStation လိုမျိုး platform တွေစသုံးတော့မှ Virtualbox ကို install လုပ်ပြီး VM တွေကို locally ပဲ run ပြီးတော့ စတင်စမ်းသပ်တာများလာပါတယ်။ Lab environment တွေကို အခေါက်ခေါက်အခါခါ တည်ဆောက်လိုက်၊ ပြန်ဖျက်လိုက် လုပ်ရင်းနဲ့ ကြာလာတော့ နည်းနည်းစိတ်ကုန်လာပြန်ပါတယ်။ Virtualbox VM ကို setup လုပ်တာ၊ operating system ကို configure လုပ်ရတာ၊ install လုပ်ရတာများလာတော့ ဒီထက်များပိုပြီးလွယ်နိုင်သေးလားတွေးပြီးရှာဖွေကြည့်ရာကနေ HashiCorp ရဲ့ Vagrant တွေ့ပါတယ်။ အဲ့ဒီအချိန်တုန်းက စာရေးသူကိုယ်တိုင် automation ကိုသဲကြီးမဲကြီး စိတ်ဝင်စားနေတဲ့ အချိန်လည်းဖြစ်တာမို့၊ Vagrant လိုမျိုး workflow ကို အရမ်းကြွေခဲ့ရတဲ့အချိန်ပေါ့။ Concept ကတော့ Docker ကို container အတွက်သုံးဖူးရင်၊ Vagrant ဟာ virtual machine (VM) အတွက် orchestration tool တခုပါ။ အသေးစိတ်ကို ဒီ article မှာမသွားတော့ပါဘူး။ စိတ်ဝင်စားလို့ Vagrant အကြောင်း အသေးစိတ် ဖတ်ချင်ရင် ဒီလင့် Vagrant မိတ်ဆက် ကနေ တဆင့်သွားရောက်ဖတ်ရှုနိုင်ပါတယ်။
Vagrant ကိုစတင်ရှာဖွေတွေ့ရှိကတည်း တကူးတက home lab server ကို power ဖွင့်ပြီး lab လုပ်တာသိပ်မရှိတော့ပါဘူး။ များသောအားဖြင့် ကိုယ်စမ်းသပ်ချင်တဲ့ဟာကို Vagrant နဲ့ Virtualbox ကို provider လုပ်၊ Ansible ကို provisioner ထားပြီး reproducible infrastructure ပုံစံမျိုးသုံးဖြစ်တာများလာပါတယ်။ စမ်းသပ်ပြီးသွားလို့ အခြားသူတွေအတွက် အဲ့ဒီ lab ကို share ချင်တယ်ဆိုရင်လည်း၊ Vagrantfile နဲ့ Ansible playbook ကို GitHub သို့မဟုတ်၊ GitLab မှာတင်ပေးလိုက်ရုံနဲ့ ကိစ္စကပျက်ပါတယ်။ Reproducible Infrastructure as Code (IaC) ရဲ့ မတူထူးခြားတဲ့ စွမ်းဆောင်ချက်တခုလို့ ဆိုရမှာပါ။ ဘယ်ငပျင်း မကြိုက်ပဲနေမလဲလို့ အခုပဲတွေးပြီး ကိုယ်ဟာကိုပြုံးမိပါသေးရဲ့။
version 3.0
Lazy admin NAS
မကြာသေးခင်ကမှ production environment ကို run ထားတဲ့ Proxmox host ပေါ်မှာ update လုပ်ရင်း၊ ဘာဖြစ်လို့ဖြစ်မှန်းမသိပဲနဲ့၊ access လုပ်လို့မရဖြစ်သွားပါတယ်။ Troubleshoot လုပ်တာ တစ်ရက်ကနေ နှစ်ရက်ဖြစ်လာပါတယ်။ ရှိသမျှ data တွေကိုတော့ backup လုပ်ထားတဲ့အတွက် နောက်ဆုံးစိတ်ပိုင်းဖျက်လိုက်ပြီး Synology NAS တလုံးဝယ်ဖြစ်သွားပါတယ်။ စာရေးသူ အနေနဲ့ အသက်လေးလည်းနည်းနည်းရလာ၊ စိတ်လည်းအရင်လောက် သိပ်မရှည်ဖြစ်လာပါတယ်။ ရှိပြီးသား WD Red NAS drive တွေကိုပဲ Synology NAS မှာပြန်သုံးဖြစ်ပါတယ်။ အရင်တုန်းကလည်း customer တွေရဲ့ environment မှာ Synology NAS တော်တော်များကို setup / maintain လုပ်ပေးဖူးပါတယ်။ ဒီတော့ အသုံးပြုရတာလွယ်ကူပြီး၊ feature မှာလည်း တော်တော်စုံလင်တာမို့ Synology ကိုပဲရွေးဖြစ်သွားပါတယ်။ အောက်မှာတော့ အဲ့ဒီ NAS ရဲ့ specs ကို ဖော်ပြပေးထားပါတယ်။
Synology DiskStation DS923+
Memory: 4 GB
Processor: AMD Ryzen R1600 2-core 2.6 (base) / 3.1 (turbo) GHz
Disk configuration: 4 x 2 TB
RAID configuration: Synology Hybrid RAID (SHR / With data protection for 2-drive fault tolerance)
Disk capacity: 3.6 TB
Local backup အတွက် 5 TB external hard disk တခုကို USB 3.0 နဲ့သုံးပါတယ်။ Remote backup အတွက်တော့ Backblaze B2 ကိုသုံးပါတယ်။ ညတိုင်း local backup နဲ့၊ remote backup ကို run ဖို့ schedule လုပ်ဖို့ အတွက် Synology NAS မှာလိုအပ်တဲ့ package တွေအကုန်ရှိပါတယ်။ တကယ့်ကို lazy admin တစ်ယောက်အတွက် အံဝင်ခွင်ကျတဲ့ NAS setup လို့ပြောရမှာဖြစ်ပါတယ်။ ဒီ NAS နဲ့ပဲ လိုအပ်တဲ့ storage ပြဿနာကို ဖြေရှင်းနိုင်ခဲ့ပါတယ်။
Small is mini PC
အထက်မှာပြောသလိုပဲ pfSense / OPNsense နဲ့တွဲပြီးသုံးလို့ ရမယ့် hardware ကိုရှာကြည့်တဲ့အခါမှာ Qotom ဆိုတဲ့ mini PC တွေထုတ်တဲ့ company တခုကိုတွေ့ပါတယ်။ Intel Celeron Processor J1900 ကိုသုံးပြီးတော့ nano ITX form factor မှာ Ethernet port ၄ခုနဲ့လာပါတယ်။ Internet gateway / firewall လုပ်ဖို့အတွက် လူကြိုက်များတဲ့ hardware platform တခုပါ။ Specs အနေနဲ့ အရမ်းမမြင့်ပေမယ့်လည်း အိမ်မှာအသုံးပြုဖို့ firewall / gateway router တခုအတွက်တော့ လုံလောက်ပါတယ်။ အဲ့ဒီ hardware လေးနဲ့ပဲ၊ pfSense ကိုလပိုင်း အနည်းငယ်အသုံးပြုပြီးနောက်၊ OPNsense ကိုတော်တော်ကြာကြာ အသုံးပြုဖြစ်ခဲ့ပါတယ်။
နောက်ပိုင်းမှာတော့ အသုံးပြုတဲ့ hardware အရေအတွက်လျှော့ချင်လို့၊ အိမ်မှာသုံးဖို့အတွက် gateway router နဲ့ wireless တခါတည်းပါတဲ့ Mikrotik ကိုပြောင်းပြီးတော့ သုံးဖြစ်ပါတယ်။ ဒီ mini PC မှာက built-in wireless မပါတာကြောင့် Linksys wifi router တခုကို bridge mode နဲ့ wifi access point အနေနဲ့သုံးရပါတယ်။ စာရေးသူ အနေနဲ့ minimalist ပုံစံမျိုးကို ပိုပြီးတော့ ကြိုက်နှစ်သက်တာကြောင့် အခုတလော Intel N100 mini PC တွေကို မျက်စိအတော်ကျနေမိပြန်ပါတယ်။ Raspberry Pi လို SoC ARM platform တွေက အရင်လိုမျိုး ရှာရတာမလွယ်ပါ၊ စျေးလည်း ထင်သလောက်မသက်သာတာကြောင့် Intel ရဲ့ low budget CPU နဲ့လာတဲ့ mini PC တွေကို home server / home lab အနေနဲ့ အသုံးပြုတာပိုပြီး လက်တွေ့ကျပါတယ်။ ဒါကြောင့်လည်း အရင်က OPNsense firewall အနေနဲ့ အသုံးပြုတဲ့ mini PC ကို အခုလက်ရှိမှာ Proxmox တင်ပြီး အဓိက home server အနေနဲ့ ပြန်လည် setup လုပ်ထားပါတယ်။ VM ထက်စာရင် LXC ကပိုပြီး lightweight ဖြစ်တာကြောင့်လည်း စာရေးသူ LXC ကိုပဲ အဲ့ဒီ mini PC ပေါ်မှာအသုံးပြုဖြစ်ပါတယ်။ နောက် article တခုမှပဲ ဘာတွေကို ဘယ်လိုမျိုး setup လုပ်ပြီး အသုံးပြုသလဲဆိုတာကို အသေးစိတ်ရေးပါ့မယ်။
Love of my Net
Mikrotik ဆိုတဲ့ networking vendor ကတော့ စာရေးသူ ISP မှာ network engineer လုပ်တုန်းက အကျွမ်းဝင်လာတဲ့ network platform တခုပါ။ Cisco တို့၊ Juniper တို့လိုမျိုး flashy အရမ်းမဖြစ်ပေမယ့် လက်တွေ့မှာ အရမ်းကိုလက်တွေ့ကျတာကြောင့် စာရေးသူ တော်တော်လေး ကြိုက်နှစ်သက်တာ အမှန်ပါ။ ကိုယ့်မိသားစုပဲ ဖြစ်ဖြစ်၊ ကိုယ့် မိတ်ဆွေထဲကပဲဖြစ်ဖြစ် အိမ်မှာ internet setup လုပ်ဖို့အတွက်ဆိုရင် စာရေးသူ Mikrotik ရဲ့ hAP တွေကို recommend လုပ်ပြီး၊ ကိုယ်တိုင် setup လုပ်ပေးလေ့ရှိပါတယ်။ Networking basic နဲ့ Mikrotik ရဲ့ RouterOS ကို သုံးနေကျမဟုတ်ရင်၊ အစပိုင်းမှာ အနည်းငယ်အခက်တွေ့နိုင်ပါတယ်။ အရမ်းကို versatile ဖြစ်တဲ့ networking platform တခုဖြစ်လို့၊ စာရေးသူဖြင့် သုံးလေကြိုက်လေဖြစ်ရပါတော့တယ်။ ဒါကြောင့်လည်း hAP အပြင်၊ မကြာသေးခင်ကမှ L009UiGS-2HaxD-IN ဆိုတဲ့ model တခုကို အိမ်မှာသုံးဖို့အတွက် ထပ်တခါဝယ်မိပြန်ပါတယ်။ လက်ရှိမှာ အဲ့ဒီ L009UiGS-2HaxD-IN ကို gateway router / firewall / wifi access point (AP) အနေနဲ့ အသုံးပြုဖြစ်နေပါတယ်။ hAP အဟောင်းတခုကို travel router အနေနဲ့ ပြောင်းလဲပြီး သုံးဖြစ်ပြန်ပါတယ်။ Mikrotik ရဲ့ routerOS မှာ ကိုယ်သုံးချင်တဲ့ feature တွေကို ဘယ်လိုမျိုး configure လုပ်ရသလဲဆိုတာကို အခြား tutorial ဆန်ဆန် article လေးတွေမှာ ကြုံရင်ကြုံသလို ရေးပါအုံးမယ်။
Final thoughts
ဒါကတော့... အိမ်မှာကိုယ်ပိုင် home lab / home server ရှိခြင်းဖြင့် ကိုယ်တိုင်လေ့လာခွင့်၊ ကိုယ်တိုင် စူးစမ်းခွင့်ရနိုင်တာကို ထင်ရှားစေလိုပါတယ်။ Home lab ရှိတာကြောင့် အသစ်အသစ်သော opensource နည်းပညာတွေကို လုပ်ငန်းခွင်မှာတင်မဟုတ်ပဲ၊ ကိုယ့်အိမ်မှာပါ ထပ်လောင်းလေ့လာခွင့်ရမှာပါ။ ဒါ့အပြင် home server နဲ့ ကိုယ့်အိမ်မှာ သုံးတဲ့ production environment တခုရှိတဲ့အတွက် လက်တွေ့သုံးတဲ့အခါ ကြုံတွေ့နေကျ troubleshooting process တခုကိုလည်း လေ့လာပြီးသားဖြစ်နိုင်ပါတယ်။ Lab တခုကို setup လုပ်ပြီးသွားလို့ အခြားဘာတွေလုပ်လို့ရနိုင်သေးသလဲဆိုတာသိချင်ရင် ကိုယ့်အိမ်မှာ လက်တွေ့သုံးကြည့်တာ၊ integrate လုပ်ကြည့်တာလောက် အကျိုးဖြစ်ထွန်းနိုင်တာ မရှိပါဘူး။ ဒါ့ကြောင့်လည်း နည်းပညာတခုကို တကယ်တတ်ချင်လေ့လာချင်ရင် home lab တွေ၊ home server တွေ အိမ်မှာရှိအောင်လို့ တိုက်တွန်းလိုပါတယ်။ လက်တွေ့လေ့ကျင့်တာ စမ်းသပ်တာ အကောင်းဆုံးသော လေ့လာနည်းတခုလည်းဖြစ်ပါတယ်။
Last updated