spinny:~/writing $ vim platform-engineering-internal-developer-platform.md
1~2जैसे-जैसे सॉफ्टवेयर सिस्टम अधिक जटिल होते जाते हैं - माइक्रोसर्विसेज, Kubernetes, मल्टी-क्लाउड, CI/CD पाइपलाइन, ऑब्जर्वेबिलिटी स्टैक - डेवलपर्स इंफ्रास्ट्रक्चर पर अधिक समय और उत्पादों के निर्माण पर कम समय बिता रहे हैं। **Platform Engineering** एक आंतरिक प्लेटफॉर्म बनाकर इस समस्या को हल करता है जो जटिलता को अमूर्त करता है और डेवलपर्स को तेजी से शिप करने के लिए सेल्फ-सर्विस टूल्स प्रदान करता है।3~4Gartner भविष्यवाणी करता है कि 2027 तक, **80% सॉफ्टवेयर इंजीनियरिंग संगठन** प्लेटफॉर्म टीमें स्थापित करेंगे। इस गाइड में, हम जानेंगे कि Platform Engineering क्या है, यह क्यों मायने रखता है, और स्क्रैच से Internal Developer Platform कैसे बनाएं।5~6## Platform Engineering क्या है?7~8Platform Engineering टूलचेन और वर्कफ्लो को डिजाइन और बनाने की विषय-शाखा है जो सॉफ्टवेयर इंजीनियरिंग संगठनों के लिए सेल्फ-सर्विस क्षमताओं को सक्षम बनाती है। इसका आउटपुट एक **Internal Developer Platform (IDP)** है - एक परत जो डेवलपर्स और इंफ्रास्ट्रक्चर के बीच बैठती है।9~10```mermaid11graph TD12 subgraph "Developers"13 D1[Frontend Team]14 D2[Backend Team]15 D3[Data Team]16 end17~18 subgraph "Internal Developer Platform"19 Portal[Developer Portal]20 Templates[Service Templates]21 CICD[CI/CD Pipelines]22 Infra[Infrastructure Abstraction]23 end24~25 subgraph "Infrastructure"26 K8s[Kubernetes]27 Cloud[Cloud Services]28 DB[Databases]29 Monitor[Monitoring]30 end31~32 D1 --> Portal33 D2 --> Portal34 D3 --> Portal35 Portal --> Templates36 Portal --> CICD37 Portal --> Infra38 Infra --> K8s39 Infra --> Cloud40 Infra --> DB41 CICD --> Monitor42```43~44### Platform Engineering बनाम DevOps45~46Platform Engineering DevOps का प्रतिस्थापन नहीं है - यह अगला विकास है। DevOps ने कहा "तुम बनाओ, तुम चलाओ।" Platform Engineering कहता है "हम बनाना और चलाना आसान बना देंगे।"47~48| पहलू | DevOps | Platform Engineering |49|-------|--------|---------------------|50| **फोकस** | संस्कृति और प्रथाएं | उत्पाद और सेल्फ-सर्विस |51| **दृष्टिकोण** | हर टीम इंफ्रा का प्रबंधन करती है | प्लेटफॉर्म टीम इंफ्रा को अमूर्त करती है |52| **संज्ञानात्मक भार** | उच्च (हर टीम सब कुछ सीखती है) | कम (गोल्डन पाथ प्रदान किए जाते हैं) |53| **आउटपुट** | CI/CD पाइपलाइन, IaC स्क्रिप्ट | Internal Developer Platform |54| **उपयोगकर्ता** | सभी इंजीनियरिंग | प्लेटफॉर्म टीम इंजीनियरिंग की सेवा करती है |55~56## Platform Engineering क्यों मायने रखता है57~58### संज्ञानात्मक भार की समस्या59~60एक विशिष्ट आधुनिक संगठन में, एक डेवलपर को समझने की जरूरत है:61~62- Git वर्कफ्लो और ब्रांचिंग रणनीतियां63- CI/CD पाइपलाइन कॉन्फिगरेशन64- कंटेनर बिल्डिंग और रजिस्ट्री प्रबंधन65- Kubernetes मैनिफेस्ट और Helm Charts66- क्लाउड प्रोवाइडर सेवाएं (AWS/GCP/Azure)67- नेटवर्किंग, DNS, TLS प्रमाणपत्र68- मॉनिटरिंग, लॉगिंग, अलर्टिंग सेटअप69- डेटाबेस प्रोविजनिंग और माइग्रेशन70- सुरक्षा नीतियां और अनुपालन71~72यह एक विशाल संज्ञानात्मक बोझ है जो वास्तविक उत्पाद से ध्यान हटाता है।73~74### गोल्डन पाथ75~76Platform Engineering **गोल्डन पाथ** की अवधारणा पेश करता है - सामान्य कार्यों के लिए राय-आधारित, अच्छी तरह से समर्थित और प्रलेखित रास्ते। गोल्डन पाथ एक आदेश नहीं है; डेवलपर्स *विचलित हो सकते हैं*, लेकिन प्लेटफॉर्म सही काम को आसान काम बनाता है।77~78```mermaid79flowchart LR80 Dev[Developer] -- "Create new service" --> Portal[Portal]81 Portal -- "Select template" --> Template[Service Template]82 Template -- "Auto-provision" --> Repo[Git Repository]83 Template --> Pipeline[CI/CD Pipeline]84 Template --> Infra[Kubernetes Namespace]85 Template --> Monitor[Dashboards + Alerts]86 Repo --> Ready[Ready to Code!]87```88~89**नई माइक्रोसर्विस बनाने के लिए गोल्डन पाथ का उदाहरण:**901. डेवलपर पोर्टल में "नई बैकएंड सेवा" का चयन करता है912. भाषा/फ्रेमवर्क चुनता है (Node.js, Go, Python)923. प्लेटफॉर्म स्वचालित रूप से बनाता है: Git रिपॉजिटरी, CI/CD पाइपलाइन, Kubernetes नेमस्पेस, मॉनिटरिंग डैशबोर्ड, और अलर्ट नियम934. डेवलपर रिपॉजिटरी क्लोन करता है और तुरंत कोडिंग शुरू करता है94~95## Internal Developer Platform का निर्माण96~97### परत 1: Developer Portal98~99पोर्टल डेवलपर्स के लिए एकमात्र प्रवेश बिंदु है। सबसे लोकप्रिय ओपन-सोर्स विकल्प **Backstage** है (Spotify द्वारा बनाया गया, अब एक CNCF प्रोजेक्ट)।100~101प्रमुख विशेषताएं:102- **सेवा कैटलॉग**: हर सेवा, उसका मालिक, प्रलेखन और निर्भरताएं103- **सॉफ्टवेयर टेम्पलेट**: सर्वोत्तम प्रथाओं के साथ नई सेवाओं के लिए स्कैफोल्डिंग104- **तकनीकी दस्तावेज**: कोड के रूप में प्रलेखन, रेंडर और खोजने योग्य105- **प्लगइन इकोसिस्टम**: कस्टम कार्यक्षमता के साथ विस्तार योग्य106~107```yaml108# backstage/catalog-info.yaml109apiVersion: backstage.io/v1alpha1110kind: Component111metadata:112 name: user-service113 description: Manages user accounts and authentication114 annotations:115 github.com/project-slug: myorg/user-service116 backstage.io/techdocs-ref: dir:.117spec:118 type: service119 lifecycle: production120 owner: team-auth121 system: identity-platform122 dependsOn:123 - resource:postgresql-main124 providesApis:125 - user-api126```127~128### परत 2: इंफ्रास्ट्रक्चर अमूर्तन129~130डेवलपर्स को सीधे Terraform या Kubernetes YAML नहीं लिखना चाहिए। प्लेटफॉर्म को अमूर्तन प्रदान करना चाहिए।131~132**टूल्स:**133- **Crossplane**: Kubernetes-नेटिव इंफ्रास्ट्रक्चर प्रोविजनिंग134- **Terraform मॉड्यूल के साथ**: पूर्व-निर्मित, परीक्षित इंफ्रास्ट्रक्चर मॉड्यूल135- **Pulumi**: वास्तविक कोड के रूप में इंफ्रास्ट्रक्चर (TypeScript, Python, Go)136~137```yaml138# Example: Crossplane composition for a database139apiVersion: database.example.com/v1140kind: PostgreSQLInstance141metadata:142 name: user-db143spec:144 size: small # Abstraction: small = 2 vCPU, 4GB RAM145 version: "16"146 backup: daily147 team: auth-team148```149~150RDS पैरामीटर, VPC सबनेट, सिक्योरिटी ग्रुप और बैकअप पॉलिसी कॉन्फिगर करने के बजाय, डेवलपर बस `size: small` और `backup: daily` निर्दिष्ट करता है। प्लेटफॉर्म बाकी संभालता है।151~152### परत 3: CI/CD मानकीकरण153~154CI/CD को मानकीकृत करें ताकि टीमें अपनी-अपनी पाइपलाइन न बनाएं।155~156```yaml157# .github/workflows/platform-ci.yml158# Teams just include the shared workflow159name: Build and Deploy160on:161 push:162 branches: [main]163~164jobs:165 pipeline:166 uses: myorg/platform-workflows/.github/workflows/standard-pipeline.yml@v2167 with:168 language: node169 deploy-target: production170 secrets: inherit171```172~173**प्रमुख प्रथाएं:**174- साझा CI/CD टेम्पलेट जिन्हें टीमें शामिल करती हैं (कॉपी नहीं)175- स्वचालित सुरक्षा स्कैनिंग (SAST, डिपेंडेंसी ऑडिट)176- मानकीकृत डिप्लॉयमेंट रणनीतियां (canary, blue/green)177- असफल हेल्थ चेक पर स्वचालित रोलबैक178~179### परत 4: ऑब्जर्वेबिलिटी180~181पूर्व-कॉन्फिगर्ड मॉनिटरिंग ताकि डेवलपर्स को डैशबोर्ड और अलर्ट तैयार मिलें।182~183- **मेट्रिक्स**: Prometheus + Grafana प्रति सेवा मानक डैशबोर्ड के साथ184- **लॉगिंग**: केंद्रीकृत संग्रह के साथ स्ट्रक्चर्ड लॉगिंग (Loki, ELK)185- **ट्रेसिंग**: OpenTelemetry के साथ वितरित ट्रेसिंग186- **अलर्टिंग**: समझदार डिफॉल्ट के साथ PagerDuty/Opsgenie एकीकरण187~188```mermaid189graph LR190 Service[Your Service] -- "OpenTelemetry SDK" --> Collector[OTel Collector]191 Collector --> Prometheus[Prometheus]192 Collector --> Loki[Loki]193 Collector --> Tempo[Tempo]194 Prometheus --> Grafana[Grafana Dashboards]195 Loki --> Grafana196 Tempo --> Grafana197 Grafana --> PagerDuty[PagerDuty Alerts]198```199~200## सफलता मापना201~202आप कैसे जानते हैं कि आपका प्लेटफॉर्म काम कर रहा है? इन मेट्रिक्स को ट्रैक करें:203~204### DORA मेट्रिक्स205- **डिप्लॉयमेंट फ्रीक्वेंसी**: कोड कितनी बार प्रोडक्शन तक पहुंचता है206- **परिवर्तनों के लिए लीड टाइम**: कमिट से प्रोडक्शन तक का समय207- **परिवर्तन विफलता दर**: विफलता का कारण बनने वाले डिप्लॉयमेंट का प्रतिशत208- **औसत पुनर्प्राप्ति समय**: किसी घटना के बाद सेवा बहाल करने का समय209~210### प्लेटफॉर्म-विशिष्ट मेट्रिक्स211- **पहले डिप्लॉय तक का समय**: "नई सेवा" से पहले प्रोडक्शन डिप्लॉय तक कितना समय212- **डेवलपर संतुष्टि (NPS)**: अपने उपयोगकर्ताओं का नियमित रूप से सर्वेक्षण करें213- **सेल्फ-सर्विस अनुपात**: बिना टिकट के संभाली गई इंफ्रास्ट्रक्चर अनुरोधों का %214- **गोल्डन पाथ अपनाना**: अनुशंसित रास्ते का पालन करने वाली सेवाओं का %215~216## सामान्य गलतियां217~218### 1. बहुत जल्दी बहुत अधिक बनाना219सबसे बड़े दर्द बिंदु से शुरू करें, भव्य दृष्टिकोण से नहीं। अगर डिप्लॉयमेंट दर्दनाक हैं, वहां से शुरू करें। अगर प्रोविजनिंग में हफ्ते लगते हैं, वहां से शुरू करें।220~221### 2. प्लेटफॉर्म को उत्पाद के रूप में न मानना222प्लेटफॉर्म टीम को एक प्रोडक्ट मैनेजर, उपयोगकर्ता अनुसंधान और फीडबैक लूप की जरूरत है। डेवलपर्स आपके ग्राहक हैं - उनकी जरूरतों को समझें।223~224### 3. आकर्षित करने के बजाय अनिवार्य करना225सबसे अच्छे प्लेटफॉर्म स्वेच्छा से अपनाए जाते हैं क्योंकि वे डेवलपर्स के जीवन को आसान बनाते हैं। अगर आपको उपयोग अनिवार्य करना पड़ता है, तो आपका प्लेटफॉर्म पर्याप्त अच्छा नहीं है।226~227### 4. डेवलपर अनुभव को नजरअंदाज करना228खराब UX वाला प्लेटफॉर्म उपयोग नहीं किया जाएगा। स्पष्ट प्रलेखन, सहायक त्रुटि संदेशों और तेज फीडबैक लूप में निवेश करें।229~230## शुरुआत कैसे करें231~232अपना पहला IDP बनाने के लिए एक व्यावहारिक रोडमैप:233~234```mermaid235flowchart TD236 A[Month 1-2: Discovery] --> B[Month 3-4: MVP]237 B --> C[Month 5-6: Iterate]238 C --> D[Month 7+: Scale]239~240 A --> A1[Interview developers]241 A --> A2[Map pain points]242 A --> A3[Choose first golden path]243~244 B --> B1[Deploy Backstage]245 B --> B2[First service template]246 B --> B3[Standardized CI/CD]247~248 C --> C1[Gather feedback]249 C --> C2[Add infrastructure abstraction]250 C --> C3[Improve docs and onboarding]251~252 D --> D1[More templates and golden paths]253 D --> D2[Self-service infrastructure]254 D --> D3[Advanced observability]255```256~257### न्यूनतम व्यवहार्य प्लेटफॉर्म258~2591. **सेवा कैटलॉग** (Backstage) - जानें कि क्या मौजूद है और कौन इसका मालिक है2602. **एक सेवा टेम्पलेट** - आपके सबसे सामान्य सेवा प्रकार के लिए गोल्डन पाथ2613. **मानकीकृत CI/CD** - साझा पाइपलाइन जिसे टीमें शामिल करती हैं2624. **बुनियादी दस्तावेज** - प्लेटफॉर्म का उपयोग कैसे करें, मदद कहां मिलेगी263~264आप इस MVP को 2-3 इंजीनियरों की टीम के साथ 2-3 महीनों में बना सकते हैं।265~266## निष्कर्ष267~268Platform Engineering पहले दिन से ही सही प्लेटफॉर्म बनाने के बारे में नहीं है। यह डेवलपर्स पर संज्ञानात्मक भार को क्रमिक रूप से कम करने के बारे में है ताकि वे उत्पादों के निर्माण पर ध्यान केंद्रित कर सकें। छोटे से शुरू करें, प्रभाव मापें, और डेवलपर फीडबैक के आधार पर पुनरावृत्ति करें।269~270जो संगठन Platform Engineering में निवेश करते हैं उनके पास एक महत्वपूर्ण प्रतिस्पर्धात्मक लाभ होगा: तेज डिलीवरी, खुश डेवलपर्स, और अधिक विश्वसनीय सिस्टम।271~272**संसाधन:**273- [Team Topologies](https://teamtopologies.com/) - वह पुस्तक जिसने प्लेटफॉर्म टीमों को लोकप्रिय बनाया274- [Backstage](https://backstage.io/) - Spotify का ओपन-सोर्स डेवलपर पोर्टल275- [CNCF Platforms White Paper](https://tag-app-delivery.cncf.io/whitepapers/platforms/) - सामुदायिक परिभाषा और सर्वोत्तम प्रथाएं276- [platformengineering.org](https://platformengineering.org/) - समुदाय, कार्यक्रम और संसाधन277~
NORMAL · platform-engineering-internal-developer-platform.md [readonly]277 lines · :q to close