في Kubernetes ، يمكنك إنشاء خدمة باستخدام موازن أحمال خارجي يوفر الوصول إليها من الشبكات العامة. سيتلقى موازن الأحمال عنوان IP يمكن الوصول إليه بشكل عام ويوجه الطلبات الواردة إلى المنفذ الصحيح على عقد مجموعة Kubernetes.
لإنشاء خدمة باستخدام موازن أحمال خارجي
- قم بالدخول إلى مجموعة Kubernetes عبر لوحة التحكم. انقر على Kubernetes access للحصول على الإرشادات.
- في لوحة تحكم Kubernetes، قم بإنشاء إطلاق وخدمة من نوع LoadBalancer. للقيام بذلك، انقر على + Create وحدد ملف YAML الذي يحدد هذه الكائنات. فمثلًا:
- إذا قمت بإطلاق مجموعة Kubernetes في شبكة مادية مشتركة ، فحدد البيان التالي:
apiVersion: apps/v1 kind: Deployment metadata: name: nginx spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx ports: - containerPort: 80 --- kind: Service apiVersion: v1 metadata: name: load-balancer annotations: service.beta.kubernetes.io/openstack-internal-load-balancer: "true" spec: selector: app: nginx type: LoadBalancer ports: - port: 80 targetPort: 80 protocol: TCP
يصف البيان أعلاه الإطلاق nginx
مع نسختين متماثلتين من pods والخدمة load-balancer
مع النوع LoadBalancer
. يشير التعليق التوضيحي المُستخدَم للخدمة إلى أن موازن الأحمال سيكون داخليًا.
بمجرد إنشاء موازن الأحمال ، سيتم تخصيص عنوان IP من الشبكة المادية المشتركة ويمكن الوصول إليه عند نقطة النهاية الخارجية هذه.
- إذا قمت بإطلاق مجموعة Kubernetes في شبكة افتراضية مرتبطة بشبكة مادية عبر جهاز توجيه افتراضي ، فيمكنك استخدام ملف YAML أعلاه بدون قسم
annotations
لخدمةload-balancer
. سيتلقى موازن الأحمال الذي تم إنشاؤه عنوان IP عائمًا “floating” من الشبكة المادية ويمكن الوصول إليه عند نقطة النهاية الخارجية هذه.
سيظهر موازن الأحمال أيضًا في لوحة الخدمة الذاتية ، حيث يمكنك مراقبة أدائه وحالته.