API7 Enterprise Proxy कैसे Kubernetes क्लस्टर में एप्लिकेशन्स को प्रॉक्सी करता है?

January 24, 2024

Products

क्लाउड-नेटिव टेक्नोलॉजी के गतिशील युग में, Kubernetes कई उद्यमों के लिए लचीले और स्केलेबल एप्लिकेशन बनाने के लिए पसंदीदा समाधान बन गया है। API7 Enterprise सुरक्षा और ट्रैफिक प्रबंधन में शक्तिशाली क्षमताएं प्रदान करता है, साथ ही उत्कृष्ट प्रदर्शन भी प्रदान करता है। API7 Enterprise, Kubernetes Service Discovery के साथ एकीकृत होता है और Kubernetes क्लस्टर में तैनात एप्लिकेशन के लिए एक प्रॉक्सी के रूप में कार्य करता है। आइए, API7 Enterprise का उपयोग करके अपने Kubernetes क्लस्टर में एप्लिकेशन को प्रॉक्सी करने की प्रक्रिया का पता लगाएं।

पूर्वापेक्षाएँ

  1. API7 Enterprise इंस्टॉल करें

नोट: यदि API7 Enterprise पहले से ही Kubernetes क्लस्टर में तैनात नहीं है, तो API7 EE होस्ट करने वाली मशीन की नेटवर्क सेटिंग्स को कॉन्फ़िगर करें ताकि Kubernetes वातावरण में अपस्ट्रीम पॉड्स तक पहुंच सुनिश्चित हो सके।

  1. 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
  1. एक Kubernetes सेवा खाता बनाएं
  • API7 Enterprise, Kubernetes API तक पहुंचने और अपस्ट्रीम कॉन्फ़िगरेशन प्राप्त करने के लिए इस क्रेडेंशियल पर निर्भर करता है। इसलिए, हमें पहले एक 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

API7 Enterprise में Kubernetes Service Discovery का कार्यान्वयन

Kubernetes सेवा रजिस्ट्री से कनेक्ट करना

  1. एक मौजूदा गेटवे समूह पर जाएं और बाएं मेनू के माध्यम से सेवा रजिस्ट्री तक पहुंचें।

  2. सेवा रजिस्ट्री कनेक्शन जोड़ें बटन पर क्लिक करें। डिस्कवरी प्रकार के रूप में Kubernetes का चयन करें और Kubernetes API सेवा पहुंच पता और टोकन प्रदान करें।

PA_1

  1. एक बार जब API7 Enterprise सेवा रजिस्ट्री से सफलतापूर्वक कनेक्ट हो जाता है, तो आप एक स्वस्थ स्थिति देखेंगे।

PA_2

परीक्षण के लिए सेवा प्रकाशित करना

  1. सेवा पृष्ठ पर नेविगेट करें, एक नई सेवा बनाने के लिए क्लिक करें, और /anything रूट जोड़ें।

  2. सेवा प्रकाशित करने के लिए आगे बढ़ें, और उचित अपस्ट्रीम का चयन करें:

PA_3

  1. प्रकाशित करने के बाद, आप इसे curl का उपयोग करके परीक्षण कर सकते हैं।

सारांश

अंत में, हमने Kubernetes सेवाओं को प्रॉक्सी करने के लिए API7 Enterprise का उपयोग करने के चरणों के बारे में बात की है। API7 Enterprise की सुविधाओं के बारे में अधिक जानकारी के लिए, कृपया हमसे संपर्क करने में संकोच न करें।

Tags: