Kubernetes একীকরণের জন্য পূর্বশর্ত

আপনি Apigee Edge-এর ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন
.info- তে যান।

একটি Kubernetes ক্লাস্টারে Edge Microgateway-কে সার্ভিস হিসেবে ইনস্টল করার আগে আপনাকে যে ধাপগুলো অবশ্যই সম্পন্ন করতে হবে, এই বিষয়টিতে তা ব্যাখ্যা করা হয়েছে।

এই বিষয়টিতে আলোচনা করা হয়েছে:

  • আপনার কুবারনেটিস ক্লাস্টারের জন্য ন্যূনতম প্রয়োজনীয়তা।
  • Edge Microgateway কীভাবে ইনস্টল এবং কনফিগার করবেন।
  • আপনার কুবারনেটিস ক্লাস্টারে এজ মাইক্রোগেটওয়ের বেস কনফিগারেশন কীভাবে ইনস্টল করবেন।

আপনার কুবারনেটিস ক্লাস্টারের জন্য প্রয়োজনীয়তা

আপনার কুবারনেটিস ক্লাস্টারের জন্য প্রয়োজন:

  • কুবারনেটিস সংস্করণ ১.৯ বা তার চেয়ে উচ্চতর।
  • Kubernetes CLI kubectl v1.9 বা তার চেয়ে উন্নত।
  • এমন একটি ক্লাস্টার যেখানে কমপক্ষে ৩টি নোড রয়েছে এবং প্রতিটিতে ২টি করে vCPU আছে।

উদাহরণ: গুগল কুবারনেটিস ইঞ্জিন (GKE)-এ একটি কুবারনেটিস ক্লাস্টার তৈরি করা

আপনার কুবারনেটিস অ্যাডমিনিস্ট্রেশন মেশিন সেট আপ করুন

কুবারনেটিস অ্যাডমিনিস্ট্রেশন মেশিন হলো আপনার সেই লোকাল মেশিন যা আপনি আপনার কুবারনেটিস ক্লাস্টারে কমান্ড চালানোর জন্য ব্যবহার করেন। এই মেশিনটি সাধারণত একটি ডেস্কটপ মেশিন হয়ে থাকে, যেটির আপনার কুবারনেটিস ভিএমগুলোতে অ্যাক্সেস থাকে।

আপনাকে Kubernetes অ্যাডমিনিস্ট্রেশন মেশিনে নিম্নলিখিত ইউটিলিটিগুলি ইনস্টল করতে হবে:

  • kubectl কমান্ড লাইন ইন্টারফেস 1.9 বা তার পরবর্তী সংস্করণ ইনস্টল করুন।

  • (শুধুমাত্র GKE-এর জন্য) আপনি যদি GKE-তে Kubernetes চালান, তাহলে gcloud ইনস্টল করুন।

GKE-তে একটি Kubernetes ক্লাস্টার তৈরি করুন

  1. গুগল ক্লাউড প্ল্যাটফর্ম (GCP)-এ গুগল কুবারনেটিস ইঞ্জিন (GKE) ড্যাশবোর্ডে লগ ইন করুন।
  2. ক্লাস্টার তৈরি করুন -এ ক্লিক করুন।
  3. স্ট্যান্ডার্ড ক্লাস্টার নির্বাচন করুন।
  4. আপনার ক্লাস্টারের জন্য একটি নাম লিখুন।
  5. একটি জোন নির্বাচন করুন।
  6. Cluster Version 1.9.7-gke-* নির্বাচন করুন। উদাহরণস্বরূপ 1.9.7-gke.6
  7. ৩টি নোডের একটি আকার নির্বাচন করুন।
  8. ৭.৫ জিবি মেমোরিসহ ২টি vCPU নির্বাচন করুন।
  9. তৈরি করুন- এ ক্লিক করুন।

    নিম্নলিখিত স্ক্রিনশটটিতে পূর্ববর্তী ধাপগুলিতে বর্ণিত পদ্ধতি অনুসারে পূরণ করা GKE ড্যাশবোর্ডটি দেখানো হয়েছে:

    জিকেই ড্যাশবোর্ড

আপনার ক্লাস্টার ক্রেডেনশিয়াল সংগ্রহ করুন।

  1. আপনার GKE প্রোজেক্টের নাম সেট করুন:

    gcloud config set project projectName
  2. আপনার GKE প্রজেক্ট জোন সেট করুন:

    gcloud config set compute/zone zoneName
  3. আপনার gcloud কন্টেইনার ক্রেডেনশিয়াল সংগ্রহ করুন:

    gcloud container clusters get-credentials cluster-name --zone zone --project project-name

    যেখানে:

    • cluster-name হলো আপনার তৈরি করা Kubernetes ক্লাস্টারের নাম।
    • zone হলো সেই জোন যেখানে আপনার ক্লাস্টারটি অবস্থিত।
    • project-name হলো আপনার GCP প্রজেক্টের নাম।

    উদাহরণস্বরূপ:

    gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
  4. নিচের কমান্ডটি ঠিক যেমন দেখানো হয়েছে, সেভাবেই চালান। এই কমান্ডটি বর্তমান ব্যবহারকারীকে ক্লাস্টার অ্যাডমিন অনুমতি প্রদান করে। Edge Microgateway পরিষেবার জন্য প্রয়োজনীয় RBAC নিয়মগুলি তৈরি করতে অ্যাডমিন অনুমতি প্রয়োজন:

    kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
    

কুবারনেটিসের জন্য এজ মাইক্রোগেটওয়ে ইনস্টল করুন

  1. Kubernetes-এর জন্য Edge Microgateway ডাউনলোড করুন। আপনি যদি MacOS বা Linux মেশিন ব্যবহার করেন, তবে ভার্সনের নাম উল্লেখ করে সর্বশেষ বা কোনো নির্দিষ্ট ভার্সন ডাউনলোড করতে পারেন।

    সর্বশেষ সংস্করণ পেতে:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -

    ভার্সন নম্বর দিয়ে নির্দিষ্ট ভার্সনটি পেতে, মনে রাখবেন ভার্সন নম্বরের আগে অবশ্যই "v" অক্ষরটি থাকতে হবে। উদাহরণস্বরূপ: v3.0.2

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s  version

    উদাহরণস্বরূপ:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s v3.0.2
  2. microgateway_ Version_OS_ARCH ইনস্টল ডিরেক্টরিতে যান। উদাহরণস্বরূপ:

    cd microgateway_2.5.26_Darwin_x86_64
  3. ইনস্টল ডিরেক্টরি পরীক্ষা করুন:

    • /install/kubernetes - কুবারনেটিসে ডেপ্লয়মেন্টের জন্য কনফিগারেশন .yaml ফাইলসমূহ।
    • /samples - আপনার ইনস্টলেশন পরীক্ষা করার জন্য নমুনা অ্যাপ্লিকেশন।
    • /bin - edgemicroctl এক্সিকিউটেবল। edgemicroctl কমান্ডটি Kubernetes-এ Edge Microgateway ইনজেক্ট করে।
  4. আপনার PATHedgemicroctl ক্লায়েন্টটি যুক্ত করুন। উদাহরণস্বরূপ, একটি MacOS বা Linux সিস্টেমে নিম্নলিখিত কমান্ডটি চালান:

    export PATH=$PWD/bin:$PATH
  5. কুবারনেটিস ক্লাস্টারে বেস এজ মাইক্রোগেটওয়ে সেটআপ প্রয়োগ করুন। নিম্নলিখিত কমান্ডটি একটি edgemicro-system নেমস্পেস এবং ক্লাস্টার রোল তৈরি করে।

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. ক্লাস্টারে NGINX ইনগ্রেস কন্ট্রোলারটি ইনস্টল করুন। নিশ্চিত করুন যে অন্য কোনো Nginx কন্ট্রোলার চালু নেই। আপনি kubectl get pods চালিয়ে তা পরীক্ষা করতে পারেন।

    kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml

ইনস্টলেশন যাচাই করুন

  1. ইনগ্রেস কন্ট্রোলারটি চালু হয়েছে কিনা তা পরীক্ষা করতে, নিম্নলিখিত কমান্ডটি চালান:

    kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch

    নিম্নলিখিত নমুনা আউটপুটে যেমন দেখা যাচ্ছে, প্রসেসগুলো শুরু হতে এক বা দুই মিনিট সময় লাগে। STATUS Running এ পরিবর্তিত হওয়ার আগে বেশ কয়েকটি Error এবং Restart চক্র দেখা যাওয়া স্বাভাবিক।

    NAMESPACE          NAME                                            READY     STATUS             RESTARTS   AGE
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   1          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Error              2          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   2          40s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Running            3          1m
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running            3          1m
    
  2. ইনগ্রেস চালু হয়ে গেলে, আপনি Ctrl+C টাইপ করে উপরের কমান্ডটি বাতিল করতে পারেন।

  3. Kubernetes সার্ভিসগুলো ডেপ্লয় করা হয়েছে কিনা তা পরীক্ষা করতে এই কমান্ডটি চালান। আপনি নিচে দেখানো উদাহরণ আউটপুটের মতো একটি আউটপুট দেখতে পাবেন:

    kubectl get svc -n edgemicro-system
    

    উদাহরণ আউটপুট:

    NAME                        TYPE           CLUSTER-IP     EXTERNAL-IP    PORT(S)                     AGE
    default-http-backend        ClusterIP      10.19.255.106  <none>         80/TCP                       2h
    edgemicro-ingress           LoadBalancer   10.19.247.156  35.224.24.13   80:30176/TCP,443:32325/TCP   2h
    
  4. সমস্ত পড চালু আছে কিনা যাচাই করুন:

    kubectl get pods -n edgemicro-system
    

    উদাহরণ আউটপুট:

    NAME                                            READY     STATUS    RESTARTS   AGE
    default-http-backend-55c6c69b88-2lvtw           1/1       Running   0          4m
    edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running   3          4m
    

এজ মাইক্রোগেটওয়ে ইনস্টল করুন

  1. আপনার অবশ্যই Edge Microgateway 2.5.26 বা তার পরবর্তী সংস্করণ ইনস্টল করা থাকতে হবে। আপনি এটি পরীক্ষা করতে পারেন নিম্নলিখিত কমান্ডটি প্রবেশ করিয়ে:

    edgemicro --version
  2. যদি আপনার Edge Microgateway 2.5.26 বা তার পরবর্তী সংস্করণ ইনস্টল করা না থাকে, তাহলে ইনস্টল স্ক্রিপ্টটি চালান:

    npm install edgemicro -g
  3. আপনি যদি এইমাত্র প্রথমবারের মতো Edge Microgateway ইনস্টল করে থাকেন বা এটি আপগ্রেড করে থাকেন, তাহলে এই কমান্ডটি চালান:

    edgemicro init

    আপনার যদি আরও সাহায্যের প্রয়োজন হয়, তাহলে Edge Microgateway ইনস্টল করা দেখুন।

পরবর্তী পদক্ষেপ

এখন আপনি Kubernetes-এ Edge Microgateway স্থাপন করার জন্য প্রস্তুত।