လက်ရှိအလျင်အမြန်တိုးတက်ပြောင်းလဲနေသောနည်းပညာပတ်ဝန်းကျင်တွင် KuberNetes သည်ကွန်တိန်နာသံစဉ်ဆက်ခံမှုတွင်ခေါင်းဆောင်တစ် ဦး ဖြစ်လာသည်။ ၎င်းသည် PHP application များကိုအလွယ်တကူဖြန့်ဖြူးရန်အစွမ်းထက်သောကိရိယာများဖြင့်တီထွင်ထုတ်လုပ်သူများကိုထောက်ပံ့ပေးသည်။ ဤလမ်းညွှန်သည်သင့်အားလျင်မြန်စွာစတင်ရန်နှင့် application များကိုထိရောက်စွာစီမံခန့်ခွဲရန် KuberNetes envirements တွင် PHP applications များကိုမည်သို့ဖြန့်ချိနိုင်မည်ကိုအသေးစိတ်ညွှန်ကြားချက်များပေးလိမ့်မည်။
KuberNetes သည် openerized application များကိုအလိုအလျောက်ဖြန့်ချိနိုင်ပြီးစီမံခန့်ခွဲခြင်းနှင့်စီမံခန့်ခွဲနိုင်စွမ်းရှိသော developer များကိုထောက်ပံ့ပေးသော Open Source Container of Container of Container of Source Container orchester plater တစ်ခုဖြစ်သည်။ မို cloud ်းတိမ်သို့မဟုတ်ဝုဏ်ပတ် 0 န်းကျင်တွင်ရှိမရှိ KuberNetes သည် application အမျိုးမျိုးကိုထိထိရောက်ရောက်အသုံးပြုနိုင်သည်။
သင်၏ PHP application ကိုမဖြန့်မီ, အောက်ပါကြိုတင်ပြင်ဆင်မှုများကိုပြုလုပ်ရန်လိုအပ်သည်။
ပထမ ဦး စွာသင်၏ကွန်ပျူတာသို့မဟုတ်ဆာဗာကို install လုပ်ပြီး cuberNetes cluster နှင့် configure လုပ်ထားပါ။ ဒေသခံတပ်ဆင်မှုနှင့်ဖွဲ့စည်းမှုအတွက် Minikube သို့မဟုတ် Kubeadm ကဲ့သို့သောကိရိယာများကိုသင်အသုံးပြုနိုင်သည်။
KuberNetes API နှင့်အပြန်အလှန်ဆက်သွယ်မှုကိုလွယ်ကူချောမွေ့စေရန် Kubectl Tool ကို install လုပ်ပါ။ သတ်သတ်မှတ်မှတ်တပ်ဆင်ခြင်းအဆင့်များအတွက်တရားဝင် KuberNetes မှတ်တမ်းများကိုဖတ်ရှုပါ။
သင်မဖြန့်မီသင်ရိုးရှင်းသော PHP လျှောက်လွှာကိုပြင်ဆင်ရန်လိုအပ်သည်။ ဤတွင်အခြေခံ PHP ကုဒ်ကိုဥပမာတစ်ခု -
echo "Hello, Kubernetes!";
KuberNetes ပတ် 0 န်းကျင်တွင် application များသည်များသောအားဖြင့်ကွန်တိန်နာအတွင်းသို့ပြေးကြသည်။ ထို့ကြောင့်သင်၏ PHP အက်ပလီကေးရှင်းကို docy image ထဲသို့ထည့်ရန်လိုအပ်သည်။ dockerfile ဟုခေါ်သော dockerfile ဟုခေါ်သောဖိုင်တစ်ခုကိုဖန်တီးပါ။
FROM php:7.4-apache
COPY . /var/www/html/
DockerFile ပါ 0 င်သည့်လမ်းညွှန်တွင် docy image image ကိုတည်ဆောက်ရန်အောက်ပါ command ကို run ပါ။
docker build -t my-php-app .
Built Docker ပုံရိပ်ကိုအများပြည်သူသုံးပုံရိပ်ကိုအများပြည်သူသုံးပုံရိပ်သိုလှောင်ရုံ (ဥပမာ Docker Hub) သို့တွန်းပါ။ အောက်ပါ command ကို သုံး. ပုံကိုတွန်းရန်အောက်ပါ command ကိုသုံးပါ။
docker login
docker tag my-php-app your-dockerhub-username/my-php-app
docker push your-dockerhub-username/my-php-app
KuberNetes ရှိ application တစ်ခုကိုဖြန့်ကျက်ခြင်း (ဥပမာ Deployment.yAml) အဖြစ်ဖြန့်ကျက်ထားသော configuration file တစ်ခုဖန်တီးရန်လိုအပ်သည်။ ဤတွင်ဖြန့်ကျက်ဖိုင်၏ပါဝင်မှုဥပမာတစ်ခုဖြစ်သည်:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-php-app
spec:
replicas: 2
selector:
matchLabels:
app: my-php-app
template:
metadata:
labels:
app: my-php-app
spec:
containers:
- name: my-php-app
image: your-dockerhub-username/my-php-app
ports:
- containerPort: 80
ထို့နောက်ဖြန့်ကျက်မှုကိုဖန်တီးရန်အောက်ပါ command ကို run ပါ။
kubectl apply -f deployment.yaml
PHP application များကိုပြင်ပမှလက်လှမ်းမီစေရန်အတွက်သင် (service.yaml ကဲ့သို့သော Service Configuration file တစ်ခုကိုဖန်တီးရန်လိုအပ်သည်။ ဤတွင်ဝန်ဆောင်မှုဖိုင်၏အကြောင်းအရာ၏ဥပမာတစ်ခုမှာ -
apiVersion: v1
kind: Service
metadata:
name: my-php-app
spec:
type: LoadBalancer
ports:
- port: 80
selector:
app: my-php-app
0 န်ဆောင်မှုကိုဖန်တီးရန်အောက်ပါ command ကို run ပါ။
kubectl apply -f service.yaml
အထက်ပါအဆင့်များကိုပြီးဆုံးပြီးနောက် KuberNetes မှပေးသော 0 န်ဆောင်မှုပြင်ပ IP မှတစ်ဆင့် PHP application များကိုသင်ရယူနိုင်သည်။ 0 န်ဆောင်မှုဆိုင်ရာအသေးစိတ်ကိုကြည့်ရှုရန်အောက်ပါ command ကိုသုံးပါ။
kubectl get services
ဤလမ်းညွှန်ဖြင့်သင်၏ PHP application ကို KuberNetes ပတ်ဝန်းကျင်တွင်အောင်မြင်စွာဖြန့်ကျက်လိုက်ပါ။ Docyper Images ကိုဘယ်လိုတည်ဆောက်ရမယ်, တွန်းအားပေးဖို့ဘယ်လိုတွန်းအားပေးရမယ်လို့သင်လေ့လာခဲ့ရုံသာမက KuberNetes မှာ application တွေကိုဖြန့်ချိနိုင်အောင်ကျွမ်းကျင်မှုရှိတယ်။ KuberNetes ကိုနက်နက်နဲနဲနားလည်သဘောပေါက်ခြင်းဖြင့်သင်သည်သင်၏ PHP applications များကိုပိုမိုကောင်းမွန်စွာစီမံခန့်ခွဲနိုင်သည်။