টেরাফর্মের মতো অবকাঠামো-কোড প্রকল্পগুলির জন্য ক্লাউড খরচ অনুমান করতে চাওয়া DevOps, SRE এবং ডেভেলপারদের জন্য ইনফ্রাকস্ট গুরুত্বপূর্ণ। Infracost-এর সাহায্যে, আপনি বিভিন্ন বিকল্পের তুলনা করার সময় দ্রুত একটি খরচের ভাঙ্গন দেখতে পারেন, যা একটি বড় সিদ্ধান্তের আগে আরও ভাল অন্তর্দৃষ্টিতে সাহায্য করে।
ইনফ্রাকোস্ট কিভাবে কাজ করে?
Infracost আপনার Terraform কোড স্ক্যান করে 3 মিলিয়নেরও বেশি দাম পরীক্ষা করতে পারে এবং এটি আপনার রিসোর্স লঞ্চ করার আগে একটি সহজ এবং সহজে পড়া খরচের অনুমান তৈরি করে।
কোডের কোন লাইনগুলির সবচেয়ে বেশি খরচের প্রভাব রয়েছে তা জানতে আপনি Infracost ব্যবহার করতে পারেন কারণ এটি আপনার পুল অনুরোধে সংস্থানগুলির খরচ মানচিত্র করে। আপনার CI/CD-এ Infracost সংহত করার মাধ্যমে, আপনি আপনার দলের সাথে সহযোগিতা করতে পারেন এবং আপনার বিদ্যমান কর্মপ্রবাহের পরিবর্তনের প্রভাব নিয়ে আলোচনা সক্ষম করতে পারেন।
Infracost তার ক্লাউড প্রাইসিং API ব্যাকএন্ড পরিষেবার মাধ্যমে কাজ করে এবং CLI টুলের সাহায্যে আপনি JSON ফর্ম্যাটে একটি Terraform প্ল্যান পার্স করতে পারেন। এপিআই ব্যবহার করা প্রতিটি ক্লাউড রিসোর্সের স্বতন্ত্র খরচ, সেইসাথে ক্লাউড প্রদানকারীর উপর ভিত্তি করে তাদের সম্পর্কিত খরচ পরামিতিগুলিকে ক্রস-রেফারেন্স করে।
প্রোগ্রামটির পরিচালনার জন্য কোনো শংসাপত্রের প্রয়োজন নেই এবং এটি টেরাফর্ম বা বিশ্লেষণ করা ক্লাউড সংস্থানগুলিতে কোনো পরিবর্তন করে না। Terraform রিসোর্স প্রকারের গণনা ব্যবহার করে, API নিশ্চিত করে যে নতুন সংস্থানগুলির জন্য হিসাব করা হয়েছে।
Infracost খরচের ভাঙ্গন দেখায় দুটি প্রধান উপায় আছে:
ক) খরচের সম্পূর্ণ ভাঙ্গন
খ) বর্তমান এবং পরিকল্পিত রাজ্যের মধ্যে মাসিক খরচের পার্থক্য
ইনফ্রাকোস্ট দিয়ে শুরু করা (ধাপে ধাপে)
Infracost ইনস্টল এবং ব্যবহার শুরু করতে এই ধাপে ধাপে নির্দেশিকা অনুসরণ করুন:
1. ইনফ্রাকোস্ট ইনস্টল করুন
শুরু করার প্রথম ধাপ হল Infracost ইন্সটল করা, কিন্তু আপনাকে অবশ্যই আগে থেকেই থাকতে হবে Terraform ইনস্টল করা নেই।
এখানে ইনফ্রাকোস্টের বিভিন্ন সংস্করণ দেখুন:
macOS হোমব্রু:
ব্রু ইনস্টল ইনফ্রাকোস্ট
ইনফ্রাকোস্ট -সংস্করণ # v0.9.7 দেখানো উচিত
macOS ম্যানুয়াল:
# আপনার OS/arch এর উপর ভিত্তি করে CLI ডাউনলোড করে এবং /usr/local/bin এ রাখে
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | শ
লিনাক্স:
# আপনার OS/arch এর উপর ভিত্তি করে CLI ডাউনলোড করে এবং /usr/local/bin এ রাখে
curl -fsSL https://raw.githubusercontent.com/infracost/infracost/master/scripts/install.sh | শ
ডক-শ্রমিক:
ডকার পুল ইনফ্রাকোস্ট/ইনফ্রাকোস্ট
ডকার রান -আরএম \
-e 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/
# Infracost বা Terraform এর জন্য অন্যান্য প্রয়োজনীয় পতাকা/এনভিস যোগ করুন
# উদাহরণস্বরূপ, আপনি যদি AWS অনুমান-ভুমিকা ব্যবহার করেন তবে এগুলির প্রয়োজন হতে পারে:
# -e AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN \
# -e AWS_REGION=$AWS_REGION \
উইন্ডোজ:
ডাউনলোড করুন এবং আনজিপ করুন সর্বশেষ রিলিজ. কমান্ড প্রম্পট বা পাওয়ারশেল ব্যবহার করে এটি চালান .\infracost.exe --no-color
অন্যান্য প্রয়োজনীয় কমান্ড/পতাকাগুলির পাশাপাশি (কালার আউটপুটে একটি বাগ রয়েছে যা আমাদের উইন্ডোজে ঠিক করতে হবে)। আপনার exe ফাইলটিকে আপনার ফোল্ডারে সরানো উচিত PATH
পরিবেশ সূচক, উদাহরণস্বরূপ C:\Windows
.
2. একটি API কী পান৷
পরবর্তী ধাপটি হল একটি বিনামূল্যের API কী-র জন্য নিবন্ধন করা, যা CLI ব্যবহার করে ক্লাউড প্রাইসিং এপিআই-কে প্রশ্ন করার জন্য উদাহরণের প্রকারের জন্য দাম পাওয়ার মতো কাজের জন্য।
সমস্ত অপারেটিং সিস্টেম:
ইনফ্রাকোস্ট রেজিস্টার
চাবি সংরক্ষিত হয় ~/.config/infracost/credentials.yml
.
3. ইনফ্রাকোস্ট চালান
এখন আপনি Infracost চালানোর জন্য প্রস্তুত, যা আপনার Terraform রাজ্য বা ক্লাউড সংস্থানগুলিতে কোনও পরিবর্তন করে না। আপনি এটি পরীক্ষা করার জন্য প্রদত্ত Terraform প্রকল্পের সাথে এটি চালাতে পারেন।
সমস্ত অপারেটিং সিস্টেম:
git ক্লোন https://github.com/infracost/example-terraform.git
cd উদাহরণ-টেরাফর্ম/নমুনা1
# main.tf এর সাথে খেলুন এবং খরচ তুলনা করতে পুনরায় চালান
ইনফ্রাকোস্ট ব্রেকডাউন -পথ।
# মাসিক খরচের পার্থক্য দেখান, yml ফাইল সম্পাদনা করুন এবং খরচ তুলনা করতে পুনরায় চালান
ইনফ্রাকোস্ট ডিফ-পথ। –sync-usage-file –usage-file infracost-usage.yml
4. CI/CD এ যোগ করুন
আপনি এখন Infracost এর ব্যবহার করতে পারেন সিআই/সিডি ইন্টিগ্রেশন স্বয়ংক্রিয়ভাবে পুল অনুরোধ মন্তব্য যোগ করতে, যা আপনাকে খরচ অনুমান পার্থক্য দেখায়। এটি আপনাকে একটি সেফটিনেটও প্রদান করবে, দলগুলিকে তাদের কর্মপ্রবাহের অংশ হিসাবে পরিবর্তনের খরচের প্রভাব নিয়ে আলোচনা করতে সক্ষম করবে৷
ব্যবহার
সার্জারির infracost
CLI এর নিম্নলিখিত প্রধান কমান্ড রয়েছে:
breakdown
: খরচের সম্পূর্ণ ভাঙ্গন দেখানdiff
: বর্তমান এবং পরিকল্পিত অবস্থার মধ্যে মাসিক খরচের পার্থক্য দেখান
আপনার রেপোতে একাধিক Terraform প্রোজেক্ট বা ওয়ার্কস্পেস থাকলে একটি Infracost কনফিগারেশন ফাইল ব্যবহার করুন। তাদের ফলাফল একই ব্রেকডাউন বা ভিন্ন আউটপুটে মিলিত হবে।
উন্নত ব্যবহার
ইনফ্রাকোস্টের বিভিন্ন উন্নত ব্যবহারের পদ্ধতি রয়েছে যা নিয়মিত ব্যবহারের পদ্ধতি ছাড়াও ব্যবহার করা যেতে পারে। এই উন্নত পদ্ধতিগুলি একটি Infracost কনফিগারেশন ফাইলের মাধ্যমেও ব্যবহার করা যেতে পারে।
টেরাফর্ম প্ল্যান ফাইল
Infracost একটি Terraform প্ল্যান ফাইলের বিপরীতে চালানো যেতে পারে, যা বোঝায় যে আপনি ইতিমধ্যেই Terraform চালাচ্ছেন init.
Infracost শুধু Terraform চালায়show
এই ক্ষেত্রে, মানে এটির জন্য ক্লাউড শংসাপত্রের প্রয়োজন নেই বা --terraform-plan-flags
সেট করা.
সিডি পাথ/টু/কোড
terraform init
টেরাফর্ম প্ল্যান -আউট tfplan.binary
ইনফ্রাকোস্ট ব্রেকডাউন -পথ tfplan.binary
infracost diff –path tfplan.binary
টেরাফর্ম স্টেট
আপনি যদি বর্তমান Terraform রাজ্যের খরচ ভাঙ্গন দেখতে চান, তাহলে আপনার জানা উচিত infracost breakdown
কমান্ড আছে একটি --terraform-use-state
পতাকা, যা এই ক্ষেত্রে কার্যকর প্রমাণিত হবে। আপনি ইতিমধ্যেই Terraform চালাতে হবে apply
, তাই Infracost শুধু Terraform চালায় show
, যার জন্য ক্লাউড শংসাপত্রের প্রয়োজন নেই বা --terraform-plan-flags
সেট করা.
ইনফ্রাকোস্ট ব্রেকডাউন -পথের উদাহরণ/টেরাফর্ম -টেরাফর্ম-ব্যবহার-স্টেট
Terraform স্টেট JSON ফাইল
আপনি চালাতে পারেন infracost breakdown
একটি Terraform রাজ্য JSON ফাইলের বিরুদ্ধে। এটি অভ্যন্তরীণ JSON প্রতিনিধিত্বের পরিবর্তে রাজ্যের [JSON আউটপুট বিন্যাস] হবে। এটি চলমান দ্বারা উৎপন্ন করা আবশ্যক terraform show -json
একটি টেরাফর্ম প্রকল্পের ভিতরে, এবং এটি বিশেষভাবে উপযোগী যদি আপনি বর্তমান টেরাফর্ম অবস্থার ব্যয় ভাঙ্গন দেখতে চান। এই ক্ষেত্রে, এটি বোঝায় যে আপনি ইতিমধ্যেই টেরাফর্ম চালাচ্ছেন apply
, মানে কোন ক্লাউড শংসাপত্র বা --terraform-plan-flags
প্রয়োজন হয়.
কোন মেঘ এবং সম্পদ সমর্থিত?
Infracost এর চেয়ে বেশি সমর্থন করে 200 Terraform সম্পদ AWS, Google, এবং Azure জুড়ে, অন্য IaC টুলের মত পুলুমি এবং ক্লাউডফর্মেশন রোডম্যাপে অন্তর্ভুক্ত করা হয়েছে। নতুন সংস্থানগুলির জন্য সমর্থন ক্রমাগত যোগ করা হচ্ছে, তাই রিলিজের জন্য রেপো পরীক্ষা করা গুরুত্বপূর্ণ।
উপসংহার
Infracost একটি সহায়ক ডেভেলপারদের জন্য টুল, DevOps, SRE, এবং অন্যরা দ্রুত খরচের ভাঙ্গন দেখতে চায় এবং বিভিন্ন বিকল্পের তুলনা করতে চায়। আপনি যদি এটি CI এর সাথে সংহত করতে চান এবং/অথবা AWS এবং Google ক্লাউডের জন্য সমর্থনের প্রয়োজন হয় তবে এটি একটি ভাল পছন্দ। আপনি যদি আপনার দলের মধ্যে আরও ভালো সহযোগিতা তৈরি করতে চান, তাহলে ইনফ্রাকোস্টও সেই বিষয়ে সাহায্য করতে পারে। এই সমস্ত বৈশিষ্ট্যগুলি এটিকে একটি টুল তৈরি করে যা আপনার টেরাফর্মের জন্য ক্লাউড খরচ অনুমানের জন্য প্রয়োগ করার বিষয়ে দৃঢ়ভাবে বিবেচনা করা উচিত।
নির্দেশিকা সমন্ধে মতামত দিন