پیش نیازهای ادغام Kubernetes

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

این مبحث مراحلی را که باید قبل از نصب Edge Microgateway به عنوان یک سرویس در یک کلاستر Kubernetes انجام دهید، توضیح می‌دهد.

در این تاپیک بحث میشه:

  • حداقل الزامات برای کلاستر Kubernetes شما.
  • نحوه نصب و پیکربندی Edge Microgateway.
  • نحوه نصب پیکربندی پایه Edge Microgateway در کلاستر Kubernetes شما.

الزامات مربوط به کلاستر Kubernetes شما

کلاستر Kubernetes شما به موارد زیر نیاز دارد:

  • کوبرنتس نسخه ۱.۹ یا بالاتر.
  • رابط خط فرمان Kubernetes، kubectl نسخه ۱.۹ یا بالاتر.
  • یک کلاستر با حداقل ۳ گره که هر کدام دارای ۲ vCPU هستند.

مثال: ایجاد یک کلاستر Kubernetes روی موتور Kubernetes گوگل (GKE)

دستگاه مدیریت Kubernetes خود را راه‌اندازی کنید

دستگاه مدیریت Kubernetes، دستگاه محلی شماست که برای اجرای دستورات روی کلاستر Kubernetes خود از آن استفاده می‌کنید. این دستگاه معمولاً یک دستگاه دسکتاپ است که به ماشین‌های مجازی Kubernetes شما دسترسی دارد.

شما باید ابزارهای زیر را روی دستگاه مدیریت Kubernetes نصب کنید:

  • رابط خط فرمان kubectl نسخه ۱.۹ یا بالاتر را نصب کنید.

  • (فقط GKE) اگر Kubernetes را روی GKE اجرا می‌کنید، gcloud را نصب کنید.

ایجاد یک کلاستر Kubernetes روی GKE

  1. وارد داشبورد Google Kubernetes Engine (GKE) در Google Cloud Platform (GCP) شوید.
  2. روی ایجاد خوشه کلیک کنید.
  3. خوشه استاندارد را انتخاب کنید.
  4. یک نام برای خوشه خود وارد کنید.
  5. یک منطقه انتخاب کنید.
  6. Cluster Version 1.9.7-gke-* را انتخاب کنید. برای مثال 1.9.7-gke.6 .
  7. اندازه ۳ گره را انتخاب کنید.
  8. دو پردازنده مجازی (vCPU) با حافظه ۷.۵ گیگابایت انتخاب کنید.
  9. روی ایجاد کلیک کنید.

    تصویر زیر داشبورد GKE را نشان می‌دهد که طبق مراحل قبلی پر شده است:

    داشبورد 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. دستور زیر را دقیقاً مطابق شکل اجرا کنید. این دستور مجوزهای مدیریت کلاستر را به کاربر فعلی اعطا می‌کند. مجوزهای مدیریت برای ایجاد قوانین RBAC لازم برای سرویس Edge Microgateway لازم است:

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

نصب Edge Microgateway برای Kubernetes

  1. دانلود Edge Microgateway برای Kubernetes. اگر از سیستم عامل مک یا لینوکس استفاده می‌کنید، می‌توانید آخرین نسخه یا یک نسخه خاص را با مشخص کردن نام نسخه دانلود کنید.

    برای دریافت آخرین نسخه:

    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 برای استقرار در Kubernetes.
    • /samples - برنامه‌های نمونه برای آزمایش نصب شما.
    • /bin - فایل اجرایی edgemicroctl . دستور edgemicroctl Edge Microgateway را به Kubernetes تزریق می‌کند.
  4. کلاینت edgemicroctl را به PATH خود اضافه کنید. برای مثال، دستور زیر را روی سیستم MacOS یا Linux اجرا کنید:

    export PATH=$PWD/bin:$PATH
  5. تنظیمات پایه Edge Microgateway را روی کلاستر Kubernetes اعمال کنید. دستور زیر یک فضای نام edgemicro-system و نقش‌های کلاستر ایجاد می‌کند.

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. کنترلر NGINX Ingress را در کلاستر نصب کنید. مطمئن شوید که هیچ کنترلر Nginix دیگری در حال اجرا نیست. می‌توانید با اجرای kubectl get pods موضوع را بررسی کنید.

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

نصب را تأیید کنید

  1. برای بررسی اینکه آیا کنترل‌کننده‌ی Ingress شروع به کار کرده است یا خیر، دستور زیر را اجرا کنید:

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

    همانطور که خروجی نمونه زیر نشان می‌دهد، شروع فرآیندها یک یا دو دقیقه طول می‌کشد. مشاهده چندین چرخه خطا و راه‌اندازی مجدد قبل از تغییر STATUS به Running طبیعی است.

    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. پس از اجرای Ingress، می‌توانید دستور فوق را با تایپ کردن 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
    

نصب Edge Microgateway

  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 مراجعه کنید.

مرحله بعدی

اکنون آماده‌اید تا Edge Microgateway را روی Kubernetes مستقر کنید.