> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/roboflow/roboflow-hi/deploy/enterprise-deployment/kubernetes.md).

# Kubernetes

***अपडेट: यदि आप Roboflow Enterprise Customer हैं, तो आप अपने Kubernetes environments में Roboflow Inference Service को का उपयोग करके deploy कर सकते हैं*** [***इस Helm chart***](https://github.com/roboflow/inference/tree/main/inference/enterprise/helm-chart)***.***

वैकल्पिक रूप से, यहाँ एक pod और service को Kubernetes cluster में deploy करने के लिए सरल Kubernetes manifests दिए गए हैं।

नीचे दिया गया Kubernetes manifest एक single CPU-based roboflow infer pod बनाने और उससे एक cluster-IP service जोड़ने का सरल उदाहरण दिखाता है।

```yaml
# Pod
---
apiVersion: v1
kind: Pod
metadata:
  name: roboflow
  labels:
    app.kubernetes.io/name: roboflow
spec:
  containers:
  - name: roboflow
    image: roboflow/roboflow-inference-server-cpu
    ports:
    - containerPort: 9001
      name: rf-pod-port


# Service
---
apiVersion: v1
kind: Service
metadata:
  name: rf-service
spec:
  type: ClusterIP
  selector:
    app.kubernetes.io/name: roboflow
  ports:
  - name: rf-svc-port
    protocol: TCP
    port: 9001
    targetPort: rf-pod-port
```

(ऊपर दिया गया उदाहरण मानता है कि आपका Kubernetes cluster Docker hub से images डाउनलोड कर सकता है)

ऊपर दिए गए YAML snippet को इस नाम से सेव करें `roboflow.yaml` और इसका उपयोग करें `kubectl` अपने Kubernetes cluster के default namespace में pod और service को deploy करने के लिए CLI का उपयोग करें।

```
kubectl apply -f roboflow.yaml
```

\
एक service (ClusterIP type की) बनाई जाएगी; आप Kubernetes cluster के भीतर इस URI पर Roboflow inference access कर सकते हैं: `http://rf-service.default.svc:9001`

### इस उदाहरण से आगे

Kubernetes आपको अपने Roboflow inference service में कई advanced features और extensions शामिल करने की शक्ति देता है। उदाहरण के लिए, आप ऊपर दिए गए उदाहरण को अधिक advanced use-cases के लिए विस्तारित कर सकते हैं, जैसे

* nodeSelectors का उपयोग करके अपने Kubernetes environments के भीतर GPU machines node pools पर pod(s) host करना और उपयोग करना `roboflow/inference-server:gpu` image
* Roboflow inference service को horizontally autoscale करने के लिए Kubernetes deployments बनाना और CPU usage जैसी विशिष्ट metrics के आधार पर auto-scaling triggers सेट करना।
* Roboflow inference service को externally serve करने के लिए nodePort और LoadBalancer जैसे अलग-अलग service types का उपयोग करना
* TLS (HTTPs) आदि के माध्यम से Roboflow inference को expose करने के लिए ingress controllers का उपयोग करें।
* अपने Roboflow inference service में monitoring और alerting जोड़ें
* license server और offline modes को integrate करना
