17 पॉइंट द्वारा kuber 2023-08-04 | 4 टिप्पणियां | WhatsApp पर शेयर करें

[परिचय]
Kuberian = Kubernetes + Librarian
यह एक toy project है, जिसे "Kubernetes librarian" जैसी भावना के साथ बनाया गया है.

[उपयोग]
Kubernetes repository में मौजूद 40,000 से अधिक functions में से
जिस function का role मुझे चाहिए, उसे जल्दी ढूँढना इसका लक्ष्य है.

[उपयोग का तरीका]
अगर आप अंग्रेज़ी में that से शुरू होने के लिए उपयुक्त वाक्य लिखें, तो यह सबसे मिलता-जुलता function खोज देता है.

[सर्च सैंपल]

  • makes scaling decision link
    • autoscaling का निर्णय किस आधार पर लिया जाता है, यह पता करने के लिए इस्तेमाल की गई query
  • checks if the system supports IPVS link
    • system IPVS को support करता है या नहीं, यह पता करने वाले function को खोजते समय इस्तेमाल की गई query
  • make requests for checking readiness of the container link
    • Readiness Probe request भेजने वाले function को खोजने के लिए इस्तेमाल की गई query

मोटे तौर पर, that के बाद वाला clause देकर वाक्य डालें, तो यह काफ़ी हद तक सबसे मिलता-जुलता function खोज देता है.

[बनाने का कारण]
कभी-कभी Kubernetes documentation थोड़ा अस्पष्ट लिखी होती है, इसलिए implementation code देखना पड़ता है. लेकिन project का आकार इतना बड़ा है कि हर चीज़ को manually ढूँढना झंझट भरा था, इसलिए इसे बनाया.

[तकनीकी स्टैक]

  • Llama 2
  • Rust
  • eui (Elasticsearch UI)
  • Knative w/ Google Cloud Run

[अनुभव]
Google Cloud Run इस्तेमाल करने के बाद, AWS Lambda को लेकर की गई पिछली चिंताएँ बेकार लगने लगीं. यह शायद सबसे कम आंकी गई cloud technologies में से एक है, और इसकी कीमत भी हैरान कर देने वाली हद तक कम है, इसलिए एक बार ज़रूर आज़माएँ!

4 टिप्पणियां

 
roxie 2023-08-06

बहुत बढ़िया प्रोजेक्ट है! GeekNews के अलावा कहीं और भी इसका प्रचार करने के बारे में क्या ख्याल है?

और मैं भी CloudRun के बारे में आपके और विचार सुनना चाहूँगा।

 
kuber 2023-08-07

CloudRun के बारे में मेरी राय मैंने नीचे कमेंट में छोड़ दी है. :-)

Hacker News पर इसे यूज़र पैटर्न की झलक देखने के मकसद से पहले ही शेयर किया है haha
(Google Analytics इस्तेमाल कर रहा हूँ.)

क्या कोई और कम्युनिटी है जिसकी आप सिफारिश करेंगे? मेरे दिमाग में ज़्यादा जगहें नहीं आ रही हैं

 
jwseo 2023-08-06

वाह, यह सचमुच एक दिलचस्प प्रोजेक्ट है!
AWS Lambda की तुलना में Google Cloud Run में आपको कौन-सी बातें ज्यादा संतोषजनक लगीं? मैंने भी अब तक सिर्फ Lambda ही इस्तेमाल किया है, इसलिए जानने की उत्सुकता है।

 
kuber 2023-08-07

बाद में इसे ब्लॉग पोस्ट आदि के रूप में विस्तार से लिखने का इरादा है, लेकिन फिलहाल HTTP API वातावरण तक सीमित रहकर कुछ बातें संक्षेप में चुनें तो

HTTP
Lambda: APIGateway के RPC call लेकर request को process करने वाला logic implement करना पड़ता है
Cloud Run: सामान्य HTTP communication / HTTP-आधारित library या framework को वैसे ही इस्तेमाल किया जा सकता है

Concurrency
Lambda: एक instance एक समय में केवल एक ही request process करता है (अगर एक साथ 100 request आएँ, तो 100 instance चलने चाहिए)
Cloud Run: एक instance उपयोगकर्ता द्वारा तय की गई सीमा तक एक साथ process कर सकता है
अतिरिक्त विवरण: Cloud Run, Lambda की तुलना में प्रति घंटा देखें तो लगभग 1.5 गुना महंगा है, लेकिन अगर एक instance 100 concurrency की अनुमति देता है, तो यह 1.5/100 के स्तर तक सस्ता हो जाता है

Cold / Warm / Hot
Lambda: Cold और Hot के अलावा एक Warm state भी होती है जिसमें CPU resource नहीं मिलते। इससे APM जानकारी जैसी चीज़ें भेजना बहुत मुश्किल हो जाता है (क्योंकि APM जानकारी भेजने के लिए response speed धीमी हो जाए तो आमतौर पर नुकसान ही होता है...) DB Connection जैसी चीज़ें भी Warm state में कट जाती हैं, या resources ठीक से release नहीं होते, जिससे DB Connection Pool पूरी तरह exhausted हो सकता है
Cloud Run: केवल Cold और Hot होते हैं। फिर भी AWS के हिसाब से देखें तो API Gateway के response speed जितने समय के लिए ही charge लगता है। बंद होते समय resources को ठीक से clean up करने का अवसर भी मिलता है

डेवलपमेंट वातावरण
Lambda: लोकल में development environment बनाना बहुत कठिन होता है, या language ecosystem / CPU architecture की constraints बहुत बड़ी होती हैं
Cloud Run: सामान्य development environment जैसा ही

पोर्टेबिलिटी
Lambda: Lambda के लिए लिखा गया code Lambda पर निर्भर हो जाता है, इसलिए उसे दूसरे platform पर ले जाना कठिन होता है
Cloud Run: बिना code बदले Kubernetes environment में migrate किया जा सकता है

इसके अलावा भी बहुत कुछ है, लेकिन आम तौर पर जिन बातों से लोग सहमत होंगे, उनमें से कुछ ही चुनी हैं haha