ഉള്ളടക്ക പട്ടിക[മറയ്ക്കുക][കാണിക്കുക]
DevOps, SRE, ടെറാഫോം പോലെയുള്ള കോഡ് പ്രോജക്റ്റുകൾക്കായി ക്ലൗഡ് ചെലവ് കണക്കാക്കാൻ ആഗ്രഹിക്കുന്ന ഡെവലപ്പർമാർക്കും ഇൻഫ്രാകോസ്റ്റ് പ്രധാനമാണ്. ഇൻഫ്രാകോസ്റ്റ് ഉപയോഗിച്ച്, വ്യത്യസ്ത ഓപ്ഷനുകൾ താരതമ്യം ചെയ്യുമ്പോൾ നിങ്ങൾക്ക് പെട്ടെന്ന് ഒരു ചെലവ് തകരാർ കാണാൻ കഴിയും, ഇത് ഒരു വലിയ തീരുമാനത്തിന് മുമ്പ് മികച്ച സ്ഥിതിവിവരക്കണക്കിലേക്ക് നയിക്കാൻ സഹായിക്കുന്നു.
ഇൻഫ്രാകോസ്റ്റ് എങ്ങനെ പ്രവർത്തിക്കുന്നു?
നിങ്ങളുടെ ടെറാഫോം കോഡ് സ്കാൻ ചെയ്യുന്നതിലൂടെ ഇൻഫ്രാകോസ്റ്റിന് 3 ദശലക്ഷത്തിലധികം വിലകൾ പരിശോധിക്കാൻ കഴിയും, നിങ്ങൾ ഉറവിടങ്ങൾ സമാരംഭിക്കുന്നതിന് മുമ്പ് ഇത് ലളിതവും എളുപ്പത്തിൽ വായിക്കാവുന്നതുമായ ചിലവ് കണക്കാക്കുന്നു.
നിങ്ങളുടെ പുൾ അഭ്യർത്ഥനകളിലെ റിസോഴ്സുകളുടെ വില മാപ്പ് ചെയ്യുന്നതിനാൽ, ഏത് കോഡിന്റെ ലൈനുകളാണ് ഏറ്റവും വലിയ ചിലവ് സ്വാധീനം ചെലുത്തുന്നതെന്ന് അറിയാൻ നിങ്ങൾക്ക് ഇൻഫ്രാകോസ്റ്റ് ഉപയോഗിക്കാം. നിങ്ങളുടെ CI/CD-യിലേക്ക് ഇൻഫ്രാകോസ്റ്റ് സമന്വയിപ്പിക്കുന്നതിലൂടെ, നിങ്ങളുടെ ടീമുമായി സഹകരിക്കാനും നിങ്ങളുടെ നിലവിലുള്ള വർക്ക്ഫ്ലോയിലെ മാറ്റങ്ങളെക്കുറിച്ചുള്ള ചർച്ചകൾ പ്രവർത്തനക്ഷമമാക്കാനും കഴിയും.
Infracost അതിന്റെ ക്ലൗഡ് പ്രൈസിംഗ് API ബാക്കെൻഡ് സേവനത്തിലൂടെ പ്രവർത്തിക്കുന്നു, കൂടാതെ CLI ടൂൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് JSON ഫോർമാറ്റിൽ ഒരു ടെറാഫോം പ്ലാൻ പാഴ്സ് ചെയ്യാം. ഉപയോഗത്തിലുള്ള ഓരോ ക്ലൗഡ് റിസോഴ്സിന്റെയും വ്യക്തിഗത വിലയും ക്ലൗഡ് ദാതാവിനെ അടിസ്ഥാനമാക്കിയുള്ള അവയുടെ അനുബന്ധ ചെലവ് പാരാമീറ്ററുകളും API ക്രോസ്-റഫറൻസ് ചെയ്യുന്നു.
പ്രോഗ്രാമിന് പ്രവർത്തിക്കാൻ ക്രെഡൻഷ്യലുകളൊന്നും ആവശ്യമില്ല, കൂടാതെ ടെറാഫോമിലോ വിശകലനം ചെയ്ത ക്ലൗഡ് ഉറവിടങ്ങളിലോ ഇത് മാറ്റങ്ങളൊന്നും വരുത്തുന്നില്ല. ടെറാഫോം റിസോഴ്സ് തരങ്ങളുടെ എണ്ണം ഉപയോഗിക്കുന്നതിലൂടെ, പുതിയ ഉറവിടങ്ങൾ കണക്കിലെടുക്കുന്നുവെന്ന് API ഉറപ്പാക്കുന്നു.
ഇൻഫ്രാകോസ്റ്റ് ചെലവുകളുടെ തകർച്ച കാണിക്കുന്ന രണ്ട് പ്രധാന വഴികളുണ്ട്:
എ) ചെലവുകളുടെ മുഴുവൻ തകർച്ച
ബി) നിലവിലുള്ളതും ആസൂത്രിതവുമായ സംസ്ഥാനം തമ്മിലുള്ള പ്രതിമാസ ചെലവുകളുടെ വ്യത്യാസം
ഇൻഫ്രാകോസ്റ്റ് ഉപയോഗിച്ച് ആരംഭിക്കുക (ഘട്ടം ഘട്ടമായി)
ഇൻഫ്രാകോസ്റ്റ് ഇൻസ്റ്റാൾ ചെയ്യാനും ഉപയോഗിക്കാനും ഈ ഘട്ടം ഘട്ടമായുള്ള ഗൈഡ് പിന്തുടരുക:
1. ഇൻഫ്രാകോസ്റ്റ് ഇൻസ്റ്റാൾ ചെയ്യുക
ആരംഭിക്കുന്നതിനുള്ള ആദ്യപടി ഇൻഫ്രാകോസ്റ്റ് ഇൻസ്റ്റാൾ ചെയ്യുകയാണ്, എന്നാൽ നിങ്ങൾ ആദ്യം തന്നെ ഉണ്ടായിരിക്കണം ടെറഫോം ഇൻസ്റ്റാൾ ചെയ്തു.
ഇൻഫ്രാകോസ്റ്റിന്റെ വ്യത്യസ്ത പതിപ്പുകൾ ഇതാ:
macOS Homebrew:
brew install infracost
ഇൻഫ്രാകോസ്റ്റ് -പതിപ്പ് # 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 \
-e INFRACOST_API_KEY=see_following_step_on_how_to_get_this \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-v $PWD/:/code/ ഇൻഫ്രാകോസ്റ്റ്/ഇൻഫ്രാകോസ്റ്റ് തകർച്ച –പാത്ത് /കോഡ്/
# ഇൻഫ്രാകോസ്റ്റിനോ ടെറാഫോമിനോ ആവശ്യമായ മറ്റ് ഫ്ലാഗുകൾ/എൻവികൾ ചേർക്കുക
# ഉദാഹരണത്തിന്, നിങ്ങൾ AWS അനുമാനം-റോൾ ഉപയോഗിക്കുകയാണെങ്കിൽ ഇവ ആവശ്യമായി വന്നേക്കാം:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
വിൻഡോസ്:
ഡൗൺലോഡ് ചെയ്ത് അൺസിപ്പ് ചെയ്യുക ഏറ്റവും പുതിയ റിലീസ്. കമാൻഡ് പ്രോംപ്റ്റിൽ നിന്നോ പവർഷെല്ലിൽ നിന്നോ ഇത് പ്രവർത്തിപ്പിക്കുക .\infracost.exe --no-color
ആവശ്യമായ മറ്റ് കമാൻഡുകൾ/ഫ്ലാഗുകൾക്കൊപ്പം (കളർ ഔട്ട്പുട്ടിൽ ഒരു ബഗ് ഉണ്ട്, നമുക്ക് വിൻഡോസിൽ പരിഹരിക്കേണ്ടതുണ്ട്). നിങ്ങളിലുള്ള ഒരു ഫോൾഡറിലേക്ക് exe ഫയൽ നീക്കുകയും വേണം PATH
പരിസ്ഥിതി വേരിയബിൾ, ഉദാ C:\Windows
.
2. ഒരു API കീ നേടുക
അടുത്ത ഘട്ടം ഒരു സൗജന്യ API കീക്കായി രജിസ്റ്റർ ചെയ്യുക എന്നതാണ്, ഉദാഹരണ തരങ്ങൾക്ക് വിലകൾ ലഭിക്കുന്നത് പോലുള്ള ടാസ്ക്കുകൾക്കായി ക്ലൗഡ് പ്രൈസിംഗ് API-യെ അന്വേഷിക്കാൻ CLI ഉപയോഗിക്കുന്നു.
എല്ലാ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളും:
ഇൻഫ്രാകോസ്റ്റ് രജിസ്റ്റർ
കീ സംരക്ഷിച്ചിരിക്കുന്നു ~/.config/infracost/credentials.yml
.
3. ഇൻഫ്രാകോസ്റ്റ് പ്രവർത്തിപ്പിക്കുക
നിങ്ങളുടെ ടെറാഫോം അവസ്ഥയിലോ ക്ലൗഡ് ഉറവിടങ്ങളിലോ മാറ്റങ്ങളൊന്നും വരുത്താത്ത ഇൻഫ്രാകോസ്റ്റ് പ്രവർത്തിപ്പിക്കാൻ നിങ്ങൾ ഇപ്പോൾ തയ്യാറാണ്. ഇത് പരിശോധിക്കുന്നതിന് നൽകിയിരിക്കുന്ന ടെറാഫോം പ്രോജക്റ്റ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് പ്രവർത്തിപ്പിക്കാം.
എല്ലാ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളും:
git ക്ലോൺ https://github.com/infracost/example-terraform.git
cd ഉദാഹരണം-ടെറാഫോം/സാമ്പിൾ1
# main.tf ഉപയോഗിച്ച് കളിക്കുക, ചെലവുകൾ താരതമ്യം ചെയ്യാൻ വീണ്ടും റൺ ചെയ്യുക
ഇൻഫ്രാകോസ്റ്റ് തകർച്ച -പാത്ത്.
# പ്രതിമാസ ചെലവുകളുടെ വ്യത്യാസം കാണിക്കുക, yml ഫയൽ എഡിറ്റ് ചെയ്യുക, ചെലവുകൾ താരതമ്യം ചെയ്യാൻ വീണ്ടും പ്രവർത്തിപ്പിക്കുക
ഇൻഫ്രാകോസ്റ്റ് ഡിഫ്-പാത്ത്. -സമന്വയിപ്പിക്കുക-ഉപയോഗം-ഫയൽ -ഉപയോഗം-ഫയൽ infracost-usage.yml
4. CI/CD-ലേക്ക് ചേർക്കുക
നിങ്ങൾക്ക് ഇപ്പോൾ ഇൻഫ്രാകോസ്റ്റുകൾ ഉപയോഗിക്കാം CI/CD സംയോജനങ്ങൾ സ്വയമേവ പുൾ അഭ്യർത്ഥന കമൻറുകൾ ചേർക്കുന്നതിന്, അത് നിങ്ങൾക്ക് ചെലവ് കണക്കാക്കുന്ന വ്യത്യാസങ്ങൾ കാണിക്കുന്നു. ഇത് നിങ്ങൾക്ക് ഒരു സുരക്ഷാ വലയും നൽകും, അവരുടെ വർക്ക്ഫ്ലോയുടെ ഭാഗമായി മാറ്റങ്ങളുടെ ചെലവ് ആഘാതം ചർച്ച ചെയ്യാൻ ടീമുകളെ പ്രാപ്തരാക്കുന്നു.
ഉപയോഗം
ദി infracost
CLI-ന് ഇനിപ്പറയുന്ന പ്രധാന കമാൻഡുകൾ ഉണ്ട്:
breakdown
: ചെലവുകളുടെ പൂർണ്ണമായ തകർച്ച കാണിക്കുകdiff
: നിലവിലുള്ളതും ആസൂത്രിതവുമായ സംസ്ഥാനം തമ്മിലുള്ള പ്രതിമാസ ചെലവുകളുടെ വ്യത്യാസം കാണിക്കുക
നിങ്ങളുടെ റിപ്പോയ്ക്ക് ഒന്നിലധികം ടെറാഫോം പ്രോജക്റ്റുകളോ വർക്ക്സ്പെയ്സുകളോ ഉണ്ടെങ്കിൽ ഇൻഫ്രാകോസ്റ്റ് കോൺഫിഗറേഷൻ ഫയൽ ഉപയോഗിക്കുക. അവയുടെ ഫലങ്ങൾ ഒരേ ബ്രേക്ക്ഡൌൺ അല്ലെങ്കിൽ ഡിഫ് ഔട്ട്പുട്ടിലേക്ക് കൂട്ടിച്ചേർക്കും.
വിപുലമായ ഉപയോഗം
സാധാരണ ഉപയോഗ രീതികൾക്ക് പുറമേ ഉപയോഗിക്കാവുന്ന വിവിധ നൂതന ഉപയോഗ രീതികളും ഇൻഫ്രാകോസ്റ്റിന് ഉണ്ട്. ഈ നൂതന രീതികൾ ഇൻഫ്രാകോസ്റ്റ് കോൺഫിഗറേഷൻ ഫയൽ വഴിയും ഉപയോഗിക്കാം.
ടെറാഫോം പ്ലാൻ ഫയൽ
ഒരു ടെറാഫോം പ്ലാൻ ഫയലിനെതിരെ ഇൻഫ്രാകോസ്റ്റിന് പ്രവർത്തിപ്പിക്കാം, നിങ്ങൾ ഇതിനകം ടെറാഫോം റൺ ചെയ്തിട്ടുണ്ടെന്ന് സൂചിപ്പിക്കുന്നു init.
ഇൻഫ്രാകോസ്റ്റ് ടെറാഫോം പ്രവർത്തിപ്പിക്കുന്നുshow
ഈ സാഹചര്യത്തിൽ, അതിനർത്ഥം ഇതിന് ക്ലൗഡ് ക്രെഡൻഷ്യലുകൾ ആവശ്യമില്ല അല്ലെങ്കിൽ --terraform-plan-flags
സജ്ജമാക്കണം.
cd പാത്ത്/ടു/കോഡ്
ടെറാഫോം ഇനിറ്റ്
ടെറാഫോം പ്ലാൻ -ഔട്ട് tfplan.binary
ഇൻഫ്രാകോസ്റ്റ് തകർച്ച -പാത്ത് 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 ക്ലൗഡ് എന്നിവയ്ക്കുള്ള പിന്തുണ ആവശ്യമാണെങ്കിൽ ഇത് ഒരു നല്ല തിരഞ്ഞെടുപ്പാണ്. നിങ്ങളുടെ ടീം തമ്മിൽ മികച്ച സഹകരണം സൃഷ്ടിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ഇൻഫ്രാകോസ്റ്റിന് ഇക്കാര്യത്തിൽ സഹായിക്കാനാകും. ഈ സവിശേഷതകളെല്ലാം ടെറാഫോമിനായുള്ള ക്ലൗഡ് ചെലവ് എസ്റ്റിമേറ്റുകൾക്കായി നടപ്പിലാക്കുന്നത് നിങ്ങൾ ശക്തമായി പരിഗണിക്കേണ്ട ഒരു ഉപകരണമാക്കി മാറ്റുന്നു.
നിങ്ങളുടെ അഭിപ്രായങ്ങൾ രേഖപ്പെടുത്തുക