DevOps, SRE आणि टेराफॉर्म सारख्या पायाभूत सुविधा-एज-कोड प्रकल्पांसाठी क्लाउड खर्चाचा अंदाज घेऊ पाहणाऱ्या विकासकांसाठी इन्फ्राकॉस्ट महत्त्वपूर्ण आहे. इन्फ्राकॉस्टसह, विविध पर्यायांची तुलना करताना तुम्ही त्वरीत किमतीचे विघटन पाहू शकता, जे मोठ्या निर्णयापूर्वी चांगले अंतर्दृष्टी होण्यास मदत करते.
इन्फ्राकॉस्ट कसे कार्य करते?
इन्फ्राकॉस्ट तुमचा टेराफॉर्म कोड स्कॅन करून 3 दशलक्षाहून अधिक किंमती तपासू शकते आणि तुम्ही संसाधने लाँच करण्यापूर्वी ते एक सोपा आणि वाचण्यास सोपा खर्च अंदाज तयार करते.
कोडच्या कोणत्या ओळींचा सर्वात जास्त किमतीचा परिणाम होतो हे जाणून घेण्यासाठी तुम्ही इन्फ्राकॉस्ट देखील वापरू शकता कारण ते तुमच्या पुल विनंत्यांमध्ये संसाधनांच्या खर्चाचे मॅप करते. तुमच्या CI/CD मध्ये इन्फ्राकॉस्ट समाकलित करून, तुम्ही तुमच्या टीमसोबत सहयोग करू शकता आणि तुमच्या विद्यमान वर्कफ्लोमधील बदलांच्या प्रभावावर चर्चा सक्षम करू शकता.
इन्फ्राकॉस्ट त्याच्या क्लाउड प्राइसिंग API बॅकएंड सेवेद्वारे कार्य करते आणि CLI टूलसह, तुम्ही टेराफॉर्म योजना JSON फॉरमॅटमध्ये पार्स करू शकता. API वापरात असलेल्या प्रत्येक क्लाउड संसाधनाची वैयक्तिक किंमत, तसेच क्लाउड प्रदात्यावर आधारित त्यांचे संबंधित खर्च पॅरामीटर्सचा संदर्भ देते.
प्रोग्रामला ऑपरेट करण्यासाठी कोणत्याही क्रेडेन्शियल्सची आवश्यकता नाही आणि ते टेराफॉर्म किंवा विश्लेषित क्लाउड संसाधनांमध्ये कोणतेही बदल करत नाही. टेराफॉर्म संसाधन प्रकारांची गणना वापरून, API खात्री करते की नवीन संसाधनांचा हिशोब केला जातो.
इन्फ्राकॉस्ट खर्चाचे विभाजन दर्शवते असे दोन मुख्य मार्ग आहेत:
अ) खर्चाचे संपूर्ण ब्रेकडाउन
ब) वर्तमान आणि नियोजित राज्यांमधील मासिक खर्चातील फरक
इन्फ्राकॉस्टसह प्रारंभ करणे (चरण-दर-चरण)
इन्फ्राकॉस्ट स्थापित करण्यासाठी आणि वापरण्यास प्रारंभ करण्यासाठी या चरण-दर-चरण मार्गदर्शकाचे अनुसरण करा:
1. इन्फ्राकॉस्ट स्थापित करा
प्रारंभ करण्यासाठी पहिली पायरी म्हणजे इन्फ्राकोस्ट स्थापित करणे, परंतु तुमच्याकडे आधीपासून असणे आवश्यक आहे टेराफॉर्म स्थापित
इन्फ्राकॉस्टच्या विविध आवृत्त्यांवर एक नजर आहे:
macOS Homebrew:
ब्रू इन्स्टॉल इन्फ्राकॉस्ट
इन्फ्राकॉस्ट -आवृत्ती # v0.9.7 दर्शविली पाहिजे
macOS मॅन्युअल:
# तुमच्या OS/arch वर आधारित CLI डाउनलोड करते आणि ते /usr/local/bin मध्ये ठेवते
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
लिनक्सः
# तुमच्या OS/arch वर आधारित CLI डाउनलोड करते आणि ते /usr/local/bin मध्ये ठेवते
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | sh
डॉकर:
डॉकर पुल इन्फ्राकोस्ट/इन्फ्राकोस्ट
डॉकर रन -rm \
-ई INFRACOST_API_KEY=पाहा_फॉलोइंग_स्टेप_ऑन_कसे_करायचे_हे \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ infracost/infracost breakdown –path /code/
# इन्फ्राकॉस्ट किंवा टेराफॉर्मसाठी इतर आवश्यक ध्वज/एनव्ही जोडा
# उदाहरणार्थ, तुम्ही AWS गृहीत-भूमिका वापरत असल्यास याची आवश्यकता असू शकते:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
Windows:
डाउनलोड करा आणि अनझिप करा नवीनतम प्रकाशन. कमांड प्रॉम्प्ट किंवा पॉवरशेल वापरून ते चालवा .\infracost.exe --no-color
इतर आवश्यक आदेश/ध्वजांसह (रंग आउटपुटमध्ये एक बग आहे ज्याचे आम्हाला Windows वर निराकरण करणे आवश्यक आहे). तुम्ही exe फाईल तुमच्या फोल्डरमध्ये हलवावी PATH
पर्यावरण परिवर्तनशीलउदा C:\Windows
.
2. API की मिळवा
पुढील पायरी म्हणजे विनामूल्य API की साठी नोंदणी करणे, जी CLI उदाहरण प्रकारांसाठी किंमती मिळवण्यासारख्या कार्यांसाठी क्लाउड प्राइसिंग API ची क्वेरी करण्यासाठी वापरते.
सर्व ऑपरेटिंग सिस्टम:
इन्फ्राकॉस्ट रजिस्टर
की मध्ये जतन केली आहे ~/.config/infracost/credentials.yml
.
3. इन्फ्राकोस्ट चालवा
आता तुम्ही Infracost चालवण्यास तयार आहात, जे तुमच्या टेराफॉर्म स्थितीत किंवा क्लाउड संसाधनांमध्ये कोणतेही बदल करत नाही. तुम्ही ते तपासण्यासाठी प्रदान केलेल्या टेराफॉर्म प्रकल्पासह चालवू शकता.
सर्व ऑपरेटिंग सिस्टम:
git क्लोन https://github.com/infracost/example-terraform.git
सीडी उदाहरण-टेराफॉर्म/नमुना1
# main.tf सह खेळा आणि खर्चाची तुलना करण्यासाठी पुन्हा चालवा
इन्फ्राकॉस्ट ब्रेकडाउन -पथ.
# मासिक खर्चाचा फरक दर्शवा, yml फाइल संपादित करा आणि खर्चांची तुलना करण्यासाठी पुन्हा चालवा
इन्फ्राकॉस्ट डिफ-पथ. –sync-usage-file –usage-file infracost-usage.yml
4. CI/CD मध्ये जोडा
तुम्ही आता Infracost चा वापर करू शकता CI/CD एकत्रीकरण पुल विनंती टिप्पण्या आपोआप जोडण्यासाठी, जे तुम्हाला खर्च अंदाजातील फरक दाखवतात. हे तुम्हाला सेफ्टीनेट देखील प्रदान करेल, कार्यसंघांना त्यांच्या वर्कफ्लोचा भाग म्हणून बदलांच्या किमतीच्या प्रभावावर चर्चा करण्यास सक्षम करेल.
वापर
अगोदर निर्देश केलेल्या बाबीसंबंधी बोलताना infracost
CLI मध्ये खालील मुख्य आज्ञा आहेत:
breakdown
: खर्चाचे संपूर्ण ब्रेकडाउन दाखवाdiff
: वर्तमान आणि नियोजित स्थितीमधील मासिक खर्चाचा फरक दर्शवा
तुमच्या रेपोमध्ये एकापेक्षा जास्त टेराफॉर्म प्रोजेक्ट किंवा वर्कस्पेस असल्यास इन्फ्राकॉस्ट कॉन्फिगरेशन फाइल वापरा. त्यांचे परिणाम समान ब्रेकडाउन किंवा भिन्न आउटपुटमध्ये एकत्र केले जातील.
प्रगत वापर
इन्फ्राकॉस्टमध्ये विविध प्रगत वापर पद्धती देखील आहेत ज्या नियमित वापराच्या पद्धतींव्यतिरिक्त वापरल्या जाऊ शकतात. या प्रगत पद्धतींचा वापर इन्फ्राकोस्ट कॉन्फिगरेशन फाइलद्वारे देखील केला जाऊ शकतो.
टेराफॉर्म प्लॅन फाइल
इन्फ्राकॉस्ट टेराफॉर्म प्लॅन फाइलवर चालवले जाऊ शकते, ज्याचा अर्थ तुम्ही आधीच टेराफॉर्म चालवला आहे init.
इन्फ्राकॉस्ट फक्त टेराफॉर्म चालवतेshow
या प्रकरणात, याचा अर्थ क्लाउड क्रेडेन्शियल्सची आवश्यकता नाही किंवा --terraform-plan-flags
सेट करणे.
सीडी पथ/ते/कोड
टेराफॉर्म इनिट
टेराफॉर्म प्लॅन -आउट tfplan.binary
इन्फ्राकॉस्ट ब्रेकडाउन –path tfplan.binary
इन्फ्राकॉस्ट डिफ -पाथ tfplan.binary
टेराफॉर्म राज्य
जर तुम्हाला सध्याच्या टेराफॉर्म स्थितीची किंमत ब्रेकडाउन पहायची असेल, तर तुम्हाला हे माहित असले पाहिजे infracost breakdown
कमांडमध्ये a आहे --terraform-use-state
ध्वज, जे या प्रकरणात उपयुक्त ठरेल. तुम्ही आधीच टेराफॉर्म चालवा apply
, त्यामुळे इन्फ्राकॉस्ट फक्त टेराफॉर्म चालवते show
, ज्यासाठी क्लाउड क्रेडेन्शियल्सची आवश्यकता नाही किंवा --terraform-plan-flags
सेट करणे.
इन्फ्राकॉस्ट ब्रेकडाउन –पाथ उदाहरणे/टेराफॉर्म –टेराफॉर्म-वापर-स्टेट
टेराफॉर्म स्टेट JSON फाइल
आपण चालवू शकता infracost breakdown
टेराफॉर्म स्टेट JSON फाइल विरुद्ध. हे अंतर्गत JSON प्रतिनिधित्वाऐवजी राज्याचे [JSON आउटपुट स्वरूप] असेल. ते चालवून व्युत्पन्न केले पाहिजे terraform show -json
टेराफॉर्म प्रकल्पाच्या आत, आणि जर तुम्हाला सध्याच्या टेराफॉर्म स्थितीची किंमत ब्रेकडाउन पहायची असेल तर ते विशेषतः उपयुक्त आहे. या प्रकरणात, याचा अर्थ असा आहे की तुम्ही आधीच टेराफॉर्म चालवत आहात apply
, म्हणजे क्लाउड क्रेडेन्शियल नाहीत किंवा --terraform-plan-flags
आवश्यक आहेत.
कोणते ढग आणि संसाधने समर्थित आहेत?
इन्फ्राकॉस्ट पेक्षा अधिक समर्थन करते 200 टेराफॉर्म संसाधने AWS, Google आणि Azure वर, तर इतर IaC साधने जसे पुलुमी आणि क्लाउडफॉर्मेशन रोडमॅपमध्ये समाविष्ट आहेत. नवीन संसाधनांसाठी समर्थन सतत जोडले जात आहे, म्हणून रिलीझसाठी रेपो तपासणे महत्वाचे आहे.
निष्कर्ष
इन्फ्राकॉस्ट उपयुक्त आहे विकसकांसाठी साधन, DevOps, SRE, आणि इतर त्वरीत खर्चाचे ब्रेकडाउन पहात आहेत आणि विविध पर्यायांची आगाऊ तुलना करू इच्छित आहेत. जर तुम्ही ते CI सह समाकलित करू इच्छित असाल आणि/किंवा AWS आणि Google क्लाउडसाठी समर्थन आवश्यक असेल तर ही एक चांगली निवड आहे. तुम्हाला तुमच्या टीममध्ये चांगले सहकार्य निर्माण करायचं असल्यास, इन्फ्राकॉस्ट देखील त्या संदर्भात मदत करू शकते. ही सर्व वैशिष्ट्ये हे एक साधन बनवतात ज्याचा तुम्ही टेराफॉर्मसाठी क्लाउड खर्चाच्या अंदाजांसाठी जोरदारपणे विचार केला पाहिजे.
प्रत्युत्तर द्या