এই পর্বে যা শিখবেন
- Cloud আসার আগে server চালানোর তিনটি পথ, আর সেগুলোর আসল ব্যথা কোথায়
- NIST-এর সংজ্ঞা, পাঁচ বৈশিষ্ট্য আর কোন ব্যবসা cloud, কোনটি নয় তা যাচাই করার উপায়
- Over-provisioning আর under-provisioning-এর হিসাব, একটি সপ্তাহের সিমুলেটরে
- একটি API call থেকে চলমান virtual machine পর্যন্ত ভেতরে কী কী ঘটে
- Cloud কী সমাধান করে না, আর এই ৮১ পর্বের কোর্সে কোথায় কী পাবেন
১ · Cloud-এর আগের পৃথিবী — server কিনতে হতো মাস ধরে
ধরুন ২০০৪ সাল। আপনি আর দুই বন্ধু মিলে একটি অনলাইন বাজারের ওয়েবসাইট বানাচ্ছেন। কোড লেখা শেষ। এবার সেটি চালাতে একটি server লাগবে, মানে এমন কম্পিউটার যা দিনরাত চালু থাকে আর ব্যবহারকারীর অনুরোধের জবাব দেয়। তখন আপনার সামনে মোটামুটি তিনটি পথ ছিল।
নিজের server room
Server কিনে অফিসের একটি ঘরে রাখা। সাথে লাগে UPS, জেনারেটর, এসি, internet সংযোগ আর রাতে ডাকলে আসার মতো একজন মানুষ। সবটাই আপনার। একে বলে on-premises.
পুরো নিয়ন্ত্রণ, পুরো দায়Colocation
Server আপনার, কিন্তু রাখা হয় ভাড়া করা data centre-এর র্যাকে। বিদ্যুৎ, ঠান্ডা আর নেটওয়ার্ক তাদের। ডিস্ক নষ্ট হলে যন্ত্র বদলানোর দায়িত্ব সাধারণত আপনার। একেই বলে colocation.
যন্ত্র আপনার, ঘর ভাড়ারShared hosting
একটি বড় server-এ শত শত ওয়েবসাইট একসাথে থাকে। মাসে অল্প টাকা, cPanel-এর মতো সহজ প্যানেল। ছোট সাইটের জন্য আজও ভালো। পাশের সাইট ভারী হলে আপনারটিও ধীর হতে পারে। একে বলে shared hosting.
এই তিন পথের মাঝামাঝি আরও কিছু ছিল, যেমন dedicated server ভাড়া আর VPS. তবে সবগুলোর সমস্যা একই জায়গায়: সিদ্ধান্ত নিতে হয় আগে, ব্যবহার হয় পরে। নতুন যন্ত্র চাইলে দরপত্র, অনুমোদন, আমদানি, যন্ত্র বসানো আর সেটআপ মিলিয়ে কয়েক সপ্তাহ থেকে কয়েক মাস চলে যেত। আর একবার কিনলে সেটি বেচে দেওয়া সহজ নয়।
বিয়েবাড়ির ক্যাটারিং ভাবুন। ৩০০ জনের জন্য রান্নার হাঁড়ি কিনলে বিয়ের পরদিন সেই হাঁড়ি গুদামঘরে পড়ে থাকে। আবার ১০০ জনের হাঁড়ি কিনলে অতিথি বেশি এলে খাবার ফুরিয়ে যায়। ক্যাটারিং কোম্পানি থেকে ঘণ্টা ধরে হাঁড়ি ভাড়া নিলে এই দুই সমস্যাই কমে। Server কেনার সমস্যাও হুবহু এটি।
এই দুই ভুলের নাম আছে। চাহিদার চেয়ে বেশি যন্ত্র কিনে বসে থাকা হলো over-provisioning. চাহিদার চেয়ে কম যন্ত্র রাখা হলো under-provisioning. Provisioning শব্দের অর্থ কাজে লাগানোর জন্য যন্ত্র বা সম্পদ তৈরি করে দেওয়া। আগেই বলে রাখি, দুটি ভুলই টাকার ভুল। প্রথমটিতে টাকা যায় অলস যন্ত্রে, দ্বিতীয়টিতে টাকা যায় ফিরে যাওয়া গ্রাহকের সাথে।
নিচের ধাপগুলোতে একটি কাল্পনিক অনলাইন বাজার অ্যাপের চাঁদরাত দেখুন। প্রতিটি সংখ্যা ধরে নেওয়া। “পরে” চাপুন আর দুই কলামের পার্থক্য খেয়াল করুন।
| সময় | |
| চাহিদা | |
| নিজের server: চালু | |
| নিজের server: এই ঘণ্টায় ফেরত | |
| Cloud: চালু | |
| Cloud: এই ঘণ্টায় ফেরত |
- সন্ধ্যা ৬টা, সব শান্ত। দলটির নিজের ১০টি server আছে, চাহিদা ৬টির সমান। Cloud-এর হিসাবেও আমরা ১০টি দিয়েই শুরু করছি, যাতে তুলনাটি ন্যায্য হয়। ৪টি server-এর ক্ষমতা অলস।
- Cloud-এর নিয়ম। ধরে নিই cloud-এর দিকের দল প্রতি ঘণ্টায় একটি সহজ নিয়ম মানে: আগের ঘণ্টার চাহিদার দেড় গুণ server চালু রাখা, ভগ্নাংশ হলে উপরে তুলে নেওয়া। আগের ঘণ্টায় চাহিদা ছিল ৬, তাই এখন ৯টি। চাহিদাও ৯, কেউ ফেরত যায়নি।
- রাত ৮টায় প্রথম ধাক্কা। চাহিদা ১৪। নিজের ১০টি server সর্বোচ্চ ১০ সামলাতে পারে, তাই ৪-এর সমান অনুরোধ ফেরত গেল। Cloud-এ ৯ × ১.৫ = ১৩.৫, উপরে তুলে ১৪টি, ঠিক মিলে গেল।
- রাত ৯টা। চাহিদা ২২। নিজের দিকে ১২-এর সমান অনুরোধ ফেরত। Cloud-এ ১৪ × ১.৫ = ২১টি, তাই ১-এর সমান অনুরোধ ফেরত গেল। Cloud জাদু নয়, চাহিদার পেছনে একটু দেরিতে দৌড়ায়।
- রাত ১০টায় চূড়া। চাহিদা ৩০। নিজের server অর্ধেকের বেশি গ্রাহক ফেরায়: ২০-এর সমান। Cloud-এ আগের ঘণ্টার চাহিদা ২২ ধরে ২২ × ১.৫ = ৩৩টি। সবাই সেবা পেলেন।
- রাত ১১টায় চাহিদা নামল। চাহিদা ১৮, কিন্তু নিয়মটি আগের ঘণ্টার ৩০ দেখে ৪৫টি চালু রেখেছে। ২৭টি অলস। Cloud-এও অপচয় আছে, এখানে তা দেখা যাচ্ছে। নিজের দিকে তখনও ৮-এর সমান অনুরোধ ফেরত যাচ্ছে।
- রাত ১২টা। চাহিদা ৪, cloud-এ ২৭টি চালু, যা পরের ঘণ্টায় নেমে যাবে। সাত ঘণ্টার হিসাব: নিজের দিকে চালু ৭০ server-ঘণ্টা, ফেরত ৪৪। Cloud-এ চালু ১৫৯ server-ঘণ্টা, ফেরত মাত্র ১। সেলের রাতে cloud বেশি server চালিয়েছে, কম নয়।
- সারা মাসের ছবি। ৩০ দিনে ৭২০ ঘণ্টা। নিজের ১০টি server সারা মাস চলে: ১০ × ৭২০ = ৭,২০০ server-ঘণ্টা। Cloud-এ বাকি ৭১৩ ঘণ্টায় ধরি ৪টি চালু: ৪ × ৭১৩ = ২,৮৫২, সাথে সেলের ১৫৯, মোট ৩,০১১। কম server-ঘণ্টায় বেশি গ্রাহক। তবে প্রতি server-ঘণ্টার দাম দুই দিকে সমান নয়, সে হিসাব পর্ব ৪-এ।
২ · ভাড়ার কম্পিউটার — CNG আর বিদ্যুৎ বিলের যুক্তি
Cloud-এর মূল চিন্তা খুব সাধারণ। আপনি নিজের গাড়ি না কিনে প্রয়োজনের সময় CNG ডাকতে পারেন। আবার বাড়িতে বিদ্যুৎ কেন্দ্র না বসিয়ে মিটার ধরে বিল দেন। Cloud একই কাজ করে কম্পিউটারের সাথে।
| প্রশ্ন | নিজের গাড়ি = নিজের server | CNG ভাড়া = cloud |
|---|---|---|
| শুরুতে খরচ | বড় অঙ্ক একবারে | প্রায় শূন্য |
| ব্যবহার না করলে | গ্যারেজে পড়ে থাকে, টাকাও আটকে থাকে | ডাকেননি, তাই বিলও নেই |
| মেরামত, চালক | আপনার দায়িত্ব | মালিকের দায়িত্ব |
| হঠাৎ পাঁচজন অতিথি | গাড়িতে জায়গা নেই | আরও একটি CNG ডাকলেই হলো |
| প্রতিদিন দুই ঘণ্টা অফিস | দীর্ঘ মেয়াদে সস্তা হতে পারে | দীর্ঘ মেয়াদে দামি হতে পারে |
শেষ সারিটি লক্ষ করুন। যাঁর চাহিদা স্থির, তাঁর জন্য ভাড়া সবসময় সস্তা নয়। Cloud-এর আসল মূল্য তখনই, যখন চাহিদা ওঠানামা করে বা অনিশ্চিত। এই কথাটি পুরো কোর্সে বারবার ফিরে আসবে।
উপমাটির সীমা: CNG থেকে নামলে মিটার থেমে যায়। Cloud-এ কাজ শেষে server বন্ধ করতে ভুলে গেলে মিটার চলতেই থাকে। Disk, IP ঠিকানা আর data transfer-এরও আলাদা বিল হতে পারে। অনেক নতুন ব্যবহারকারীর প্রথম cloud শিক্ষা আসে অপ্রত্যাশিত বিল থেকে। তাই হাতে-কলমে কিছু করার আগে পর্ব ৬-এর budget alert আর পরিষ্কার করার ধাপগুলো পড়ে নিন। এই কোর্সের বেশিরভাগ অংশ কোনো cloud account ছাড়াই শেখা যায়।
৩ · NIST-এর সংজ্ঞা — পাঁচ, তিন আর চার
“Cloud” শব্দটি বিজ্ঞাপনে এত ব্যবহার হয়েছে যে একসময় এর অর্থই ঝাপসা হয়ে গিয়েছিল। তাই যুক্তরাষ্ট্রের মান-নির্ধারণী সংস্থা NIST ২০১১ সালে একটি ছোট নথি প্রকাশ করে: SP 800-145, লিখেছেন Peter Mell ও Timothy Grance. নথিটি মাত্র কয়েক পৃষ্ঠার, কিন্তু আজও পরীক্ষা আর ইন্টারভিউতে এটিই সবচেয়ে বেশি উদ্ধৃত সংজ্ঞা।
Cloud computing হলো এমন একটি ব্যবস্থা, যেখানে network দিয়ে যেকোনো জায়গা থেকে, সুবিধামতো আর চাহিবামাত্র, কনফিগার করা যায় এমন কম্পিউটিং সম্পদের একটি ভাগাভাগি করা ভান্ডার (network, server, storage, application, service) ব্যবহার করা যায়। এই সম্পদ খুব অল্প ব্যবস্থাপনা বা provider-এর সাথে সামান্য যোগাযোগেই দ্রুত নেওয়া আর ফেরত দেওয়া যায়। (NIST SP 800-145-এর সংজ্ঞার ভাবানুবাদ)
সংজ্ঞাটি একবারে মনে রাখা কঠিন। তাই NIST একে তিন ভাগে ভেঙেছে: ৫টি অপরিহার্য বৈশিষ্ট্য, ৩টি service model আর ৪টি deployment model.
NIST-এর ৫-৩-৪ কাঠামো
Five essential characteristics, three service models, four deployment models
পাঁচটি বৈশিষ্ট্য মুখস্থ না করে একটি গল্পে দেখা ভালো। একটি কাল্পনিক অনলাইন বাজার অ্যাপের রাতের শিফটে আছেন রিমা। তাঁর এক রাতের কাজের ভেতরেই পাঁচটি বৈশিষ্ট্য চলে আসে।
- Self-serviceনিজে নেওয়া
- Networkসবখানে
- Poolingভাগাভাগি
- Elasticityবাড়া-কমা
- Measuredমেপে বিল
রিমা নিজেই ২টি server চাইলেন
ফোন, ইমেইল বা মানুষের হাত লাগেনি
অবস্থা: কয়েক মিনিটেই চালু
ল্যাপটপের browser → console
ফোনের browser → console
অফিসের script → API
পথ একটাই: standard network
রিমার VM অন্য গ্রাহকের VM আরও এক গ্রাহকের VM রিমা জানেন শুধু region, যন্ত্রটি নয়
রাত ৯টা ২ ██ রাত ১০টা ১০ ██████████ ← সেল শুরু রাত ১টা ২ ██ ← সেল শেষ
১০টি server × ৩ ঘণ্টা = ৩০ server-ঘণ্টা
২টি server × ২১ ঘণ্টা = ৪২ server-ঘণ্টা
মোট ৭২ server-ঘণ্টা × $0.10
এই ২৪ ঘণ্টার বিল = $7.20
- On-demand self-service. নিজে নিজে, চাহিবামাত্র সম্পদ নেওয়া যায়। রাত ২টায় রিমাকে কোনো বিক্রয় প্রতিনিধিকে ফোন করতে হয়নি। Provider-এর দিকে কোনো মানুষ এই অনুরোধ হাতে দেখেননি।
- Broad network access. সেবাটি network দিয়ে, স্বাভাবিক উপায়ে পাওয়া যায়: ফোন, ল্যাপটপ বা অন্য প্রোগ্রাম থেকে। আলাদা কোনো বিশেষ তার বা যন্ত্র লাগে না।
- Resource pooling. Provider বিশাল এক ভান্ডার থেকে অনেক গ্রাহককে ভাগ করে সম্পদ দেন। রিমা জানেন না তাঁর VM ঠিক কোন যন্ত্রে, শুধু জানেন কোন region-এ। অনেক গ্রাহকের এক যন্ত্রে থাকাকে বলে multi-tenancy.
- Rapid elasticity. রিমার দল সেলের সময় ২ থেকে ১০টি server করল, সেল শেষে আবার ২টি। গ্রাহকের চোখে ভান্ডারটি প্রায় অসীম মনে হয়। এটিই elasticity, আর সেই “প্রায়” শব্দটি গুরুত্বপূর্ণ, কারণ quota আর capacity-র সীমা বাস্তবে থাকে।
- Measured service. ব্যবহার মেপে রাখা হয়, আর সেটিই বিলের ভিত্তি। ১০ × ৩ = ৩০ আর ২ × ২১ = ৪২, মোট ৭২ server-ঘণ্টা। ঘণ্টায় $০.১০ ধরলে (দামটি শুধু ধরে নেওয়া) ২৪ ঘণ্টায় $৭.২০। মাপ ছাড়া ব্যবহার-অনুযায়ী বিল সম্ভব নয়।
এবার বাকি দুটি ভাগ শুধু চিনে রাখুন। পরের দুই পর্বে এগুলো নিয়ে বিস্তারিত আলোচনা আছে।
| নাম | এক লাইনে | কোথায় বিস্তারিত |
|---|---|---|
| IaaS | কাঁচা VM, disk, network ভাড়া; OS থেকে উপরের সব আপনার | পর্ব ২ |
| PaaS | কোড দিন, চালানোর ব্যবস্থা provider-এর | পর্ব ২ |
| SaaS | তৈরি সফটওয়্যার browser-এ ব্যবহার, যেমন অনলাইন ইমেইল | পর্ব ২ |
| Public | সবার জন্য খোলা, provider-এর যন্ত্রে | পর্ব ৩ |
| Private | একটি প্রতিষ্ঠানের একার জন্য | পর্ব ৩ |
| Community | একই উদ্দেশ্যের কয়েকটি প্রতিষ্ঠানের জন্য | পর্ব ৩ |
| Hybrid | দুই বা তার বেশি ধরনের জোড়া | পর্ব ৩ |
সংজ্ঞায় যা নেই: FaaS, container আর multi-cloud শব্দ NIST-এর ২০১১-র নথিতে আলাদা করে নেই, কারণ এগুলো পরে জনপ্রিয় হয়েছে। Provider-রা এখন শত শত service বিক্রি করেন, সব তিন বাক্সে সুন্দরভাবে বসে না। আন্তর্জাতিক মান ISO/IEC 17788 (২০১৪)-এও cloud-এর শব্দভান্ডার আছে। তাই ৫-৩-৪ হলো চিন্তার কাঠামো, চিরন্তন তালিকা নয়।
৪ · চাহিদা বনাম capacity — অপচয় আর হারানো গ্রাহকের হিসাব
এবার অনুভূতি ছেড়ে সংখ্যায় যাই। Capacity মানে আপনার ব্যবস্থা একসাথে কতটা কাজ সামলাতে পারে। আর utilization মানে সেই ক্ষমতার কত শতাংশ সত্যিই কাজে লাগছে।
একটি হাতে-কলমে হিসাব। একটি ব্যবস্থায় সর্বোচ্চ চাহিদা ৪০টি server, কিন্তু মাসের গড় চাহিদা ১২টি। চূড়া সামলাতে ৪০টি কেনা হলো। ৩০ দিনের মাসে:
- চালু server-ঘণ্টা = ৪০ × ৭২০ = ২৮,৮০০
- ব্যবহৃত server-ঘণ্টা = ১২ × ৭২০ = ৮,৬৪০
- Utilization = ৮,৬৪০ ÷ ২৮,৮০০ = ০.৩০, অর্থাৎ ৩০%
- অলস = ২৮,৮০০ − ৮,৬৪০ = ২০,১৬০ server-ঘণ্টা
মানে ১০০ টাকায় কেনা ক্ষমতার ৭০ টাকার অংশ অলস থাকে। লক্ষ করুন, যন্ত্র নষ্ট নয়, হিসাবে ভুলও নেই। চূড়ার জন্য তৈরি থাকার দামই এটি।
নিচের ডায়াগ্রামে একটি কাল্পনিক ওয়েবসাইটের এক সপ্তাহের চাহিদা ঘণ্টা ধরে আঁকা। রবিবার থেকে শনিবার, দিনে একটি ঢেউ, আর শুক্রবার সন্ধ্যায় সেলের ধাক্কা। একই সপ্তাহে তিনটি পরিকল্পনা পাশাপাশি দেখুন।
| পরিকল্পনা | |
| চালু server-ঘণ্টা | |
| অলস server-ঘণ্টা | |
| হারানো অনুরোধ | |
| Utilization |
- চাহিদা। সপ্তাহে গড় চাহিদা প্রায় ১৪টি server-এর সমান, কিন্তু শুক্রবার সন্ধ্যার চূড়া প্রায় ৫৫। গড়ের প্রায় চার গুণ। এই ব্যবধানই সমস্যার মূল।
- চূড়া ধরে কেনা: স্থির ৫৬টি। কেউ ফেরত যায় না, হারানো অনুরোধ ০%. কিন্তু ৯,৪০৮ server-ঘণ্টার মধ্যে ৭,০৭০ অলস, utilization মাত্র ২৫%. কমলা অংশটিই over-provisioning.
- গড় ধরে কেনা: স্থির ১৪টি। খরচ এক-চতুর্থাংশ, utilization ৭৯%. কাগজে দারুণ। কিন্তু প্রতিদিন দুপুর-বিকেলে আর সেলের রাতে অনুরোধ ফেরত যায়, মোট ২১.০%. লাল অংশটিই under-provisioning.
- Elastic. প্রতি ঘণ্টায় আগের ঘণ্টার চাহিদার ১.২৫ গুণ server চালু। চালু server-ঘণ্টা ৩,০১৩, হারানো ১.৪%, utilization ৭৭%. স্থির ১৪-এর প্রায় সমান দক্ষতায় স্থির ৫৬-র কাছাকাছি সেবা। পুরোপুরি নিখুঁত নয়, কারণ চাহিদা আগে বাড়ে, capacity তার পরে।
এই সংখ্যাগুলো হাতে বানানো নয়। নিচের সিমুলেটরটি চালালেই একই ফল আসবে। পরিকল্পনার তালিকায় অন্য capacity বসিয়ে, অথবা শুক্রবারের গুণক 3 বদলে পরীক্ষা করে দেখুন কী ঘটে।
// One week, hour by hour: demand vs capacity. Every number here is assumed.
function mulberry32(a) { return function () {
a |= 0; a = a + 0x6D2B79F5 | 0;
let t = Math.imul(a ^ a >>> 15, 1 | a);
t = t + Math.imul(t ^ t >>> 7, 61 | t) ^ t;
return ((t ^ t >>> 14) >>> 0) / 4294967296; }; }
const rnd = mulberry32(2026);
const PER_SERVER = 1000; // one server: 1000 requests per hour
const demand = []; // requests in each hour (Sunday first)
for (let h = 0; h < 7 * 24; h++) {
const hour = h % 24, day = Math.floor(h / 24);
let need = 12 + 8 * Math.sin((hour - 9) / 24 * 2 * Math.PI); // daily wave
if (day === 5 && hour >= 18 && hour <= 23) need *= 3; // Friday-evening sale
demand.push(Math.round((need + rnd() * 2) * PER_SERVER));
}
function simulate(capacityAt) { // capacityAt(h) = servers switched on
let paid = 0, used = 0, lost = 0;
demand.forEach((d, h) => {
const cap = capacityAt(h) * PER_SERVER;
paid += capacityAt(h);
used += Math.min(d, cap) / PER_SERVER;
lost += Math.max(0, d - cap);
});
return { paid, idle: Math.round(paid - used), lost };
}
const total = demand.reduce((a, b) => a + b, 0);
console.log("total:", total, " peak hour:", Math.max(...demand));
const elastic = h => h === 0 ? 14 : Math.ceil(demand[h - 1] * 1.25 / PER_SERVER);
console.log("plan paid idle lost lost% busy%");
for (const [name, fn] of [["fixed 14", () => 14], ["fixed 25", () => 25], ["fixed 56", () => 56], ["elastic", elastic]]) {
const r = simulate(fn);
console.log(name.padEnd(9), String(r.paid).padEnd(5), String(r.idle).padEnd(5), String(r.lost).padEnd(7),
(100 * r.lost / total).toFixed(1).padEnd(6), (100 * (r.paid - r.idle) / r.paid).toFixed(0));
}আউটপুট:
total: 2337544 peak hour: 54939
plan paid idle lost lost% busy%
fixed 14 2352 505 490109 21.0 79
fixed 25 4200 1951 88295 3.8 54
fixed 56 9408 7070 0 0.0 25
elastic 3013 707 31715 1.4 77
paid হলো চালু server-ঘণ্টা, idle অলস server-ঘণ্টা, lost হারানো অনুরোধ, busy% হলো utilization. fixed 25 সারিটি দেখুন: সাধারণ দিনগুলো সামলায়, শুধু সেলের রাতেই অনুরোধ হারায় (৩.৮%), তবু utilization ৫৪%. বাস্তবের বেশিরভাগ স্থির পরিকল্পনা এমনই আপস। শেষ সারিতে elastic চালু server-ঘণ্টায় ৫৬-র প্রায় এক-তৃতীয়াংশ, আর হারানো অনুরোধ ১.৪%. সিমুলেটরে random সংখ্যা আসে নির্দিষ্ট seed থেকে, তাই প্রতিবার একই ফল পাবেন।
Provisioning delay — অপেক্ষা নিজেই একটি খরচ
Elasticity শুধু “বাড়ানো যায়” নয়, “কত দ্রুত বাড়ানো যায়” সেটিও। ধরুন একটি প্রচারের কারণে চাহিদা ২০ থেকে ৪৫ server-এ উঠল, চলবে ১৪ দিন। বাড়তি ২৫টি server কত দ্রুত পাবেন, তার ওপর ফল পুরো বদলে যায়। নিচে অপেক্ষার সময়গুলো ধরে নেওয়া, তবে তুলনার মাত্রাটি বাস্তব।
// A demand surge lasts 14 days. How long until extra servers arrive? Assumed numbers.
const BASE = 20, SURGE = 45; // servers needed: normal days vs the surge
const EXTRA = SURGE - BASE; // 25 more servers are needed during the surge
const PER_SERVER = 1000; // requests per hour, per server
const SURGE_HOURS = 14 * 24;
const HORIZON = 90 * 24; // judge each choice over 90 days
const ways = [
// wait = hours until extra servers work; keep = do we stay stuck with them?
{ name: "buy hardware", wait: 8 * 7 * 24, keep: true }, // 8 weeks
{ name: "colo spare", wait: 3 * 24, keep: true }, // 3 days
{ name: "cloud (manual)", wait: 0.5, keep: false }, // 30 minutes
{ name: "cloud (auto)", wait: 5 / 60, keep: false }, // 5 minutes
];
console.log("way wait(h) lost req idle server-h");
for (const w of ways) {
const shortHours = Math.min(w.wait, SURGE_HOURS);
const lost = Math.round(shortHours * EXTRA * PER_SERVER);
const idleFrom = Math.max(w.wait, SURGE_HOURS); // surge over: extras do nothing
const idle = w.keep ? (HORIZON - idleFrom) * EXTRA : 0;
console.log(w.name.padEnd(15), String(+w.wait.toFixed(2)).padEnd(8),
String(lost).padEnd(10), idle);
}আউটপুট:
way wait(h) lost req idle server-h
buy hardware 1344 8400000 20400
colo spare 72 1800000 45600
cloud (manual) 0.5 12500 0
cloud (auto) 0.08 2083 0
৮ সপ্তাহে হার্ডওয়্যার আসার আগেই ১৪ দিনের প্রচার শেষ: পুরো ৩৩৬ ঘণ্টা × ২৫ × ১,০০০ = 8400000 অনুরোধ হারাল, তারপর যন্ত্রগুলো এসে অলস বসে রইল। Colo-র বাড়তি যন্ত্র ৩ দিনে এলেও ৯০ দিনের হিসাবে তা আরও বেশি সময় অলস, 45600 server-ঘণ্টা, কারণ প্রচার শেষেও চুক্তি থেকে যায়। Cloud-এ ৩০ মিনিট অপেক্ষায় হারাল 12500 অনুরোধ, আর ৫ মিনিটে 2083. প্রচার শেষে server ফেরত, তাই অলস সময় শূন্য। Cloud-এর শ্রেষ্ঠ উপহার সস্তা server নয়, ভুল সিদ্ধান্ত ফিরিয়ে নেওয়ার ক্ষমতা।
৫ · যে প্রযুক্তি cloud-কে সম্ভব করল — virtualization আর API
Provider কীভাবে এক মিনিটে আপনাকে “নতুন কম্পিউটার” দেন? কেউ দৌড়ে গিয়ে যন্ত্র বসান না। আসলে একটি বড় physical server-কে সফটওয়্যার দিয়ে অনেক ছোট কম্পিউটারে ভাগ করা হয়। এই কৌশলের নাম virtualization. প্রতিটি ছোট কম্পিউটার হলো একটি virtual machine বা VM, আর ভাগ করার সফটওয়্যারের নাম hypervisor.
একটি যন্ত্র, তিন গ্রাহক
One physical host, a hypervisor, and isolated virtual machines
বড় একটি বাড়িকে ফ্ল্যাটে ভাগ করে ভাড়া দেওয়ার মতো। ভবন একটিই, কিন্তু প্রতিটি ফ্ল্যাটের নিজের দরজা, নিজের তালা। ভাড়াটিয়া জানেন না পাশের ফ্ল্যাটে কে থাকেন। আর মালিক খালি ফ্ল্যাট দিয়ে নতুন ভাড়াটিয়া ডাকতে পারেন। Hypervisor এখানে ভবনের দেয়াল আর তত্ত্বাবধায়ক দুটোই। ভেতরের কৌশল Operating Systems কোর্সের virtual machine পর্বে বিস্তারিত আছে।
তবে virtualization একা cloud নয়। দ্বিতীয় উপাদানটি হলো API, মানে প্রোগ্রাম থেকে সেবা চাওয়ার নির্দিষ্ট পথ। “একটি server দিন” কথাটি যদি একটি HTTP অনুরোধ হয়, তবে server বানানো আর মানুষের হাতের কাজ থাকে না, হয়ে যায় সফটওয়্যারের কাজ। DevOps-এর প্রায় সব কিছু এই এক বদলের ওপর দাঁড়িয়ে আছে।
Provider-এর ভেতরে দুটি অংশ আছে। যে অংশ অনুরোধ নেয় আর সিদ্ধান্ত দেয়, তাকে বলে control plane. আর যে যন্ত্রগুলোতে আপনার VM চলে, সেগুলো data plane-এর অংশ। নিচে একটি কাল্পনিক provider-এর API call অনুসরণ করুন। আসল provider-এর নাম আর ক্ষেত্র আলাদা হবে, ধাপগুলোর ধারা মোটামুটি একই।
{
"name": "bazaar-web-1",
"size": "2-cpu-4gb",
"image": "ubuntu-24-04",
"region": "example-south-1"
}
পরিচয় ঠিক আছে? হ্যাঁ এই কাজের অনুমতি আছে? হ্যাঁ Quota বাকি আছে? হ্যাঁ, 3 / 20 state: pending
host-a খালি CPU 0 ✗ জায়গা নেই host-b খালি CPU 1 ✗ জায়গা কম host-c খালি CPU 8 ✓ বেছে নেওয়া হলো
disk → image কপি থেকে তৈরি network → virtual card, private IP id → vm-0a1b2c state: pending
hypervisor: 2 vCPU, 4 GB RAM দিল
hypervisor: disk আর network জুড়ল
VM power on
bootloader → Linux kernel → systemd cloud-init: hostname বসানো cloud-init: SSH key বসানো cloud-init: শুরুর script চালানো
{
"id": "vm-0a1b2c",
"state": "running",
"private_ip": "10.0.1.15"
}
বিলের মিটার চলছে
- অনুরোধ পাঠানো। রিমার script একটি HTTP অনুরোধ পাঠাল, সাথে স্বাক্ষর বা token, যাতে provider বুঝতে পারেন কে চাইছে। মাপ, image আর region বলে দেওয়া আছে। Browser-এর console-এ বোতাম চাপলেও ভেতরে এই একই ধরনের API call যায়।
- Control plane-এর যাচাই। প্রথমে পরিচয়, তারপর এই কাজের অনুমতি, তারপর quota. অনুমতির নিয়ম পর্ব ৩১-এ আসবে। যেকোনো একটি ব্যর্থ হলে অনুরোধ এখানেই শেষ, কোনো যন্ত্র ছোঁয়া হয় না।
- যন্ত্র বেছে নেওয়া। Scheduler জানে কোন host-এ কত জায়গা খালি।
host-aআরhost-b-তে ২ vCPU জায়গা নেই, তাইhost-c. কয়েকটি availability zone থাকলে এখানেই সেই হিসাবও আসে। লক্ষ করুন, রিমা host বেছে দেননি। - সম্পদ জোগাড়। Image থেকে disk তৈরি হয়, যা সাধারণত আলাদা storage ব্যবস্থায় থাকে। Virtual network card আর private IP দেওয়া হয়। VM-এর একটি id পাওয়া গেল, কিন্তু অবস্থা এখনো
pending. - Hypervisor VM বানায়।
host-c-র hypervisor ২টি vCPU আর ৪ GB RAM বরাদ্দ করে, disk আর network জুড়ে দিয়ে যন্ত্রটি চালু করে। OS-এর চোখে এটি একটি সাধারণ কম্পিউটার। - Boot আর প্রথমবারের সেটআপ। Linux চালু হয়। cloud-init নামের প্রোগ্রাম প্রথম boot-এ hostname, SSH key আর শুরুর script বসিয়ে দেয়। এ নিয়ে পর্ব ১৬-তে বিস্তারিত আছে।
- চলছে, আর মিটারও। অবস্থা
running. পুরো পথে সাধারণত কয়েক সেকেন্ড থেকে কয়েক মিনিট লাগে। বিল ঠিক কোন মুহূর্তে শুরু হয় আর কত ক্ষুদ্র এককে মাপা হয়, তা provider আর সেবা-ভেদে আলাদা। আগের দিনের কয়েক সপ্তাহের কাজটি এখন একটি অনুরোধ।
একই কাজ তিন বড় provider-এর command-line tool-এ দেখতে কেমন, নিচে তার উদাহরণ। এটি শুধু চেহারা বোঝার জন্য। এখানে চালাবেন না। Flag আর image-এর নাম version-ভেদে বদলায়, আর সত্যিকারের account-এ চালালে খরচ হতে পারে। পর্ব ৬-এ এসব নিরাপদে শিখবেন।
# AWS
aws ec2 run-instances --image-id ami-0abc1234 \
--instance-type t3.micro --count 1
# Azure
az vm create -g demo-rg -n demo-vm \
--image Ubuntu2204 --size Standard_B1s \
--generate-ssh-keys
# Google Cloud
gcloud compute instances create demo-vm \
--zone=asia-south1-a --machine-type=e2-micro৬ · Cloud-এর শরীর — একটি data centre আসলে কী
Cloud কোনো মেঘ নয়। এটি গুদামঘরের মতো বিশাল ভবন, যেখানে সারি সারি লোহার তাকে হাজার হাজার server বসানো। ওই তাকের নাম rack. আপনার ফোনের ছবি “cloud-এ আছে” মানে সেটি এমন কোনো ভবনের disk-এ আছে।
Server থেকে region পর্যন্ত
Server → rack → data centre → availability zone → region
- বিদ্যুৎ: সাধারণত একাধিক সংযোগ, ব্যাটারিভিত্তিক UPS আর বড় জেনারেটর। Load-shedding হলে বাড়িতে যা হয়, তা এখানে হতে দেওয়া যায় না।
- ঠান্ডা রাখা: Server-এর প্রায় সব বিদ্যুৎই শেষে তাপ হয়। বাতাস বা পানি দিয়ে সেই তাপ সরাতে বিপুল শক্তি লাগে।
- নেটওয়ার্ক: প্রতি rack-এর ওপরে একটি switch, তার ওপরে আরও switch-এর স্তর, আর বাইরে fibre. গভীর আলোচনা Computer Networks কোর্সের data center network পর্বে।
- মানুষ আর পাহারা: নষ্ট disk বদলানো, প্রবেশে কড়াকড়ি, আগুন নেভানোর ব্যবস্থা। একটি বড় ভবনে কিছু না কিছু প্রতিদিনই নষ্ট হয়, তাই নকশার শুরুই হয় “যন্ত্র নষ্ট হবেই” ধরে।
বাংলাদেশের পাঠকের জন্য একটি বাস্তব কথা। লেখার সময়ে আমাদের জানামতে বড় তিন provider-এর (AWS, Azure, Google Cloud) নিজস্ব region দেশের ভেতরে নেই, যদিও কাছের দেশে আছে। তাই অনুরোধকে সমুদ্রের নিচের কেবল ধরে যেতে হতে পারে। ফলে latency বাড়ে, আর কোনো কোনো খাতে তথ্য কোথায় রাখা হবে সে নিয়ে নিয়মও থাকতে পারে। অবস্থা বদলাতে পারে, তাই নিজে যাচাই করে নিন। পর্ব ৫-এ এ নিয়ে বিস্তারিত আছে।
আরও গভীরে: Barroso ও Hölzle-র The Datacenter as a Computer (প্রথম সংস্করণ ২০০৯) বইয়ের মূল চিন্তা হলো পুরো ভবনটিকে একটি মাত্র কম্পিউটার হিসেবে ভাবা। শক্তি-দক্ষতার মাপ PUE = মোট ভবনের বিদ্যুৎ ÷ শুধু IT যন্ত্রের বিদ্যুৎ। ধরুন IT যন্ত্র নেয় ১,০০০ kW আর পুরো ভবন ১,৫০০ kW; তাহলে PUE = ১.৫। আদর্শ মান ১.০, যা বাস্তবে অসম্ভব। আধুনিক cloud provider-রা hypervisor-এর অনেক কাজ আলাদা হার্ডওয়্যারেও সরিয়ে নিচ্ছেন, যা Operating Systems কোর্সের cloud OS পর্বে পাবেন।
৭ · ইতিহাস — বিদ্যুতের মতো কম্পিউটিং
Cloud নতুন শব্দ হলেও চিন্তাটি পুরোনো। ১৯৬০-এর দশকে কম্পিউটার ছিল বিশাল আর দামি, তাই একটি যন্ত্র অনেকে মিলে ব্যবহার করতেন, যাকে বলে time-sharing. Utility computing-এর চিন্তা, মানে পানি-বিদ্যুতের মতো মিটারে কম্পিউটিং কেনা, এখান থেকেই আসে।
| সময় | ঘটনা | কেন গুরুত্বপূর্ণ |
|---|---|---|
| ১৯৬১ (প্রচলিত বর্ণনা) | John McCarthy MIT-র এক বক্তৃতায় বলেন, কম্পিউটিং একদিন টেলিফোনের মতো জনসেবা হতে পারে | Utility-র ধারণার বীজ |
| ১৯৬০-৭০-এর দশক | IBM-এর গবেষণায় VM-এর জন্ম; Popek ও Goldberg-এর শর্ত (১৯৭৪) | Virtualization-এর ভিত্তি |
| ১৯৯৯ | Salesforce-এর যাত্রা শুরু: সফটওয়্যার browser-এ, চাঁদা দিয়ে | SaaS-এর পরিচিত উদাহরণ |
| ১৯৯৯-২০০৩ | VMware x86-এ virtualization জনপ্রিয় করে; Xen গবেষণাপত্র (২০০৩) | সাধারণ যন্ত্রেও VM চলল |
| ২০০৬ | Amazon S3 (মার্চ) আর EC2 (আগস্ট, beta) | আধুনিক IaaS-এর শুরু বলে ধরা হয় |
| ২০০৮-২০১৩ (মোটামুটি) | Google App Engine, Microsoft Azure, পরে Google Compute Engine | প্রতিযোগিতা শুরু |
| ২০০৯ | Armbrust ও সহকর্মীদের “Above the Clouds” (Berkeley) | Cloud-এর অর্থনীতির গবেষণাভিত্তিক ব্যাখ্যা |
| ২০১১ | NIST SP 800-145 | সর্বজনীন সংজ্ঞা |
“Above the Clouds” প্রতিবেদনটি বলেছিল, cloud তিনটি জিনিস নতুন করে দিয়েছে: চাহিবামাত্র প্রায় অসীম সম্পদের অনুভূতি, শুরুতে বড় বিনিয়োগ ছাড়াই ছোট থেকে শুরু করার সুযোগ, আর সম্পদ অল্প সময়ের জন্য নিয়ে ব্যবহার অনুযায়ী দাম দেওয়া। লক্ষ করুন, তিনটির কোনোটিই নতুন যন্ত্র নয়, সবই যন্ত্র পাওয়ার নতুন ধরন।
৮ · Cloud যা সমাধান করে না
Cloud-কে অনেকে জাদুর ওষুধ ভাবেন। নতুনদের সবচেয়ে বড় ভুল এটি। মনে রাখুন, cloud আপনার যন্ত্র কেনার সমস্যা নিয়ে নেয়, চিন্তা করার দায়িত্ব নয়।
| ভুল ধারণা | বাস্তব | কোথায় শিখবেন |
|---|---|---|
| “Cloud সবসময় সস্তা” | স্থির চাহিদায় আর অসতর্ক ব্যবহারে দামি হতে পারে | পর্ব ৪, ৭২, ৭৩ |
| “Provider নিরাপত্তা দেখবেন” | দায়িত্ব ভাগ করা; ভুল permission বা খোলা bucket আপনার ভুল | পর্ব ২, ৩৪ |
| “Cloud কখনো পড়ে না” | Provider-এরও outage হয়; একটি region-এ সব রাখলে ঝুঁকি থাকে | পর্ব ৫, ২৪ |
| “ধীর কোড cloud-এ দ্রুত হবে” | খারাপ query বাড়তি server-এও ধীর, শুধু বিল বাড়ে | পর্ব ৬৩-৬৮ |
| “পরে সহজে অন্য provider-এ যাব” | বিশেষ service-এ যত জড়াবেন, সরা তত কঠিন: vendor lock-in | পর্ব ৭৪ |
| “System admin আর লাগবে না” | কাজ বদলায়, হারায় না; এখন লাগে automation আর হিসাবের দক্ষতা | পর্ব ৭, ৬২ |
| “তথ্যের দেশ গুরুত্বপূর্ণ নয়” | খাত আর দেশভেদে তথ্য রাখার নিয়ম থাকতে পারে; আইনজীবীর সাথে যাচাই দরকার | পর্ব ৫, ৩৫ |
এখানে shared responsibility কথাটি গুরুত্বপূর্ণ। ভবন, যন্ত্র আর hypervisor সাধারণত provider-এর দায়িত্ব। কিন্তু আপনার VM-এর ভেতরের সফটওয়্যার, তথ্য আর অনুমতি সাধারণত আপনার। বাড়ির মালিক দরজা বানিয়ে দেন, তালা লাগাতে ভুলে গেলে সেটি ভাড়াটিয়ার দায়। সীমারেখা service-ভেদে সরে, যা পর্ব ২-এ দেখবেন।
২০১৭ সালের ফেব্রুয়ারিতে Amazon S3-এর একটি বড় outage হয়েছিল US-EAST-1 region-এ। AWS-এর প্রকাশিত বিবরণ অনুযায়ী, debugging-এর সময় একটি কমান্ডে ভুল মান দেওয়ায় পরিকল্পনার চেয়ে অনেক বেশি server সরে যায়। বহু ওয়েবসাইটে সমস্যা দেখা দেয়, যাদের কারও নিজের কোডে কোনো ভুল ছিল না। Cloud নির্ভরতা সরিয়ে দেয় না, শুধু জায়গা বদলায়।
৯ · Cloud আর DevOps-এর সম্পর্ক, আর এই কোর্সের মানচিত্র
কোর্সের নামে দুটি শব্দ আছে, আর দুটি এক জিনিস নয়। Cloud হলো কোথায় চলছে: ভাড়া করা, API দিয়ে নিয়ন্ত্রণ করা যায় এমন অবকাঠামো। DevOps হলো কীভাবে দল কাজ করে: যাঁরা সফটওয়্যার বানান আর যাঁরা চালান, তাঁদের দেয়াল ভেঙে ছোট ছোট পরিবর্তন দ্রুত আর নিরাপদে পৌঁছে দেওয়া। শব্দটি জনপ্রিয় হয় Patrick Debois-র উদ্যোগে ২০০৯ সালের প্রথম DevOpsDays সম্মেলনের মাধ্যমে।
দুটিকে আলাদাও পাওয়া যায়। নিজের server room-এ দারুণ DevOps চলতে পারে। আবার cloud-এ প্রতিটি server হাতে ক্লিক করে বানানো দলও আছে, যাদের DevOps নেই। তবে দুটি একসাথে শক্তিশালী, কারণ cloud অবকাঠামোকে API বানিয়ে দেয়, আর API-কে কোড দিয়ে চালানো যায়। তাই server বানানো, পরীক্ষা আর deploy, সবই একটি pipeline-এর অংশ হতে পারে। এর সফটওয়্যার-প্রকৌশল দিকটি আছে Continuous Delivery ও DevOps পর্বে। এই কোর্স দেখায় তা চালানো হয় কীভাবে।
একটি ছাড়া অন্যটি থাকে, দুটি মিললে গতি বাড়ে।
নিচে পুরো কোর্সের ১৪টি মডিউল। কোনো একটি মডিউলে আটকে গেলে সরাসরি পরেরটিতে যাওয়া যায়, তবে মডিউল ১ আর ২ প্রায় সবার জন্য দরকারি।
| মডিউল | পর্ব | যে প্রশ্নের উত্তর পাবেন |
|---|---|---|
| ১ · Cloud আর DevOps-এর ভিত্তি | ১-৭ | Cloud কী, খরচ কেমন, দল কীভাবে কাজ করে? |
| ২ · Linux আর server চালানো | ৮-১৪ | একটি server নিজের হাতে চালাব কীভাবে? |
| ৩ · Cloud compute | ১৫-১৯ | VM, autoscaling আর load balancer কীভাবে সাজাব? |
| ৪ · Storage আর database | ২০-২৪ | তথ্য কোথায় রাখব, হারালে ফেরাব কীভাবে? |
| ৫ · Cloud networking | ২৫-৩০ | Packet কোন পথে যায়, কে ঢুকতে পারে? |
| ৬ · Identity আর নিরাপত্তা | ৩১-৩৫ | কে কী করতে পারবে, ভুল ধরব কীভাবে? |
| ৭ · Container আর Docker | ৩৬-৪১ | অ্যাপ প্যাক করে সব জায়গায় চালাব কীভাবে? |
| ৮ · Kubernetes | ৪২-৫০ | শত শত container সামলাব কীভাবে? |
| ৯ · Infrastructure as Code | ৫১-৫৬ | Server ক্লিক না করে কোডে বানাব কীভাবে? |
| ১০ · CI/CD, GitOps আর platform | ৫৭-৬২ | কোড নিরাপদে production-এ যাবে কীভাবে? |
| ১১ · Observability আর SRE | ৬৩-৬৮ | কী চলছে বুঝব কীভাবে, বিপদে কী করব? |
| ১২ · Serverless আর event-driven | ৬৯-৭১ | Server না ভেবে অ্যাপ বানাব কখন? |
| ১৩ · FinOps, architecture, ক্যাপস্টোন | ৭২-৭৬ | বিল কমাব কীভাবে, পুরোটা জোড়া দেব কীভাবে? |
| ১৪ · পরীক্ষা ও ইন্টারভিউ প্রস্তুতি | ৭৭-৮১ | Numerical, MCQ, ভাইভা আর ইন্টারভিউ কীভাবে সামলাব? |
পরীক্ষা ও ইন্টারভিউতে — বিশ্ববিদ্যালয়, চাকরি বা ইন্টারভিউর পরীক্ষায় এই ধরনের প্রশ্ন সাধারণ। (১) Cloud-এর পাঁচ বৈশিষ্ট্য কী? On-demand self-service, broad network access, resource pooling, rapid elasticity, measured service. (২) Scalability আর elasticity-র পার্থক্য? Scalability মানে বাড়তে পারার ক্ষমতা; elasticity মানে চাহিদার সাথে নিজে থেকে বাড়া ও কমা। (৩) VPS কি cloud? নির্ভর করে: হাতে অনুমোদন, মাসিক স্থির চুক্তি থাকলে পাঁচ বৈশিষ্ট্য পূরণ হয় না। (৪) CapEx থেকে OpEx মানে কী? কেনার বড় খরচ থেকে ব্যবহারের চলতি খরচে সরে যাওয়া। (৫) Cloud আর DevOps কি একই? না; একটি অবকাঠামো, অন্যটি কাজের সংস্কৃতি ও চর্চা।
১০ · AI-এর যুগে cloud শেখা
AI আপনাকে কয়েক সেকেন্ডে cloud কমান্ড, Terraform ফাইল বা Kubernetes YAML লিখে দিতে পারে। শুনতে দারুণ। কিন্তু অন্য কোডের সাথে পার্থক্য আছে: ভুল প্রোগ্রাম সাধারণত আপনার কম্পিউটারেই আটকে যায়; ভুল cloud কমান্ড চললে সত্যিকারের টাকা খরচ হয়, তথ্য মুছে যায়, বা ব্যক্তিগত তথ্য সবার জন্য খুলে যায়।
| AI প্রায়ই যা করে | কেন বিপদ | কী করবেন |
|---|---|---|
অনুমতিতে * বসায় | দরকারের চেয়ে অনেক বেশি ক্ষমতা | শুধু দরকারি কাজের অনুমতি দিন |
Network-এ 0.0.0.0/0 খোলে | পুরো internet থেকে প্রবেশের পথ | নির্দিষ্ট IP বা network দিন |
| Storage public করে দেয় | তথ্য ফাঁস | Public থাকার কারণ যাচাই করুন |
| Secret কোডে লিখে ফেলে | Git-এ গেলে ফাঁস | Secret manager ব্যবহার করুন |
latest tag, পুরোনো API version, বানানো flag | কাজ করে না, বা হঠাৎ বদলায় | Official docs মিলিয়ে নিন |
| খরচের কথা বলে না | মাস শেষে বড় বিল | Pricing page দেখুন, budget alert দিন |
terraform destroy, kubectl delete, rm -rf | সতর্কতা ছাড়াই ধ্বংসাত্মক কাজ | আগে plan বা --dry-run, পড়ে তারপর সিদ্ধান্ত |
নতুন ধারণা শিখতে AI খুব কাজের, যদি আপনি তাকে পরীক্ষকের ভূমিকায় বসান। নিজের উত্তর আগে লিখুন, তারপর এভাবে যাচাই করান:
AI-এর লেখা cloud কমান্ড বা ফাইল চালানোর আগে
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিয়ে নিজে কিছুক্ষণ ভাবুন, তারপর “→ উত্তর” চাপুন। এগুলোই আপনাকে কমান্ড-জানা মানুষ থেকে সিস্টেম-চিন্তক বানাবে।
প্র ০১অফিসের server room-এ VMware বসিয়ে VM চালাচ্ছি। আমরা কি তাহলে “নিজস্ব cloud” চালাচ্ছি?
খুব সম্ভবত না, আর এই ভুলটি বাস্তবে খুব সাধারণ। Virtualization হলো উপকরণ, cloud হলো সেই উপকরণে তৈরি একটি সেবা। ইটের স্তূপ মানেই বাড়ি নয়।
একটি কাজের উদাহরণ ভাবুন। আপনার প্রতিষ্ঠানের ঘরে ২০টি যন্ত্রে VM চলে। ভালো ব্যবস্থা, যন্ত্রের ব্যবহারও বেড়েছে। কিন্তু নতুন VM চাইলে একজন admin হাতে বানিয়ে দেন। এতে যন্ত্রের ভাগাভাগি হয়েছে, সেবার ধরন বদলায়নি। এবার NIST-এর পাঁচ বৈশিষ্ট্য ধরে পরীক্ষা করুন:
- Self-service: একজন developer কি নিজে VM নিতে পারেন, নাকি IT দলকে টিকিট লিখে তিন দিন অপেক্ষা করেন? দ্বিতীয়টি হলে এটি বাদ।
- Pooling: Host-গুলো একটি ভান্ডার হিসেবে চলে, নাকি “এই VM ওই যন্ত্রের” হিসাবে হাতে বাঁধা?
- Elasticity: সেলের রাতে কয়েক মিনিটে দ্বিগুণ করা যায়? নিজের ঘরে যত যন্ত্র আছে, সীমা তত।
- Measured: কোন দল কত ব্যবহার করল, তার মাপ আছে? থাকলে তাকে chargeback বা showback বলে।
তবে সংজ্ঞায় private cloud-এর জায়গা আছে। কোনো প্রতিষ্ঠান যদি এই বৈশিষ্ট্যগুলো নিজের যন্ত্রে দেয়, যেমন OpenStack-এর মতো সফটওয়্যার দিয়ে API আর self-service গড়ে তোলে, তবে সেটি সত্যিকারের private cloud. মানুষ অনেক সময় যেকোনো on-premises ঘরকেই private cloud বলেন। এখানে মতভেদ আছে, পর্ব ৩-এ আরও দেখবেন।
মূল উপলব্ধি: Cloud কোনো জায়গার নাম নয়, যন্ত্রের নামও নয়। এটি যন্ত্র পাওয়ার একটি ধরন। প্রশ্নটি “কোথায় চলছে?” নয়, “কীভাবে পাওয়া যায়?”
প্র ০২শোনা যায়, Amazon বড়দিনের জন্য কেনা বাড়তি server ভাড়া দিতে গিয়েই AWS বানিয়েছিল। গল্পটি কি সত্য? এর শিক্ষা কী?
গল্পটি শুনতে খুব যৌক্তিক, আর তাই ছড়িয়েছে। কিন্তু Amazon-এর CTO Werner Vogels সহ কোম্পানির লোকেরা প্রকাশ্যে একে ভুল বলেছেন। তাঁদের ভাষ্যে AWS বাড়তি যন্ত্র বিক্রির ব্যবসা হিসেবে শুরু হয়নি।
প্রকাশিত বিবরণ অনুযায়ী, ২০০০-এর দশকের শুরুতে Amazon-এর ভেতরের দলগুলো একই অবকাঠামো বারবার আলাদা করে বানাচ্ছিল, আর তাতে সময় নষ্ট হচ্ছিল। তাই সেগুলোকে পরিষ্কার interface-ওয়ালা সেবায় ভাগ করা হয়। সেখান থেকেই ধারণা আসে যে এই সেবাগুলো বাইরের developer-রাও কিনতে পারেন। Andy Jassy-র নেতৃত্বে দলটি গড়ে ওঠে। ঘটনার পুরো ভেতরের ছবি বাইরে থেকে জানা কঠিন, তাই বিবরণগুলো কোম্পানির নিজের বর্ণনা হিসেবেই পড়া উচিত।
“বাড়তি যন্ত্র” গল্পটি প্রকৌশলের দিক থেকেও দুর্বল। ডিসেম্বরের জন্য কেনা যন্ত্র ডিসেম্বরেই দরকার। তখন যদি গ্রাহকদের সরিয়ে দিতে হয়, তবে সেবাটি নির্ভরযোগ্য হয় না। আর বাড়তি capacity থাকলেও সফটওয়্যারের সেই API, হিসাব আর পরিচয়-ব্যবস্থা ছাড়া তা বিক্রি করা যায় না।
অন্য দিকে, ভেতরের সেবা বাইরে বিক্রি করতে হলে কঠোর interface লাগে, হিসাব লাগে, আর এক গ্রাহককে অন্যজনের থেকে আলাদা রাখতে হয়। সেই শৃঙ্খলা তৈরি করাই ছিল আসল কাজ। আর মনে রাখবেন, ২০০৬-এর আগেও যন্ত্র ভাড়া পাওয়া যেত; নতুন ছিল API আর ঘণ্টা-ধরে বিল।
মূল উপলব্ধি: Cloud মূলত সফটওয়্যার আর operations-এর উদ্ভাবন, উদ্বৃত্ত হার্ডওয়্যারের নয়। যন্ত্র সবার আছে; যন্ত্রকে API বানাতে পারাটাই কঠিন অংশ। আকর্ষণীয় গল্প শুনলে উৎস যাচাই করা প্রকৌশলীর অভ্যাস হওয়া উচিত।
প্র ০৩McCarthy-র utility computing-এর চিন্তা ১৯৬১ সালের বলে ধরা হয়। তাহলে বাস্তবে আসতে ৪৫ বছর লাগল কেন?
ভালো ধারণা মানেই সময়মতো ধারণা নয়। একটি চিন্তা বাস্তব হতে তার চারপাশের অনেক শর্ত পূরণ হতে হয়। ১৯৬০-এর দশকে time-sharing আংশিকভাবে এই স্বপ্ন পূরণ করেছিল, আর Multics-এর মতো প্রকল্প “কম্পিউটার ইউটিলিটি” গড়ার চেষ্টা করেছিল। তারপর এল উল্টো ঢেউ: ১৯৮০-র দশকে personal computer সস্তা হলো, মানুষ নিজের যন্ত্র কিনতে শুরু করলেন। কম্পিউটিং ভাগ করার চাপ কমে গেল।
২০০০-এর দশকের মাঝামাঝি কয়েকটি জিনিস একসাথে মিলল:
- Network: দ্রুত, সস্তা broadband আর fibre ছাড়া দূরের কম্পিউটার ব্যবহার করা কষ্টকর।
- সাধারণ হার্ডওয়্যার: Google-এর মতো কোম্পানিগুলো দেখাল, সস্তা সাধারণ যন্ত্র দিয়েও সফটওয়্যারের জোরে বড় ব্যবস্থা গড়া যায়।
- Virtualization: VMware আর Xen সাধারণ x86 যন্ত্রে ভালো VM আনল, পরে CPU-তেই সহায়তা যোগ হলো।
- বড় পরিমাণের অর্থনীতি: বিশাল data centre বিদ্যুৎ, যন্ত্র আর নেটওয়ার্ক অনেক কম দামে কিনতে পারে। Armbrust-এর দলও এই সুবিধার কথা বলেছিলেন।
- অনলাইন লেনদেন আর web API: ক্রেডিট কার্ড দিয়ে মিনিটেই account খোলা আর HTTP দিয়ে সেবা চাওয়া স্বাভাবিক হয়েছিল।
এর সাথে বাজারের চাহিদাও ছিল। ডট-কম যুগের পর হাজারো startup-এর দরকার ছিল এমন কিছু, যাতে শুরুতেই বিশাল বিনিয়োগ করতে না হয়।
মূল উপলব্ধি: প্রযুক্তির ইতিহাসে “কে আগে ভেবেছিলেন” আর “কখন সম্ভব হলো” দুটি আলাদা প্রশ্ন। AI নিয়েও একই কথা খাটে: ধারণা পুরোনো, তবে হিসাবের ক্ষমতা আর তথ্য হাতে আসার পরই তা কাজে লেগেছে। নতুন কিছু দেখলে জিজ্ঞেস করুন, “এখন কী বদলেছে যে এটি আগে সম্ভব ছিল না?”
প্র ০৪কিছু কোম্পানি public cloud ছেড়ে নিজের যন্ত্রে ফিরে গেছে। তাহলে cloud কি ভুল সিদ্ধান্ত? কখন cloud লাভজনক, হিসাব করে বলুন।
দুটি পরিচিত উদাহরণ আছে। Dropbox প্রকাশ্যে জানিয়েছিল (২০১৬) যে তারা বড় অংশের ব্যবহারকারীর তথ্য AWS থেকে নিজেদের বানানো storage ব্যবস্থায় সরিয়েছে। আর 37signals (Basecamp-এর নির্মাতা) ২০২২ সাল থেকে তাদের cloud ছাড়ার সিদ্ধান্ত আর খরচের হিসাব প্রকাশ্যে লিখেছে। অর্থাৎ বিপরীত যাত্রা বাস্তব। এর নাম cloud repatriation.
লক্ষ করুন দুটিরই মিল: বড়, মোটামুটি অনুমানযোগ্য চাহিদা, আর নিজের যন্ত্র চালানোর মতো দক্ষ দল। Armbrust-এর প্রতিবেদন একটি সরল সূত্র দিয়েছিল। ভাবটি হলো, নিজের যন্ত্রের প্রতি ঘণ্টার খরচকে utilization দিয়ে ভাগ করতে হবে, কারণ অলস ঘণ্টার দামও আপনিই দেন:
ধরে নিই (শুধু উদাহরণ): নিজের যন্ত্রে সব মিলিয়ে ঘণ্টায় $০.০৫, cloud-এ $০.১২। Utilization ৩০% হলে কার্যকর খরচ ০.০৫ ÷ ০.৩০ ≈ $০.১৭, তাই cloud সস্তা। ৮০% হলে ০.০৫ ÷ ০.৮০ ≈ $০.০৬, তাই নিজের যন্ত্র সস্তা। সমান হয় ০.০৫ ÷ ০.১২ ≈ ৪২% utilization-এ।
তবে এই হিসাবে সব ধরা পড়ে না। Cloud-এর দিকে যোগ করতে হয় পরীক্ষার গতি আর বিশ্বজুড়ে পৌঁছানো। নিজের দিকে যোগ করতে হয় কর্মীর বেতন, যন্ত্র বদলের ঝুঁকি আর cloud-এর তৈরি service হারানো। আর data transfer-এর বিলও অনেক সময় হিসাব বদলে দেয়। পর্ব ৪ আর ৭২-এ এগুলো হিসাবসহ পাবেন।
মূল উপলব্ধি: ওঠানামা করা বা অনিশ্চিত চাহিদায় cloud শক্তিশালী; স্থির আর বড় চাহিদায় নিজের যন্ত্র ভালো হতে পারে। “Cloud ভালো না খারাপ” প্রশ্নটি অসম্পূর্ণ; সঠিক প্রশ্ন “এই চাহিদা, এই দল আর এই সময়ের জন্য কোনটি?”
প্র ০৫২০১৭ সালের S3 outage থেকে কী শেখার আছে? একটি ভুল কমান্ড কেন এত বড় ঘটনা হলো, আর দলের কী করা উচিত?
AWS-এর প্রকাশিত summary অনুযায়ী, ২০১৭ সালের ২৮ ফেব্রুয়ারি US-EAST-1 region-এ S3-র একটি billing-সম্পর্কিত ধীরগতি তদন্ত করছিলেন একজন প্রকৌশলী। একটি নির্ধারিত কমান্ডে ভুল মান দেওয়ায় অল্প কিছু server-এর বদলে অনেক বেশি server সরে যায়, যার মধ্যে S3-এর গুরুত্বপূর্ণ উপ-ব্যবস্থা ছিল। সেগুলো নতুন করে চালু হতে কয়েক ঘণ্টা লাগে। S3-র ওপর নির্ভর করা আরও অনেক সেবায়ও সমস্যা ছড়ায়। এমনকি provider-এর status dashboard-ও আপডেট করা যাচ্ছিল না, কারণ সেটিও S3-র ওপর নির্ভর করছিল।
এখান থেকে কয়েকটি শিক্ষা:
- মানুষের ভুল নয়, ব্যবস্থার দুর্বলতা: AWS-এর প্রতিক্রিয়া ছিল tool বদলানো। প্রতিবেদনে বলা হয়, এরপর server সরানো ধীর করা হয় আর ন্যূনতম capacity-র নিচে না নামার সুরক্ষা যোগ করা হয়। দোষ না খুঁজে ব্যবস্থা শোধরানোর এই চর্চা পর্ব ৬৭-এর postmortem-এ আসবে।
- লুকানো নির্ভরতা: আপনার অ্যাপ হয়তো S3 সরাসরি ব্যবহার করে না, কিন্তু আপনার payment service করে। নির্ভরতার মানচিত্র জানা দরকার।
- একই region-এ সব রাখা ঝুঁকি: একাধিক zone বা region-এ ছড়িয়ে রাখা যায়, তবে তাতে খরচ আর জটিলতা বাড়ে।
- আগেই পরীক্ষা: কোনো service বন্ধ হলে আপনার অ্যাপ কী করবে, তা শান্ত সময়ে পরীক্ষা করে রাখাই ভালো।
তবু এটিকে “cloud খারাপ” প্রমাণ ভাবলে ভুল হবে। নিজের ঘরের server-ও আগুন, বন্যা, বিদ্যুৎ আর মানুষের ভুলে পড়ে যায়, আর সেই ঘটনা খবরে আসে না। Cloud-এ শুধু ঝুঁকি কেন্দ্রীভূত হয়, তাই একবারের ঘটনায় অনেকে একসাথে আক্রান্ত হন।
মূল উপলব্ধি: Reliability কেনা যায় না, নকশা করতে হয়। Provider ভালো ভিত দেন, কিন্তু ভিত নড়লে আপনার অ্যাপ কীভাবে দাঁড়াবে, সেই সিদ্ধান্ত আপনার।
অনুশীলন
এগুলোর জন্য কোনো cloud account লাগবে না। খাতা-কলম আর ভাবনাই যথেষ্ট।
-
Numerical — utilization আর সমান-খরচের বিন্দু: একটি ব্যবস্থায় চূড়ার চাহিদা ৬০টি server, ৩০ দিনের মাসে গড় চাহিদা ১৫টি। নিজের ৬০টি যন্ত্রে সব মিলিয়ে প্রতি চালু server-ঘণ্টায় খরচ $০.০৫ ধরে নিন। Cloud-এ প্রতি server-ঘণ্টা $০.১২, আর গড়ে ১৮টি চালু থাকে। বের করুন: (ক) utilization, (খ) অলস server-ঘণ্টা, (গ) দুই দিকের মাসিক খরচ, (ঘ) কত utilization-এ নিজের যন্ত্রের কার্যকর খরচ cloud-এর সমান হয়। সব দাম কাল্পনিক।
(ক) চালু = ৬০ × ৭২০ = ৪৩,২০০ server-ঘণ্টা। ব্যবহৃত = ১৫ × ৭২০ = ১০,৮০০। Utilization = ১০,৮০০ ÷ ৪৩,২০০ = ২৫%.
(খ) অলস = ৪৩,২০০ − ১০,৮০০ = ৩২,৪০০ server-ঘণ্টা।
(গ) নিজের: ৪৩,২০০ × ০.০৫ = $২,১৬০। Cloud: ১৮ × ৭২০ = ১২,৯৬০ server-ঘণ্টা; × ০.১২ = $১,৫৫৫.২০। তাই এই চাহিদায় cloud সস্তা, যদিও ঘণ্টার দর দ্বিগুণের বেশি।
(ঘ) ০.০৫ ÷ U = ০.১২ থেকে U = ০.০৫ ÷ ০.১২ ≈ ৪১.৭%. Utilization এর উপরে উঠলে হিসাবটি নিজের যন্ত্রের দিকে ঝোঁকে।
-
Critique — এটি কি cloud? একটি কাল্পনিক hosting কোম্পানি বিজ্ঞাপনে “Cloud Server” লিখেছে। নিয়ম হলো: ফর্ম পূরণ করে টাকা পাঠালে একজন কর্মী ১-২ কার্যদিবসে একটি VPS বানিয়ে ইমেইলে পাসওয়ার্ড দেন। দাম মাসিক স্থির, মাঝপথে মাপ বাড়াতে আবার ফর্ম পূরণ করতে হয়। পাঁচ বৈশিষ্ট্য ধরে যাচাই করুন, আর বলুন কী বদলালে এটি cloud-এর কাছাকাছি হবে।
- Self-service: না। মানুষের হাত লাগে।
- Network access: হ্যাঁ। Internet দিয়ে ব্যবহার করা যায়।
- Pooling: সম্ভবত আংশিক। এক যন্ত্রে অনেক VPS থাকে, তবে গ্রাহকের চোখে ব্যবস্থাটি স্বয়ংক্রিয় ভান্ডার নয়।
- Elasticity: না। দিন লাগে, আর কমানো সহজ নয়।
- Measured: না। ব্যবহার নয়, মাস ধরে বিল।
এটি একটি ভালো hosting সেবা হতে পারে, কিন্তু NIST-এর অর্থে cloud নয়। কাছাকাছি হতে লাগবে API বা প্যানেলে নিজে তৈরি করার সুবিধা, মিনিটে মাপ বদলানো আর ঘণ্টা বা সেকেন্ড ধরে মিটার। ছোট, স্থির ওয়েবসাইটের জন্য সেবাটি হয়তো যথেষ্ট, তাই “cloud নয়” মানে “খারাপ” নয়।
-
Predict the output: চালানোর আগে হাতে হিসাব করে বলুন কী ছাপা হবে।
capহলো capacity. চাহিদাcap-কে ছাড়িয়ে গেলে পরের ধাপের জন্যcap৩ বাড়ে।let cap = 10, lost = 0, idle = 0; for (const d of [6, 12, 9, 15]) { lost += Math.max(0, d - cap); idle += Math.max(0, cap - d); if (d > cap) cap += 3; } console.log(cap, lost, idle);আউটপুট:
16 4 8d = 6,cap = 10: lost ০, idle ৪।d = 12,cap = 10: lost ২, idle ৪ থাকে;capহলো ১৩।d = 9,cap = 13: lost ২ থাকে, idle ৪ + ৪ = ৮।d = 15,cap = 13: lost ২ + ২ = ৪, idle ৮ থাকে;capহলো ১৬।
লক্ষ করুন,
capবাড়ে ক্ষতি হওয়ার পরে। সব প্রতিক্রিয়াশীল scaling-এর এটিই স্বভাব, যা পর্ব ১৭-তে আবার দেখবেন। -
Design — বাসের টিকিটের অ্যাপ: একটি কাল্পনিক বাসের টিকিটের অ্যাপে বছরের বেশিরভাগ সময় চাহিদা কম, কিন্তু ঈদের আগে কয়েক দিন চাহিদা ৫০ গুণ হয়। দলে দুজন developer, কোনো system administrator নেই। নিজের server, colocation, shared hosting আর cloud-এর মধ্যে কোনটি বেছে নেবেন? দুটি ঝুঁকি আর সেগুলো সামলানোর উপায়ও লিখুন।
বাছাই: cloud. চূড়া আর গড়ের ব্যবধান বিশাল, তাই চূড়া ধরে যন্ত্র কিনলে utilization খুব কম হবে। দলটি ছোট, তাই যন্ত্র দেখাশোনার মানুষও নেই। Shared hosting ৫০ গুণ ধাক্কা নিতে পারবে না।
ঝুঁকি ১, সীমা: Provider-এর quota-র কারণে হঠাৎ অনেক server না-ও মিলতে পারে। উপায়: ঈদের অনেক আগে load test আর quota বাড়ানোর আবেদন।
ঝুঁকি ২, বিল: ভুল কনফিগারেশন বা bot-এর ভিড়ে খরচ লাফাতে পারে। উপায়: budget alert, autoscaling-এর সর্বোচ্চ সীমা। লক্ষ করুন, ডেটাবেস একা সহজে ৫০ গুণ বাড়ে না। ওয়েব server বাড়ানোর চেয়ে সেটিই আসল কঠিন প্রশ্ন, যা পর্ব ২২ আর ১৭-তে আসবে।
নিজেকে যাচাই করুন
ভুল হলে কারণসহ ব্যাখ্যা পাবেন, আবার চেষ্টাও করতে পারবেন।
ক্রমএকটি cloud VM চালু হওয়ার ধাপগুলো সঠিক ক্রমে সাজান (▲▼ চেপে সরান)
- API অনুরোধ পাঠানো
- পরিচয়, অনুমতি আর quota যাচাই
- Scheduler একটি host বেছে নেয়
- Hypervisor VM তৈরি করে চালু করে
- OS boot করে আর cloud-init সেটআপ চালায়
- অবস্থা running হয়
NIST SP 800-145 অনুযায়ী কোনটি cloud-এর পাঁচটি অপরিহার্য বৈশিষ্ট্যের একটি নয়?
- Measured service
- কম খরচের নিশ্চয়তা
- Resource pooling
- Rapid elasticity
একটি ব্যবস্থায় চূড়ার জন্য ৫০টি server সারা মাস চালু থাকে, কিন্তু গড় চাহিদা ১০টি server. ৩০ দিনের মাসে utilization আর অলস server-ঘণ্টা কত?
- ৫০%, ১৮,০০০
- ২০%, ৭,২০০
- ২০%, ২৮,৮০০
- ৮০%, ২৮,৮০০
একটি কোম্পানির নিজের যন্ত্র আছে, কিন্তু সেগুলো অন্য কোম্পানির ভবনের র্যাকে রাখা, আর বিদ্যুৎ ও নেটওয়ার্ক সেই ভবনের মালিক দেন। এই ব্যবস্থার নাম কী?
- Shared hosting
- IaaS
- On-premises
- Colocation
একটি cloud provider কীভাবে একটি physical server একসাথে কয়েকজন গ্রাহককে আলাদা কম্পিউটার হিসেবে দিতে পারে?
- Hypervisor দিয়ে যন্ত্রটিকে কয়েকটি VM-এ ভাগ করে
- CDN দিয়ে ফাইল ছড়িয়ে দিয়ে
- Load balancer দিয়ে অনুরোধ ভাগ করে
- Region বদলে দিয়ে
একটি অ্যাপের চাহিদা সারা বছর প্রায় স্থির আর utilization ৮৫%. দলের নিজের যন্ত্র চালানোর দক্ষতাও আছে। Cloud-এর আর্থিক যুক্তি সম্পর্কে কোন কথাটি সবচেয়ে ঠিক?
- Cloud সবসময় সস্তা, তাই প্রশ্নই ওঠে না
- Cloud কখনোই ব্যবহার করা উচিত নয়
- Elasticity-র সুবিধা কম, তাই নিজের যন্ত্র সস্তা হতে পারে; পুরো খরচ হিসাব করে দেখতে হবে
- Utilization বেশি হলে cloud আপনাআপনি সস্তা হয়ে যায়
DevOps আর cloud-এর সম্পর্ক নিয়ে কোন কথাটি সঠিক?
- DevOps হলো AWS-এর একটি service
- দুটি আলাদা ধারণা; cloud-এর API DevOps-এর automation সহজ করে
- Cloud ছাড়া DevOps অসম্ভব
- Cloud ব্যবহার করলেই DevOps হয়ে যায়
শব্দকোষ
লেখার মধ্যে ডটেড দাগ দেওয়া শব্দে মাউস রাখুন বা চাপুন, অর্থ দেখাবে। এই পর্বের সব নতুন শব্দ এখানে একসাথে:
মনে রাখুন
- Cloud মানে অন্যের data centre-এর কম্পিউটার API দিয়ে, মেপে, ভাড়ায় নেওয়া।
- নিজের server-এর আসল সমস্যা হলো আগাম অনুমান: over-provisioning-এ অপচয়, under-provisioning-এ হারানো গ্রাহক।
- NIST: ৫ বৈশিষ্ট্য, ৩ service model, ৪ deployment model.
- ভিত্তি: virtualization আর API; নিচে আছে বিদ্যুৎ, ঠান্ডা আর যন্ত্রে ভরা বিশাল ভবন।
- Cloud খারাপ নকশা, ভুল permission, বিল আর outage-এর ঝুঁকি সরায় না; DevOps হলো সেগুলো সামলে কাজ করার ধরন।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- পর্ব ০২ · IaaS, PaaS, SaaS আর FaaS — কে কী সামলায় আর shared responsibilityপরবর্তী পর্বকোন model-এ কোন স্তর কার দায়িত্ব, আর shared responsibility আসলে কী বলে।
- ক্লাউড কম্পিউটিং ও DevOps · কোর্স হোম৮১টি পর্বপুরো কোর্সের রোডম্যাপ।
- Operating Systems · Virtual machineগভীরে যানHypervisor কীভাবে কাজ করে, কেন x86-এ virtualization কঠিন ছিল।
- Computer Networks · Data center networkপাশের ট্র্যাকData centre-এর ভেতরের network-এর নকশা।
- System Design · Scaling-এর মূল কথাপাশের ট্র্যাকVertical আর horizontal scaling-এর তত্ত্ব।
- Software Engineering · Continuous Delivery ও DevOpsপাশের ট্র্যাকDevOps-এর প্রকৌশল-চর্চার দিক।