كيف تعمل تطبيقات API7 Enterprise Proxy في مجموعات Kubernetes؟
January 24, 2024
في العصر الديناميكي لتقنيات السحابة الأصلية، ظهر Kubernetes كحل مفضل للعديد من الشركات التي تسعى لبناء تطبيقات مرنة وقابلة للتوسع. يقدم API7 Enterprise إمكانات قوية في مجال الأمان وإدارة حركة المرور، بالإضافة إلى أداء استثنائي. يتكامل API7 Enterprise مع اكتشاف الخدمات في Kubernetes، ويعمل كوسيط للتطبيقات التي يتم نشرها داخل مجموعة Kubernetes. دعنا نستكشف عملية استخدام API7 Enterprise لوساطة التطبيقات في مجموعة Kubernetes الخاصة بك.
المتطلبات الأساسية
- تثبيت API7 Enterprise
ملاحظة: إذا لم يتم نشر API7 Enterprise بالفعل داخل مجموعات Kubernetes، قم بتكوين إعدادات الشبكة للجهاز الذي يستضيف API7 EE لضمان إمكانية الوصول إلى الـ pods العلوية في بيئة Kubernetes.
- نشر الخدمات في Kubernetes
إذا كنت قد نشرت الخدمات بالفعل في Kubernetes، يمكنك تخطي هذه الخطوة. وإلا، قم بتنفيذ الأمر التالي لإنشاء الخدمات:
# إنشاء مساحة اسم جديدة
kubectl create namespace api7ee
kubectl create deployment httpbin --image=kennethreitz/httpbin:latest -n api7ee
kubectl create service clusterip httpbin --tcp=80:80 -n api7ee
- إنشاء حساب خدمة Kubernetes
-
يعتمد API7 Enterprise على هذه الاعتمادات للوصول إلى واجهة برمجة تطبيقات Kubernetes وجلب تكوينات الـ pods العلوية. وبالتالي، نحتاج أولاً إلى إنشاء مورد
RBAC
. فيما يلي تكوين ملفYAML
المحدد:# rbac.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: api7-k8s-sd-watcher rules: - apiGroups: [""] resources: ["endpoints"] verbs: ["list", "watch"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: api7-k8s-sd-watcher-binding subjects: - kind: ServiceAccount name: api7-k8s-sd-sa namespace: api7ee roleRef: kind: ClusterRole name: api7-k8s-sd-watcher apiGroup: rbac.authorization.k8s.io --- apiVersion: v1 kind: ServiceAccount metadata: name: api7-k8s-sd-sa namespace: api7ee --- apiVersion: v1 kind: Secret metadata: name: api7-k8s-sd-secret namespace: api7ee annotations: kubernetes.io/service-account.name: api7-k8s-sd-sa type: kubernetes.io/service-account-token
-
إنشاء موارد RBAC والحصول على هذا الرمز.
kubectl apply -f rbac.yaml -n api7ee kubectl get secrets api7-k8s-sd-secret -n api7ee -ojsonpath='{.data.token}' | base64 -d
تنفيذ اكتشاف خدمة Kubernetes في API7 Enterprise
الاتصال بسجل خدمة Kubernetes
-
انتقل إلى مجموعة بوابة موجودة وادخل إلى سجل الخدمة من خلال القائمة الجانبية.
-
انقر على زر إضافة اتصال سجل خدمة. اختر Kubernetes كنوع الاكتشاف وقدم عنوان خدمة واجهة برمجة تطبيقات Kubernetes والرمز.
- بمجرد أن يقوم API7 Enterprise بإقامة اتصال ناجح بسجل الخدمة، ستظهر حالة صحية.
نشر الخدمة للاختبار
-
انتقل إلى صفحة الخدمة، انقر لإنشاء خدمة جديدة، وأضف المسار
/anything
. -
تابع نشر الخدمة، واختر الـ pod العلوي المناسب:
- بعد النشر، يمكنك اختباره باستخدام
curl
.
الخلاصة
في الختام، تحدثنا عن الخطوات اللازمة للاستفادة من API7 Enterprise لوساطة خدمات Kubernetes. لمزيد من المعلومات حول ميزات API7 Enterprise، لا تتردد في الاتصال بنا.