شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید . اطلاعات
این مبحث مراحلی را توضیح می دهد که باید قبل از نصب Edge Microgateway به عنوان یک سرویس در یک خوشه Kubernetes انجام دهید.
این موضوع بحث می کند:
- حداقل الزامات برای خوشه Kubernetes شما.
- نحوه نصب و پیکربندی Edge Microgateway.
- نحوه نصب پیکربندی پایه Edge Microgateway در خوشه Kubernetes.
الزامات برای خوشه Kubernetes شما
خوشه Kubernetes شما نیاز دارد:
- Kubernetes نسخه 1.9 یا بالاتر.
- Kubernetes CLI kubectl نسخه 1.9 یا بالاتر.
- خوشه ای با حداقل 3 گره که هر کدام 2 vCPU دارند.
مثال: ایجاد یک خوشه Kubernetes در Google Kubernetes Engine (GKE)
دستگاه مدیریت Kubernetes خود را راه اندازی کنید
ماشین مدیریت Kubernetes ماشین محلی شماست که از آن برای اجرای دستورات علیه خوشه Kubernetes خود استفاده می کنید. این دستگاه معمولاً یک ماشین رومیزی است که به VMهای Kubernetes شما دسترسی دارد.
شما باید ابزارهای زیر را در دستگاه مدیریت Kubernetes نصب کنید:
رابط خط فرمان kubectl 1.9 یا بالاتر را نصب کنید.
(فقط GKE) اگر Kubernetes را روی GKE اجرا می کنید، gcloud را نصب کنید.
یک خوشه Kubernetes در GKE ایجاد کنید
- به داشبورد Google Kubernetes Engine (GKE) در Google Cloud Platform (GCP) وارد شوید.
- روی Create Cluster کلیک کنید.
- کلاستر استاندارد را انتخاب کنید.
- یک نام برای خوشه خود وارد کنید.
- یک منطقه را انتخاب کنید.
-
Cluster Version 1.9.7-gke-*
را انتخاب کنید. به عنوان مثال1.9.7-gke.6
. - اندازه 3 گره را انتخاب کنید.
- 2 vCPU با حافظه 7.5 گیگابایتی را انتخاب کنید.
روی ایجاد کلیک کنید.
اسکرین شات زیر داشبورد GKE را نشان می دهد که همانطور که در مراحل قبلی توضیح داده شد پر شده است:
اعتبار خوشه خود را دریافت کنید
نام پروژه GKE خود را تنظیم کنید:
gcloud config set project projectName
منطقه پروژه GKE خود را تنظیم کنید:
gcloud config set compute/zone zoneName
اعتبار کانتینر 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
-
دستور زیر را دقیقاً مطابق شکل اجرا کنید. این دستور مجوزهای مدیریت کلاستر را به کاربر فعلی اعطا می کند. مجوزهای مدیر برای ایجاد قوانین RBAC لازم برای سرویس Edge Microgateway مورد نیاز است:
kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
Edge Microgateway را برای Kubernetes نصب کنید
دانلود Edge Microgateway برای Kubernetes. اگر از دستگاه 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
دایرکتوری را به دایرکتوری نصب
microgateway_ Version_OS_ARCH
تغییر دهید. به عنوان مثال:cd microgateway_2.5.26_Darwin_x86_64
دایرکتوری نصب را بررسی کنید:
-
/install/kubernetes
- پیکربندی فایل های.yaml
برای استقرار در Kubernetes. -
/samples
- نمونه برنامه های کاربردی برای آزمایش نصب شما. -
/bin
- فایل اجراییedgemicroctl
. دستورedgemicroctl
Edge Microgateway را به Kubernetes تزریق می کند
-
کلاینت
edgemicroctl
بهPATH
خود اضافه کنید. به عنوان مثال، دستور زیر را در سیستم MacOS یا Linux اجرا کنید:export PATH=$PWD/bin:$PATH
تنظیمات پایه Edge Microgateway را روی خوشه Kubernetes اعمال کنید. دستور زیر یک فضای نام
edgemicro-system
و نقش های خوشه ای ایجاد می کند.kubectl apply -f install/kubernetes/edgemicro.yaml
کنترلر NGINX Ingress را در کلاستر نصب کنید. مطمئن شوید که هیچ کنترلر Nginix دیگری در حال اجرا نیست. می توانید با اجرای
kubectl get pods
را بررسی کنید.kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml
نصب را تایید کنید
برای بررسی اینکه آیا کنترلر 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
پس از اجرای Ingress، می توانید با تایپ کردن
Ctrl+C
دستور بالا را لغو کنید.برای بررسی اینکه سرویس های 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
بررسی کنید که همه پادها در حال اجرا هستند:
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 را نصب کنید
شما باید Edge Microgateway 2.5.26 یا نسخه جدیدتر را نصب کرده باشید. با وارد کردن می توانید بررسی کنید:
edgemicro --version
اگر Edge Microgateway 2.5.26 یا جدیدتر را نصب نکرده اید، اسکریپت نصب را اجرا کنید:
npm install edgemicro -g
اگر به تازگی Edge Microgateway را برای اولین بار نصب کرده اید یا آن را ارتقا داده اید، این دستور را اجرا کنید:
edgemicro init
اگر به کمک بیشتری نیاز دارید، به نصب Edge Microgateway مراجعه کنید.
مرحله بعدی
اکنون آماده استقرار Edge Microgateway در Kubernetes هستید.