How to Setup RDS with Amazon Aurora ?

AWS ရဲ့ database service အသစ်တစ်ခုဖြစ်တဲ့ “Amazon Aurora” ကို ဘယ်လို create လုပ်ရမယ်ဆိုတဲ့ အကြာင်းပြောမှာ ဖြစ်ပါတယ်။ Amazon Aurora က MySQL နှင့် PostgreSQL relational database engine တွေကို support လုပ်ပေးထားပါတယ်။ Aurora က MySQL နှင့် PostgreSQL ကို develop လုပ်ၿခင္းအားၿဖင့္ ပိုပြီး အဆင်ပြေလွယ်ကူစေပြီး business ရဲ့ ကုန်ကျစရိတ်ကိုလဲ သက်သာစေနိုင်ပါတယ်။ Aurora မှာဆိုရင် database task တွေအနေနဲ့ provisioning, patching, backup, recovery, failure detection နဲ့ repair အစရှိတဲ့ လုပ်ငန်းစဉ်များကို လုပ်ဆောင်နိုင်ပါတယ်။ လိုအပ်ရင် instance class တွေကို ထပ်ချဲ့နိုင်သလို ပွားလို့လဲ ရပါတယ်။

Amazon Aurora ရဲ့ instance ကို create လုပ်တဲ့အခါမှာလဲ DB cluster တစ်ခုကို create လုပ်ရမှာ ဖြစ်ပါတယ်။ DB cluster တစ်ခုဆီမှာ တစ်ခုထက်ပိုတဲ့ DB instance များရှိပါတယ်။ ထို instances များရဲ့ data တွေကို cluster volume တွေမှ manage လုပ်နိုင်တယ်။ Aurora cluster volume တစ်ခုဟာဆိုရင် virtual database storage volume တစ်ခုသာဖြစ်တယ်။ သူဟာဆိုရင် multiple AZs တွေနဲ့ span လုပ်ထားတယ်။ ဒါကြောင့်မို့ AZs တစ်ခုစီတိုင်းမှာ DB cluster data တွေကို copy ပွားထားတာတွေ ရှိနေပါတယ်။

ဒီလောက်ဆိုရင် Aurora အကြောင်းကို သိလောက်ပြီ ဆိုတော့ Aurora ဘယ်လိုဆောက်ရမလဲဆိုတာကို ဆက်ပြောပြမှာ ဖြစ်ပါတယ်။

Step1. အရင်ဆုံး AWS console ကနေ RDS service ကို ရွေးလိုက်ပါ။ ပြီးရင် Launch an Aurora DB instance ကို ရွေးလိုက်ပါ။

Step2. Launch Aurora DB instance အဆင့်ပြီးရင် DB Engine ကို ရွေးရမဲ့အပိုင်းပါ။ ခုက Aurora DB ဆောက်မှာ ဖြစ်တဲ့အတွက် Amazon Aurora engine ကို ရွေးပါမယ်။

ပြီးတော့ Aurora engine ကို ဘယ် edition နဲ့ setup လုပ်မှာလဲဆိုတာလဲ ရွေးလို့ရပါတယ်။ တစ်ခုရှိတာက Aurora က free ပေးမသုံးပါဘူး။ မိမိ အသုံးပြုတဲ့ နာရီအလိုက် ကျသင့်ငွေ ပေးချေရမှာ ဘဲ ဖြစ်ပါတယ်။

Step3. engine type အဆင့် ပြီးရင်တော့ instance စတင်ဆောက်ရမှာဖြစ်ပါတယ်။ အရင်ဆုံး မိမိဆောက်မဲ့ db instance တွက် class အမျိုးစားကို ရွေးချယ်ရမှာ ဖြစ်ပါတယ်။

ပြီးရင် မိမိဆောက်မဲ့ DB instance တွက် identifier name ပေးရမှာ ဘဲဖြစ်ပါတယ်။ နောက်ပြီးတော့ webserver တွေနဲ့ ချိတ်ဆက်ဖို့ရန် မိမိ DB instance တွက် username / password သတ်မှတ်ပေးထားရမှာဘဲ ဖြစ်ပါတယ်။

Step4. မိမိဆောက်တဲ့ DB ထားဖို့ရန် VPC တစ်ခုဆောက်ပေးရမှာဘဲ ဖြစ်ပါတယ်။ VPC ကသုံးမဲ့ ကွန်ရက်အတွက် Subnet ကိုလဲ ဆောက်ရမှာ ဖြစ်ပါတယ်။

Virtual Private Cloud (VPC) – DB instance အတွက် virtual networking environment တစ်ခုကို သတ်မှတ်ပေးဖို့ရန်တွက်ဘဲ ဖြစ်ပါတယ်။

Subnet Group – DB instance ရဲ့ subnets နှင့် IP ranges တွေကို VPC ထဲမှာ အသုံးပြုနိုင်ဖို့ရန် DB subnet group ကို သတ်မှတ်ဖော်ပြပေးရမှာ ဘဲ ဖြစ်ပါတယ်။

နောက်တစ်ခု ရှိသေးတာက Public accessibility ဘဲ ဖြစ်ပါတယ်။ မိမိ instance ကို ချိတ်ဆက်မဲ့ devices တွေနဲ့ ပတ်သတ်ပြီး သတ်မှတ်ချက်တွေဘဲဖြစ်ပါတယ်။

Public accessibility

  • Yes – VPC အပြင်ဘက်မှာ ရှိတဲ့ host လုပ်ထားတဲ့ EC2 instances နဲ့ အခြား devices တွေရဲ့ DB instance တွေကလဲ DB instance ကို ချိတ်ဆက်နိ်ုင်မှာ ဘဲ ဖြစ်ပါတယ်။ ပြီးတော့ EC2 instance နဲ့ အခြား devices တွေနဲ့ ချိတ်ဆက်ဖို့ရန် VPC security group တစ်ခုထက်ပိုပြီး ရွေးချယ်နိုင်ပါတယ်။
  • No – Amazon RDS က public IP address ကို DB instance မှာ assign မလုပ်ထားဘူး ပြီးတော့ VPC အပြင် မှာ ရှိတဲ့ EC2 instance တွေနဲ့ အခြား devices တွေကလဲ DB instance နဲ့ ချိတ်ဆက် အသုံးမပြုနိုင်ပါဘူး။

Availability zone – DB instance ကို create လုပ်ဖို့ရန် လက်ရှိ region ထဲမှာ Availability Zone ကိုရွေးချယ်ရမှာ ဖြစ်ပါတယ်။ region ထဲမှာ ရှိတဲ့ အခြား AZs တွေကိုလဲ ချိတ်ဆက်ထားတာ ဖြစ်လို့ failures ဖြစ်ခြင်းမှ server down ခြင်း data များ loss ဖြစ်ခြင်းမှ protect လုပ်နိုင်ပါတယ်။

VPC security groups – DB instance ကို access လုပ်ဖို့ရန် လိုအပ်တဲ့ rules authorize connections တွေရှိတဲ့ security group ကိုလဲ ထားရှိရပါမယ်။

Step5. အပေါ်က အဆင့်တွေကတော့ DB instance ဆောက်နေခြင်းဘဲ ဖြစ်ပါတယ်။ နောက်တစ်ဆင့်ကတော့ DB instance တွေ အသုံးပြုမဲ့ DB cluster ကိုလဲ ဆောက်ရမှာဘဲ ဖြစ်ပါတယ်။

DB cluster identifier – Instance နှင့်အတူ DB cluster တွက် identifier name သတ်မှတ်ပေးရပါမယ်။ identifier name သာမသတ်မှတ်ထားဘူးဆိုရင် instance identifier ပေါ်မူတည်ပြီး default name အဖြစ်နဲ့ အသုံးပြုနိုင်မှာ ဖြစ်ပါတယ်။

Database name – DB instance ကိုဆောက်ဖို့ရန်တွက် Amazon RDS ရဲ့ database name သတ်မှတ်ပေးရမှာ ဖြစ်ပါတယ်။ database name သာသတ်မှတ်ခြင်းမရှိဘူးဆိုရင် DB instance တွက် Amazon RDS ကနေ database တစ်ခုကို ဆောက်နိုင်မှာ မဟုတ်ပါဘူး ။

Port – DB instance တွေနဲ့ application တွေ ချိတ်ဆက်နိုင်ဖို့ရန် တွက် TCP/IP port တွေသတ်မှတ်ပြီး အသုံးပြုကြပါတယ်။ DB instance ဆီမှာ ဘယ် application မဆို connection string တစ်ခုဖြစ်စေဖို့အတွက် DB instance ရဲ့ port number ကို သတ်မှတ်ပေးထားရပါမယ်။ DB instance ရဲ့ security group တွေလဲ connection လုပ်နိုင်ဖို့ရန် port တွေကို allow လုပ်ပေးထားရပါမယ်။

DB parameter group – ဒါကတော့ configuration setting ကို အသုံးပြုမဲ့ DB instance တွက် ဘဲ ဖြစ်ပါတယ်။ ဒါကြောင့်မို့ DB parameter group ကို ရွေးချယ်ရပါမယ်။
DB cluster parameter group – instance ရဲ့ DB Cluster နဲ့ parameter group တို့ဟာ associate ဖြစ်နေဖို့ရန်တွက် ဖြစ်ပါတယ်။
Option group – DB instance ကို support လုပ်ချင်တဲ့ any optional function တွေ တွက် ဘဲ ဖြစ်ပါတယ်။ ဥပမာ- Oracle တို့ SQL Server data encryption တွေ MySQL memchached support တွေတွက်ဘဲ ဖြစ်ပါတယ်။
Failover – failover ဆိုတာကတော့ မိမိရဲ့ DB က လုပ်နေတဲ့ process တွေက DB လက်ခံနိုင်တဲ့ CPU တွေ RAM တွေ လုပ်ဆောင်နိုင်စွမ်းထက် overload ဖြစ်ချိန်မှာ failover ဆိုတာ ဖြစ်တတ်ပါတယ်။
Priority – failover ကာလအတွင်း မူလ instance ကနေ ဦးစားပေး အဆင့်မှာ ရှိတဲ့ replica ကိုမြှင့်သွားမှာ ဖြစ်ပါတယ်။
Backup retention period – DB instance ကို automatic backups တွေကို Amazon RDS ကနေ ထိန်းသိမ်းထားမဲ့ ရက် တွေကို သတ်မှတ်တာဘဲ ဖြစ်ပါတယ်။ Amazon RDS က DB instance ၏ အလိုလျောက် backups တွေကို ဆက်လက် ထိန်းသိမ်းမဲ့ ကာလ အရေတွက် ကိုထည့်သွင်းရခြင်းဘဲ ဖြစ်ပါတယ်။
Backtrack – backtrack ဟာဆိုရင် user fault ကြောင့် ဖြစ်တဲ့ error တွေကို လျင်မြန်စွာ recover လုပ်ပေးပါတယ်။ for example မနက် ၁၀နာရီမှာ အရေးကြီးတဲ့ record တစ်ခုကို ရုတ်တရက် ဖျက်မိတယ်ဆိုရင် error ဖြစ်ခင် ၉.၅၉ အချိန်ကို backtrack ကို အသုံးပြုပြီး Aurora database ကို ပြန်ရွေ့နိုင်ပါတယ်။
 
Monitoring – monitoring ကို enable လုပ်ထားမယ်ဆိုရင် မိမိ instance ရဲ့ CPU ကို အသုံးပြုနေတဲ့ processes တွေ threads တွေကို metrics တွေနဲ့ စောင့်ကြည့်နိိုင်ပါတယ်။
Maintenance – maintenance မှာဆိုရင် Auto minor version upgrade နဲ့ maintenance window ဆိုပြီး ၂ပိုင်းရှိပါတယ်။
  • Auto minor version upgrade – DB instance ကို maintenance လုပ်ရင် automatic upgrades လုပ်မှာ လားဆိုတဲ့ သဘောတရားပါ။ upgrade လုပ်လိုက်တဲ့ DB ကို ချက်ချင်း upgrade မြှင့်ခြင်းပါ။
  • Maintenance window – ဒါကတော့ DB instance ကို upgrade လုပ်တဲ့ ကာလတစ်ခုကို ဆိုလိုတယ်။ DB instance class တွေ ပြောင်းလိုက်တယ်ဆိုပါစို့ အဲ့မှာ upgrade ပြီးမြောက်တဲ့ state မရောက်ခင် pending state ဖြစ်တဲ့ DB ကို patch လုပ်နေချိန်ဘဲ ဖြစ်တယ်။ ထို process တွေကို သတ်မှတ်ထားတဲ့ အချိန် ပြီးမြောက်စေဖို့ရန် ကာလတစ်ခု သတ်မှတ်ထား ခြငး်ဘဲ ဖြစ်ပါတယ်။ ကာလတစ်ခုကို သတ်မှတ်မထားဘူးဆိုရင် Amazon RDS ကနေ random period ကို assign လုပ်သွားမှာ ဖြစ်ပါတယ်။
နောက်ဆုံးအဆင့်အနေနဲ့ Create database ကို နှိပ်လိုက်ပါ။ အောက်ကပုံအတိုင်း DB instance ရဲ့ status မှာ creating လုပ်နေကြောင်းကို တွေ့ရမှာ ဘဲ ဖြစ်ပါတယ်။
Create လုပ်နေတဲ့ process ပြီးသွားရင် အောက်ပါပုံအတိုငး် DB instance တည်ဆောက်ခြငး်အောင်မြင်သွားပါပြီ။ အောက်ပါပုံဟာဆိုရင် DB instance ဆောက်တုန်းက DB cluster အတွက်ပါ တွဲ ဆောက်ခဲ့တဲ့ DB cluster instance ဘဲ ဖြစ်ပါတယ်။
Cluster endpoint ကို လဲ RDS DB instance ရဲ့ cluster endpoint အဖြစ်အသုံးပြုပါတယ်။
ကျေးဇူးတင်ပါတယ်။

Leave a Reply

Your email address will not be published. Required fields are marked *