এই পর্বে যা করবেন
- Cloud ও DevOps-এর MCQ কোন ছাঁচে আসে তা চেনা, আর বাদ দেওয়ার পদ্ধতি শেখা
- “জিনিসটি আছে” আর “জিনিসটি কাজ করছে”, এই দুইয়ের ফাঁদ ধরা
- CIDR, availability, RPO, burn rate আর খরচের ছোট numerical দ্রুত করা
- tag বনাম digest, replica বনাম backup, liveness বনাম readiness, এমন জোড়া দূর করা
- পুরো কোর্সের প্রশ্নে নিজের দুর্বল মডিউল খুঁজে সেই পর্বে ফেরা
১ · MCQ কীভাবে সামলাবেন — প্রশ্নের ধরন, বাদ দেওয়া আর সময়
Cloud-এর MCQ-তে নম্বর বেশি হারায় না-জানায় নয়, একটি শব্দ এড়িয়ে যাওয়ায়। “Stop” আর “Terminate”, “enable” আর “start”, “tag” আর “digest” পাশাপাশি থাকে। ভুল অপশনগুলো জেনেশুনে বানানো, একে বলে distractor. এই কোর্সের distractor-গুলো ঘুরেফিরে কয়েকটি ভুল ধারণা থেকেই আসে, যা নিচের টেবিলে আছে।
প্রশ্নের পাঁচ ছাঁচ
| ধরন | উদাহরণ | কৌশল |
|---|---|---|
| জোড়া-ধারণা | SG বনাম NACL, RPO বনাম RTO | সংজ্ঞার একটি চাবি-শব্দ ধরুন |
| “কোনটি মানায়” | কোন storage, কোন DR কৌশল | আগে কঠিন শর্তটি খুঁজুন, তারপর ছাঁকুন |
| ফল অনুমান | Plan-এর summary, exit code, rollout | প্রতিটি ধাপে অবস্থা খাতায় লিখুন |
| ছোট numerical | CIDR, availability, burn rate | সূত্র আর একক আগে, উত্তরের মাত্রা আন্দাজ করুন |
| লক্ষণ থেকে কারণ | 502, Pending, OOMKilled | লক্ষণটি কোন স্তরের, আগে সেটি ঠিক করুন |
কৌশল ১ · বাদ দেওয়ার পদ্ধতি — একটি কঠিন প্রশ্ন ধাপে ধাপে
সঠিক উত্তর সরাসরি খোঁজার চেয়ে ভুল বাদ দেওয়া প্রায়ই সহজ। একে বলে elimination method. নিচের প্রশ্নের প্রতিটি ভুল অপশন একটি নিয়ম দিয়ে কাটুন। ফলটি পর্ব ৪৪-এর আসল run-এর সাথে মেলে।
- সীমা
৫ ও ৩আগে হিসাব - Outage?
ক বাদavailable ≥ ৩ - Rollback?
খ বাদনিজে হয় না - নতুন কত?
গ বাদমোট ≤ ৫ - উত্তর
ঘআসল run
maxSurge 1, maxUnavailable 1 নতুন tag registry-তে নেই। কিছুক্ষণ পরে অবস্থা কী? ক) READY 0/4, সেবা বন্ধ খ) নিজে rollback, 4/4 গ) নতুন ৪, পুরোনো ৪ ঘ) READY 3/4, পুরোনো ৩টি সেবা দিচ্ছে সর্বোচ্চ মোট = ৪ + ১ = ৫ সর্বনিম্ন available = ৩
available ৩-এর নিচে নামে না নতুন Pod Ready হচ্ছে না, তাই পুরোনো Pod আর সরে না → READY 0/4 হবে না
progressDeadlineSeconds পেরোলে Progressing = False ProgressDeadlineExceeded → শুধু condition বদলায় → rollback আপনার কাজ
পুরোনো ৪ + নতুন ১ = ৫ পুরোনো ১টি সরল = ৪ নতুন আরেকটি = ৫ পুরোনো ৩ + নতুন ২ → থামে → মোট ৮ অসম্ভব
READY UP-TO-DATE AVAILABLE 3/4 2 3 পুরোনো ৩টি Pod সেবা দিচ্ছে নতুন ২টি image না পেয়ে আটকে সেবা ভাঙেনি, rollout আটকেছে
- আগে সীমা দুটি হিসাব করুন। সর্বোচ্চ মোট ৫, সর্বনিম্ন available ৩. অপশন পড়ার আগে এই দুই সংখ্যা খাতায় থাকলে অর্ধেক কাজ শেষ (পর্ব ৪৪)।
- “সেবা বন্ধ” অপশনটি সীমার সাথে মেলে না। নতুন Pod Ready না হওয়ায় controller আর পুরোনো Pod সরায় না, তাই ক বাদ।
- “নিজে থেকে rollback” চেনা ফাঁদ। Deadline পেরোলে শুধু condition বদলায়, Deployment নিজে ফেরে না। খ বাদ।
- Pod গুনে দেখুন। মোট ৫-এর বেশি হতে পারে না, আর পুরোনো ৩-এর নিচে নামে না। তাই নতুন ২টিতে থামে; গ-এর মোট ৮ অসম্ভব।
- উত্তর ঘ, আর আসল run-ও তাই বলে।
3/4 2 3. প্রতিটি ভুল অপশন একটি আলাদা ভুল ধারণা থেকে বানানো; এটিই ভালো distractor-এর চিহ্ন।
কৌশল ২ · “আছে” মানেই “কাজ করছে” নয়
Kubernetes-এর API অনেক object চুপচাপ জমা রাখে, যদিও সেটি মেনে চলার কেউ নেই। কোর্সের সবচেয়ে দামি ফাঁদের একটি এটি। প্রশ্নে “object দেখাচ্ছে, তবু কিছু হচ্ছে না” পড়লেই খুঁজুন: কে এটি কার্যকর করে?
নিয়ম জমা থাকা আর নিয়ম মানানো আলাদা
An API object only records intent; a separate component has to enforce it
কৌশল ৩ · রীতি আর একক আগে, হিসাব পরে
| বিষয় | রীতি বা সূত্র | যাচাই |
|---|---|---|
| সময় | মাস ৩০ দিন = ৪৩,২০০ মিনিট = ৭২০ ঘণ্টা | ভিন্ন হলে প্রশ্নে লেখা থাকবে |
| Availability | Series-এ গুণ; parallel-এ 1 − (1 − a)n | Series-এর ফল দুর্বলতম অংশের চেয়েও কম |
| ডেটা | 1 GB = 109 B; সময় = byte × ৮ ÷ গতি | Byte আর bit-এ ৮ গুণ |
| CIDR | ঠিকানা = 232 − p; AWS-ধরনে ৫টি কাটা | Prefix বাড়লে ঠিকানা কমে |
| SLO | burn = error rate ÷ (১ − SLO); খরচ = burn × জানালা ÷ ৭২০ | Budget-এর দশমিক গুনুন |
| Scaling | desired = ⌈current × metric ÷ target⌉; concurrency = rate × duration | Max-এ আটকায় কি না দেখুন |
নিচের checker মডিউল ১ থেকে ৬-এর numerical আবার করে। সংখ্যা বদলে নিজের প্রশ্নও মেলাতে পারেন। পরের দুটি checker আছে মডিউল ৮ আর ১৩-এর অংশে।
// Re-check the numericals of modules 1-6 (all prices assumed).
const f = (x, d = 2) => Number(x.toFixed(d));
const p = (label, v) => console.log(label.padEnd(30), v);
p("Idle hours (60-15) x 720", (60 - 15) * 720);
p("Break-even months", 18000 / (1000 - 400));
p("Cost per useful server-hour", 3000 / (6000 * 0.4));
p("Series 99.9% x 99.5%", f(99.9 * 0.995, 4));
p("Two 99% copies + 99.9% DB", f(100 * (1 - 0.01 ** 2) * 0.999, 2));
p("Error budget 99.95% (min)", f(43200 * 0.0005, 1));
p("umask 037 on 666", (0o666 & ~0o037).toString(8));
p("Burstable credits per hour", f(4 * 0.2 * 60, 0));
p("Bootstrap failure %", f(100 * (1 - 0.98 ** 4), 1));
p("Desired, capped at max 8", Math.min(8, Math.ceil(6 * 75 / 50)));
p("LB worst removal (s)", 4 * 20 + 5);
p("Throughput, 4000 x 16 KB", 4000 * 16 / 1000 + " MB/s");
p("Storage bill", 2000 * 0.02 + 50 * 0.4 + 300 * 0.1);
p("Connections rejected", 40 * 10 - (300 - 10));
p("Cache latency (ms)", f(1 + 0.05 * 40, 1));
p("RTO, 2 TB at 2 Gbps (min)", f(2e12 * 8 / 2e9 / 60 + 30, 0));
p("Usable in /22", 2 ** (32 - 22) - 5);
p("Full mesh, 30 VPCs", 30 * 29 / 2);
p("VPN vs link break-even (GB)", f(400 / 0.08, 0));
p("KMS calls, 4 x 600 s cache", 30 * 86400 / 600 * 4);আউটপুট (নির্ধারিত, প্রতিবার একই):
Idle hours (60-15) x 720 32400
Break-even months 30
Cost per useful server-hour 1.25
Series 99.9% x 99.5% 99.4005
Two 99% copies + 99.9% DB 99.89
Error budget 99.95% (min) 21.6
umask 037 on 666 640
Burstable credits per hour 48
Bootstrap failure % 7.8
Desired, capped at max 8 8
LB worst removal (s) 85
Throughput, 4000 x 16 KB 64 MB/s
Storage bill 90
Connections rejected 110
Cache latency (ms) 3
RTO, 2 TB at 2 Gbps (min) 163
Usable in /22 1019
Full mesh, 30 VPCs 435
VPN vs link break-even (GB) 5000
KMS calls, 4 x 600 s cache 17280
প্রতিটি সংখ্যা মডিউল ১ থেকে ৬-এর কোনো প্রশ্নের উত্তর। umask-এর লাইনটি দেখায়, হিসাবটি বিয়োগ নয়, বিটের AND NOT.
কৌশল ৪ · Negative marking আর সময়
ধরা যাক ঠিক হলে +১, ভুলে −০.২৫. চার অপশনে অন্ধ আন্দাজের গড় লাভ +০.০৬২৫; একটি নিশ্চিতভাবে বাদ দিলে +০.১৬৭; দুটি বাদ দিলে +০.৩৭৫. তাই একটিও বাদ দিতে পারলে আন্দাজ লাভজনক। কত কাটে বা আদৌ কাটে কি না, তা পরীক্ষাভেদে আলাদা; নিজের পরীক্ষার নিয়ম দেখে নিন।
সময় ভাগ করুন দুই দফায়: প্রথমে সংজ্ঞার প্রশ্ন, numerical লাগলে চিহ্ন দিয়ে এগিয়ে যান; পরে চিহ্নিতগুলো, খাতায়।
বারোটি বড় ফাঁদ
| ফাঁদ | ভুল ধারণা | সঠিক কথা |
|---|---|---|
| Replica | “Replica আছে, backup লাগবে না” | ভুলও কপি হয়; ফেরায় PITR (পর্ব ২২, ২৪) |
| Stop | “Stop করলে বিল শেষ” | Disk আর static IP-র বিল চলে (পর্ব ১৫) |
| Budget alert | “সীমায় খরচ থামে” | শুধু জানায় (পর্ব ৬) |
| Encryption | “Encrypted bucket মানে গোপন” | অনুমতি থাকলে provider খুলেই দেন (পর্ব ৩৪) |
| Base64 | “Secret তো encoded” | Base64 encryption নয় (পর্ব ৪৭) |
| Tag | “Tag বদলায় না” | Tag সরে, digest সরে না (পর্ব ৪১) |
| NetworkPolicy | “Object দেখাচ্ছে, তাই চলছে” | CNI না মানলে কিছুই হয় না (পর্ব ৪৯) |
| Probe | “Readiness ব্যর্থ হলে restart” | Traffic বন্ধ; restart liveness-এর (পর্ব ৪৩) |
| Plan | “২ add, ২ destroy মানে নতুন ৪টি” | Replace দুই দিকেই গোনা হয় (পর্ব ৫১) |
| সবুজ যাচাই | “helm template --validate পাস, তাই ঠিক” | আসল run-এ ভুল ধরেছে --dry-run=server (পর্ব ৫০) |
| Canary | “০ error মানে নিরাপদ” | নমুনা ছোট হলে হার অজানা (পর্ব ৫৯) |
| Commitment | “ছাড় নিলেই লাভ” | Break-even = ১ − d (পর্ব ৭২) |
এই পাতার প্রশ্নগুলো সম্পর্কে: প্রশ্নগুলো এই কোর্সের জন্য নতুন করে লেখা। এ ধরনের প্রশ্ন প্রায়ই আসে, এমন ধারণা থেকে বানানো; কোনোটিই কোনো নির্দিষ্ট পরীক্ষা, প্রতিষ্ঠান বা vendor certificate-এর আসল প্রশ্ন নয়। সব দাম অনুমিত। Tool-এর আচরণ version-ভেদে বদলাতে পারে; “আসল run” মানে কোর্সের পর্বে দেখানো run (Docker Engine ২৯, Kubernetes ১.৩৪, Terraform ১.১৭, Helm ৩.১৯)। পূর্ণ সমাধানের numerical পর্ব ৭৭-এ, কারণসহ লিখিত উত্তর পর্ব ৭৯-এ।
২ · মডিউল ১ ও ২ — Cloud-এর ভিত্তি, Linux আর server (৪০টি প্রশ্ন)
মডিউল ১ — Cloud আর DevOps-এর ভিত্তি (২০টি প্রশ্ন)
সংজ্ঞা, দায়, খরচ আর availability. নম্বর বেশি হারায় shared responsibility, series-parallel আর error budget-এর দশমিকে।
- পর্ব ০১ · Cloud computing কী আর পর্ব ০২ · IaaS, PaaS, SaaS আর FaaS — NIST-এর ৫-৩-৪, shared responsibility, replica ≠ backup
- পর্ব ০৩ · Public, private, hybrid আর multi-cloud আর পর্ব ০৪ · Cloud-এর অর্থনীতি — on-premises বনাম private cloud, বদলির স্তরের ছাদ, TCO, break-even
- পর্ব ০৫ · Cloud-এর ভৌগোলিক কাঠামো আর পর্ব ০৬ · Cloud ব্যবহারের পথ — zone, RTT, series-parallel, budget alert, backoff
- পর্ব ০৭ · DevOps আর SRE — three ways, error budget, সারির গণিত, toil
(সহজ) NIST SP 800-145-এ cloud-এর অপরিহার্য বৈশিষ্ট্য, service model আর deployment model-এর সংখ্যা যথাক্রমে কত?
- ৪, ৩, ৫
- ৫, ৪, ৩
- ৫, ৩, ৪
- ৩, ৫, ৪
(মাঝারি) চূড়ার জন্য ৬০টি server সারা মাস চালু থাকে, গড় চাহিদা ১৫টি server. ৩০ দিনের মাসে অলস server-ঘণ্টা কত?
- ১০,৮০০
- ৪৩,২০০
- ১,০৮০
- ৩২,৪০০
(সহজ) PaaS-এ সাধারণত গ্রাহকের নিজের দায়িত্বে কী থাকে?
- নিজের code, ডেটা আর অনুমতি
- OS patch করা
- Physical server বদলানো
- Hypervisor চালানো
(মাঝারি) Managed database-এর read replica আছে। ভুল করে একটি table মুছে গেলে replica কেন backup-এর কাজ করে না?
- Replica-তে কখনো ডেটা লেখা হয় না
- ভুল আদেশটিও replica-তে কপি হয়
- Replica শুধু index রাখে
- Replica অন্য region ছাড়া চলে না
(মাঝারি) Shared responsibility-তে “security of the cloud”-এর উদাহরণ কোনটি?
- Data centre-এর ভৌত নিরাপত্তা
- Bucket-এর policy ঠিক করা
- ব্যবহারকারীর MFA চালু করা
- নিজের app-এর ত্রুটি সারানো
(সহজ) NIST-এর ভাষায় on-premises আর private cloud-এর সম্পর্ক কোনটি?
- দুটি একই জিনিসের দুই নাম
- On-premises জায়গা, private cloud একান্ত ব্যবহারের cloud
- Private cloud সবসময় নিজের ভবনে থাকে, অন্য কোথাও নয়
- On-premises মানেই pay-per-use
(মাঝারি) দুটি স্বাধীন provider-এর প্রতিটি ৯৯.৯%, আর তাদের মাঝে বদলির স্তর ৯৯.৯৮%. পুরো ব্যবস্থার availability প্রায় কত?
- ৯৯.৯৯৯৯%
- ৯৯.৮%
- ৯৯.৯%
- ৯৯.৯৮%
(সহজ) মাসে মাসে আসা cloud বিল হিসাবের কোন শ্রেণিতে পড়ে?
- CapEx
- Depreciation
- OpEx
- Sunk cost
(মাঝারি) Server কিনতে একবার $১৮,০০০, চালাতে মাসে $৪০০; একই কাজ cloud-এ মাসে $১,০০০ (সব দাম অনুমিত)। Break-even কত মাসে?
- ১৮ মাস
- ৩০ মাস
- ৪৫ মাস
- ১৩ মাস
(কঠিন) একটি server বহরের স্থির মাসিক খরচ $৩,০০০ (অনুমিত), পূর্ণ ক্ষমতা ৬,০০০ server-ঘণ্টা, utilisation ৪০%. কাজে লাগা প্রতি server-ঘণ্টার খরচ কত?
- $০.৫০
- $০.২০
- $৫.০০
- $১.২৫
(সহজ) Region আর availability zone-এর সম্পর্ক কোনটি?
- Zone-এর ভেতরে কয়েকটি region থাকে
- Region আর zone একই জিনিস
- Region-এর ভেতরে কয়েকটি বিচ্ছিন্ন zone থাকে
- Zone মানে শুধু CDN-এর edge
(মাঝারি) Fibre-এ RTT (ms) ≈ km ÷ ১০০ ধরে নিন। ৩,০০০ km দূরের server-এ প্রথম HTTPS সাড়ায় প্রায় ৩টি RTT লাগলে সময় কত?
- ৯০ ms
- ৩০ ms
- ১৫ ms
- ৩০০ ms
(মাঝারি) দুটি অংশ series-এ, availability ৯৯.৯% আর ৯৯.৫%. মোট availability কত?
- ৯৯.৭%
- ৯৯.৪০০৫%
- ৯৯.৯৯৯৫%
- ৯৯.৫%
(কঠিন) দুটি স্বাধীন app কপি প্রতিটি ৯৯%, আর দুটিই একটি মাত্র ৯৯.৯% database-এর ওপর নির্ভর। মোট availability প্রায় কত?
- ৯৯.৮৯%
- ৯৯.৯৯%
- ৯৯.৯৯৯%
- ৯৭.৯%
(সহজ) Cloud-এ budget alert সেট করা আছে। খরচ সীমা পেরোলে সাধারণভাবে কী হয়?
- সব resource মুছে যায়
- Provider বিল মাফ করে দেন
- শুধু জানানো হয়, resource চলতে থাকে
- Account সাথে সাথে বন্ধ হয়
(মাঝারি) Full jitter backoff: wait = random(0, min(cap, base × 2^n)). Base ২ সেকেন্ড, cap ৩০ সেকেন্ড, n = ৫ হলে অপেক্ষার পরিসর কত?
- ০ থেকে ৬৪ সেকেন্ড
- ঠিক ৩০ সেকেন্ড
- ৩০ থেকে ৬৪ সেকেন্ড
- ০ থেকে ৩০ সেকেন্ড
(সহজ) DevOps-এর three ways-এ তৃতীয় পথটি মূলত কী নিয়ে?
- বাঁ থেকে ডানে কাজের প্রবাহ
- ডান থেকে বাঁয়ে feedback
- অবিরাম শেখা আর পরীক্ষা
- সব কাজ একটি tool-এ আনা
(মাঝারি) SLO ৯৯.৯৫%, window ৩০ দিন। Error budget কত মিনিট?
- ২১.৬ মিনিট
- ৪৩.২ মিনিট
- ৪.৩২ মিনিট
- ২১৬ মিনিট
(মাঝারি) গড় অপেক্ষা ≈ কাজের সময় × ব্যস্ততা ÷ (১ − ব্যস্ততা) মডেলে ৩ ঘণ্টার কাজ ৯০% ব্যস্ত দলে এলে মোট কত ঘণ্টায় শেষ হবে?
- ২৭ ঘণ্টা
- ৩০ ঘণ্টা
- ৩.৩ ঘণ্টা
- ৯ ঘণ্টা
(সহজ) SRE-এর সংজ্ঞায় কোনটি toil?
- নতুন SLO-র নকশা করা
- Postmortem থেকে automation লেখা
- Capacity মডেল বানানো
- প্রতি সপ্তাহে হাতে certificate বদলানো
মডিউল ২ — Linux আর server চালানো (২০টি প্রশ্ন)
ছোট আচরণের প্রশ্ন: umask, pipefail, cron-এর ঘড়ি, প্রথম মান জেতা আর proxy_pass-এর শেষের স্ল্যাশ।
- পর্ব ০৮ · Server-এর Linux আর পর্ব ০৯ · Ops-এর shell — umask, path-এর x, inode, pipe, p95
- পর্ব ১০ · Bash automation আর পর্ব ১১ · Service চালানো — cron, unit file, signal, exit code, crash loop
- পর্ব ১২ · SSH আর দূরের server আর পর্ব ১৩ · Server-এর network হাতিয়ার — SSH key, tunnel, config, refused বনাম timeout, curl-এর সময়
- পর্ব ১৪ · Nginx আর reverse proxy — location-এর ক্রম, proxy_pass, 502 বনাম 504, ACME
(মাঝারি) umask 037 থাকলে একটি প্রোগ্রাম mode 666 চেয়ে ফাইল বানাল। ফাইলের mode কত?
627740666640
(মাঝারি) ফাইল /srv/app/data.txt-এর mode 644, কিন্তু /srv/app-এর mode 700, মালিক অন্য একজন। আপনি (অন্য user, root নন) ফাইলটি পড়তে চাইলে কী হবে?
- Permission denied, পথে x নেই
- পড়া যাবে, কারণ ফাইল
644 - ফাইলটি মুছে যাবে
- No space left on device আসবে
(মাঝারি) Disk-এ জায়গা আছে, তবু No space left on device আসছে। কোন আদেশে inode ফুরিয়েছে কি না দেখা যায়?
df -hdu -shdf -ils -l
(মাঝারি) Bash-এ set -o pipefail; false | true; echo $? কী ছাপবে?
01127- কিছুই ছাপবে না
(মাঝারি) uniq -c-এর আগে sort কেন দরকার হয়?
uniqশুধু পাশাপাশি একই লাইন মেলায়uniqফাইল পড়তে পারে নাsortছাড়া গণনা error দেয়sortলাইন ছোট করে দেয়
(মাঝারি) ৪০০টি request-এর সময় ছোট থেকে বড়ে সাজানো। Nearest-rank পদ্ধতিতে p95 কত নম্বর লাইনে?
- ৩৯৫
- ৩৬০
- ২০০
- ৩৮০
(মাঝারি) Crontab লাইন */15 9-17 * * 1-5 কখন চলে?
- প্রতিদিন ১৫টায় একবার
- সোম থেকে শুক্র, ০৯:০০ থেকে ১৭:৪৫, প্রতি ১৫ মিনিটে
- মাসের ৯–১৭ তারিখে
- সোম থেকে বৃহস্পতি, ০৯:০০ থেকে ১৭:০০, প্রতি ১৫ মিনিটে
(মাঝারি) Server-এর ঘড়ি UTC. 20 18 * * * লাইনটি বাংলাদেশের সময়ে (UTC+6) কখন চলবে?
- একই দিন ১৮:২০
- একই দিন ১২:২০
- পরের দিন ০০:২০
- পরের দিন ০৬:২০
(মাঝারি) Exit status 137 কী বোঝায়?
- Process SIGTERM ধরে গুছিয়ে থেমেছে
- Process SIGKILL পেয়ে মরেছে
- ফাইল পাওয়া যায়নি
- Process সফলভাবে শেষ
(মাঝারি) Unit file বদলে daemon-reload ছাড়াই systemctl restart দিলে সাধারণত কী হয়?
- systemd পুরোনো সংজ্ঞাই ব্যবহার করে
- নতুন সংজ্ঞা আপনা-আপনি বসে
- Service-টি পুরো মুছে যায়
- পুরো server reboot হয়
(কঠিন) App start-এর ০.৫ সেকেন্ড পরে ভেঙে পড়ে। Restart=on-failure, RestartSec=1, StartLimitIntervalSec=10, StartLimitBurst=5. কী ঘটবে?
- Crash loop চিরকাল চলবে
- প্রথম crash-এই থামবে
- সীমা ছুঁয়ে unit failed-এ থামবে
- Server reboot হবে
(সহজ) SSH public key login-এ authorized_keys ফাইলে কী থাকে, আর কোথায়?
- Private key, server-এ
- Server-এর host key, ল্যাপটপে
- Password-এর hash, ল্যাপটপে
- ব্যবহারকারীর public key, server-এ
(মাঝারি) ssh -R 9000:localhost:3000 host চালালে কী হয়?
- দূরের server-এর
9000আপনার ল্যাপটপের3000-এ পৌঁছায় - ল্যাপটপের
9000দূরের3000-এ পৌঁছায় - দূরের
3000বন্ধ হয় - সব traffic SOCKS proxy হয়
(মাঝারি) ~/.ssh/config-এ ওপরে Host * তলায় User a, পরে Host web তলায় User b. ssh web কোন user নেবে?
b- দুটি user-এ পরপর চেষ্টা করবে
a- Config error দেবে
(মাঝারি) Client-এ সাথে সাথে Connection refused এলে সাধারণত কী বোঝায়?
- Security group নীরবে packet ফেলে দিচ্ছে
- DNS নাম পাওয়া যায়নি
- Certificate মেয়াদোত্তীর্ণ
- Packet পৌঁছেছে, কিন্তু কেউ শুনছে না
(মাঝারি) curl -w-এর আউটপুটে time_appconnect=0.130, time_starttransfer=0.330. Server-এর প্রথম byte দিতে কত সময় লেগেছে?
- ৩৩০ ms
- ২০০ ms
- ১৩০ ms
- ৪৬০ ms
(মাঝারি) location /api/ { proxy_pass http://127.0.0.1:3000; } (শেষে / নেই)। /api/books অনুরোধে অ্যাপ কোন path দেখবে?
/books/api/api/books/api//books
(মাঝারি) location ^~ /static/ আর location ~* \.png$ আছে। /static/a.png কোনটিতে যাবে?
~* \.png$^~ /static/- দুটিতেই, পরপর
- সরাসরি
404
(মাঝারি) App ৯০ সেকেন্ড পরে উত্তর দেয়, proxy_read_timeout 60s. ব্যবহারকারী কোন status দেখবেন?
502200404504
(মাঝারি) HTTP-01 দিয়ে certificate নবায়ন হঠাৎ ব্যর্থ। সবচেয়ে সম্ভাব্য কারণ কোনটি?
- Firewall-এ port
80বন্ধ - Port
22বন্ধ - Disk-এ log অনেক
- HSTS header আছে
৩ · মডিউল ৩ ও ৪ — Compute, storage আর database (৪২টি প্রশ্ন)
মডিউল ৩ — Cloud compute (২০টি প্রশ্ন)
Stop-এর বিল, desired-এর max, zone হারানোর হিসাব আর “আগে ছাঁকনি, পরে বাছাই”.
- পর্ব ১৫ · Cloud VM আর পর্ব ১৬ · Machine image আর cloud-init — lifecycle, burstable credit, cloud-init, bake বনাম boot
- পর্ব ১৭ · Autoscaling আর পর্ব ১৮ · Cloud load balancer — desired-এর সূত্র, flapping, L4 বনাম L7, health check-এর সময়
- পর্ব ১৯ · কোন compute কখন — crossover, concurrency, compute বাছাই
(সহজ) VM-এর Stop আর Terminate-এর মূল পার্থক্য কোনটি?
- দুটিই একই কাজ করে
- Stop করলে সব disk মুছে যায়
- Stop পরে আবার চালু করা যায়, Terminate VM-টি শেষ করে দেয়
- Terminate করলে VM অন্য region-এ গিয়ে আবার চালু হয়
(মাঝারি) একটি burstable VM-এর 4 vCPU, baseline প্রতি vCPU-তে ২০%. ১ credit = ১ vCPU ১০০%-এ ১ মিনিট হলে ঘণ্টায় কত credit জমে?
- ১২
- ২৪০
- ২৪
- ৪৮
(মাঝারি) VM-এর দাম ঘণ্টায় $০.২০, disk মাসে $১৫, static IP মাসে $৪ (অনুমিত)। VM পুরো মাস stopped থাকলে, compute বিল বন্ধ ধরে, মাসের বিল কত?
- $১৯
- $০
- $১৫
- $১৬৩
(মাঝারি) ৮ vCPU-র একটি VM সম্পর্কে সাধারণত কোন কথাটি ঠিক?
- ৮টি পুরো physical CPU chip পাওয়া যায়
- vCPU প্রায়ই একটি hardware thread
- vCPU মানে শুধু memory-র একক
- সব type-এ vCPU-র গতি একই
(সহজ) Machine image-এ bake না করে boot-এর সময় দেওয়া উচিত কোনটি?
- OS-এর নিরাপত্তা patch
- Runtime আর দরকারি package
- Monitoring agent-এর binary
- Environment-ভেদে আলাদা ঠিকানা
(মাঝারি) cloud-init-এর ধাপের সঠিক ক্রম কোনটি?
- Network → Local → Final → Config
- Local → Network → Config → Final
- Config → Local → Network → Final
- Final → Config → Network → Local
(মাঝারি) Bootstrap-এ ৪টি স্বাধীন ধাপ, প্রতিটিতে ব্যর্থতা ২%. একটি launch ব্যর্থ হওয়ার সম্ভাবনা প্রায় কত?
- ৭.৮%
- ২%
- ১৬%
- ০.০০০০১৬%
(মাঝারি) User data-তে database password base64 করে রাখলে কেন সেটি নিরাপদ নয়?
- Base64 ফাইল অনেক বড় করে দেয়, তাই boot ধীর হয়
- User data boot-এ চলে না
- Base64 encoding মাত্র, চাবি লাগে না
- Base64 শুধু Windows-এ চলে
(সহজ) Autoscaler সরাসরি কোন মান বদলায়?
- Desired capacity
- Min সীমার মান
- Max সীমার মান
- Instance type
(মাঝারি) Group-এ ৬টি instance, metric ৭৫, target ৫০, min ২, max ৮. Target tracking-এর সূত্রে desired কত?
- ৯
- ৪
- ৬
- ৮
(মাঝারি) চারটি zone-এ সমান instance, target ৬০%. একটি zone বিকল হলে, বদলি আসার আগে বাকিদের ব্যস্ততা কত?
- ৬০%
- ৭৫%
- ৮০%
- ১২০%
(কঠিন) চাপ স্থির। নিয়ম: metric ৮০-এর ওপরে ২টি যোগ, ৫০-এর নিচে ২টি বাদ। ৪টি instance-এ metric ৪৫. কী হবে?
- ২টিতে স্থির থাকবে, metric ৯০-এ
- ২টিতে নেমে metric ৯০, আবার বাড়বে
- ৬টিতে উঠবে
- কিছুই বদলাবে না
(সহজ) Path দেখে /api আর /img-কে আলাদা target group-এ পাঠাতে কোন ধরনের load balancer লাগে?
- L4
- DNS round robin
- NAT gateway
- L7
(মাঝারি) Health check interval ২০ s, timeout ৫ s, unhealthy threshold ৪. Target শেষ সফল check-এর ঠিক পরে আটকে গেল। সবচেয়ে খারাপ ক্ষেত্রে বাদ পড়তে প্রায় কত সময়?
- ৮০ s
- ৮৫ s
- ২৫ s
- ১০০ s
(মাঝারি) Zone A-তে ১টি, zone B-তে ৪টি target. DNS সমান ভাগ করে, cross-zone বন্ধ। মোট ১,০০০ req/s. Zone A-র target কত পাবে?
- ২০০ req/s
- ১২৫ req/s
- ৫০০ req/s
- ১,০০০ req/s
(মাঝারি) Rule /api/* → tg-api, আর default → tg-web. /api (শেষে / নেই) কোথায় যাবে?
- tg-web
- tg-api
- 404
- দুটিতেই
(সহজ) ৬ ঘণ্টার GPU training-এর জন্য সাধারণত কোন compute মানায়?
- FaaS function
- Static website hosting
- CDN edge
- GPU-সহ VM বা batch কাজ
(মাঝারি) FaaS-এর পুরো খরচ প্রতি মিলিয়ন request-এ $৫, একটি VM-এর মাসিক খরচ $২০০ (দুটিই অনুমিত)। Crossover মাসে কত request-এ?
- ১,০০০ মিলিয়ন
- ৪ মিলিয়ন
- ৪০ মিলিয়ন
- ২০০ মিলিয়ন
(মাঝারি) সেকেন্ডে ৮০০ request, প্রতিটি ০.২৫ s, প্রতি instance একসাথে একটি নেয়। গড় concurrency কত?
- ৮০০
- ২০০
- ৩,২০০
- ৪
(মাঝারি) ৩ জনের দল, ৪টি service, Kubernetes দক্ষতা নেই। কোনটি সাধারণত ভালো শুরু?
- Managed container service
- নিজে Kubernetes control plane চালানো
- সব service bare metal-এ
- প্রতিটি service আলাদা region-এ
মডিউল ৪ — Cloud storage আর database (২২টি প্রশ্ন)
সবচেয়ে ছোট সীমাই আসল সীমা; miss দিয়ে হিসাব; আর RPO-তে পৌঁছানোর সময় যোগ।
- পর্ব ২০ · Object, block আর file storage আর পর্ব ২১ · Object storage চালানো — IOPS ও throughput, durability, delete marker, presigned URL
- পর্ব ২২ · Managed database আর পর্ব ২৩ · Managed NoSQL, cache আর data warehouse — standby বনাম replica, connection, cache, warehouse
- পর্ব ২৪ · Backup আর disaster recovery — RPO, RTO, 3-2-1, চার DR কৌশল
(সহজ) এক VM-এর database-এর ডেটা disk হিসেবে সাধারণত কোন storage মানায়?
- Object storage
- CDN
- Block storage
- Glacier ধরনের archive
(মাঝারি) Volume-এর সীমা ৪,০০০ IOPS আর ২৫০ MB/s. প্রতিটি I/O ১৬ KB হলে সর্বোচ্চ throughput কত? (1 MB = 1,000 KB)
- ৬৪ MB/s
- ২৫০ MB/s
- ৪,০০০ MB/s
- ১৬ MB/s
(মাঝারি) একই সাথে একটি করে লেখা (queue depth ১), প্রতি লেখায় ৪ ms. Volume ১০,০০০ IOPS দিলেও সেকেন্ডে সর্বোচ্চ কত লেখা?
- ১০,০০০
- ৪,০০০
- ২,৫০০
- ২৫০
(সহজ) Durability আর availability-র পার্থক্য কোনটি?
- দুটি একই
- Durability ডেটা টিকে থাকা, availability এখন পাওয়া
- Durability মানে গতি
- Availability মানে ভুল মোছা ঠেকানো, durability মানে গতি
(কঠিন) $০.০২/GB-মাস জমা, GET প্রতি মিলিয়নে $০.৪০, egress $০.১০/GB (অনুমিত)। ২,০০০ GB ডেটা, মাসে ৫ কোটি GET, ৩০০ GB egress. মাসিক বিল কত?
- $৪০
- $৭০
- $৯০
- $৬০
(মাঝারি) Versioned bucket-এ version ID ছাড়া DELETE-এর পরে object ফেরাতে সবচেয়ে সরাসরি কী করবেন?
- Delete marker মুছে দেওয়া
- Bucket-এর versioning বন্ধ করা
- Support-এ চিঠি লেখা
- নতুন bucket বানানো
(মাঝারি) Cold ধাপ $০.০১/GB-মাস (অনুমিত), ন্যূনতম জমার সময় ৯০ দিন, মাস ৩০ দিনের। ১০০ GB রেখে ৩০ দিন পরে মুছলে মোট জমার খরচ কত?
- $১
- $৩
- $০.১০
- $৯০
(মাঝারি) Versioning কোন ঝুঁকি একা ঠেকাতে পারে না?
- ভুল করে একটি ফাইল overwrite হয়ে যাওয়া
- ভুল করে একটি DELETE
- পুরোনো ফাইল দেখতে চাওয়া
- চুরি যাওয়া admin credential-এ সব মোছা
(মাঝারি) Bucket private রেখে একজনকে একটি ফাইল ১০ মিনিটের জন্য দিতে কোনটি মানায়?
- Block public access বন্ধ করা
- ফাইলটি public ACL দেওয়া
- ১০ মিনিটের presigned URL
- নিজের access key পাঠানো
(সহজ) পড়ার চাপ ভাগ করতে managed database-এ কোনটি ব্যবহার করবেন?
- Multi-AZ standby
- Snapshot
- Parameter group
- Read replica
(মাঝারি) max_connections ৩০০, সংরক্ষিত ১০. ৪০টি app instance, প্রতিটির pool ১০, সবাই চালু হয়েই পুরো pool খোলে। ফল কী?
- প্রায় ১১০টি connection প্রত্যাখ্যাত
- সব connection চলবে
- প্রায় ১০০টি connection প্রত্যাখ্যাত
- Database নিজে সীমা বাড়াবে
(মাঝারি) Failover শেষে কিছু app শুধু restart করলে ঠিক হয়। কোন app-স্তরের ব্যবস্থা এটি কমায়?
- Read replica-র সংখ্যা বাড়িয়ে চাপ কমানো
- Timeout, retry আর নতুন connection খোলা
- Backup-এর সময় বদলানো
- Index যোগ করা
(কঠিন) PgBouncer-এর transaction pooling-এ কোনটি নিরাপদে চলে?
BEGIN … COMMIT-এর ভেতরের সাধারণ query- Session-স্তরের
SETধরে রাখা LISTENদিয়ে notification শোনা- Session advisory lock ধরে রাখা
(মাঝারি) NoSQL table-এ partition key হিসেবে কোনটি সবচেয়ে ভালো, যদি সব order customer_id ধরে পড়া হয়?
country, সবাই একই দেশেরcustomer_id, অনেক গ্রাহকে ছড়ানোstatus, মাত্র ৩টি মান- সবার জন্য একটি স্থির মান
(মাঝারি) Cache ১ ms, database ৪০ ms, hit ratio ৯৫%. Miss-এও আগে cache দেখা হয়। গড় latency কত?
- ২ ms
- ৩৯ ms
- ৪১ ms
- ৩ ms
(মাঝারি) মোট অনুরোধ একই। Hit ratio ৯৯.৫% থেকে ৯৯%-এ নামলে database-এর ভার কত হবে?
- ০.৫% বাড়বে
- অপরিবর্তিত
- দ্বিগুণ
- অর্ধেক
(মাঝারি) Columnar warehouse-এ পড়া byte-এ বিল। ২০ কলামের table থেকে দরকার ২টি কলাম। বিল কমাতে কোনটি কাজ করে?
SELECT *রেখেLIMIT 10দেওয়াSELECT *না লিখে শুধু দুটি কলাম চাওয়া- Query দুবার চালানো
- Row-ভিত্তিক index যোগ করা
(সহজ) RPO আর RTO কী মাপে?
- দুটিই ডেটার পরিমাণ
- RPO সেবার সময়, RTO ডেটার পরিমাণ
- দুটিই মাসের বিলের হিসাব
- RPO কত ডেটা গেল, RTO কত সময় গেল
(মাঝারি) প্রতি ৪ ঘণ্টায় backup, অন্য region-এ পৌঁছাতে ৩০ মিনিট। Region হারালে সবচেয়ে খারাপ ক্ষেত্রে কত সময়ের ডেটা যাবে?
- ৪ ঘণ্টা
- ৩০ মিনিট
- সাড়ে ৪ ঘণ্টা
- ২ ঘণ্টা
(মাঝারি) ২ TB ডেটা ২ Gbps পথে restore, অন্য ধাপে ৩০ মিনিট (1 GB = 10⁹ B). RTO প্রায় কত?
- প্রায় ১৬৩ মিনিট
- প্রায় ৪৭ মিনিট
- ১৩৩ মিনিট
- ৩০ মিনিট
(মাঝারি) RTO ছোট থেকে বড় ক্রমে DR কৌশল কোনটি?
- Backup and restore → pilot light → warm standby → active-active
- Pilot light → active-active → backup and restore → warm standby
- Active-active → warm standby → pilot light → backup and restore
- Warm standby → backup and restore → active-active → pilot light
(সহজ) 3-2-1 নিয়মে “1” কী বোঝায়?
- অন্তত একটি কপি অন্য জায়গায়
- একটি মাত্র backup যথেষ্ট
- দিনে একবার backup
- এক ঘণ্টার RPO
৪ · মডিউল ৫ ও ৬ — Networking, IAM আর governance (৪০টি প্রশ্ন)
মডিউল ৫ — Cloud networking (২০টি প্রশ্ন)
লম্বা prefix জেতে, NACL-এ ক্রম জেতে, আর stateless firewall-এ উত্তরের পথ লাগে।
- পর্ব ২৫ · VPC আর subnet আর পর্ব ২৬ · Route table, internet gateway আর NAT — CIDR, overlap, route table, NAT gateway, flow log
- পর্ব ২৭ · Security group আর network ACL আর পর্ব ২৮ · VPC জোড়া — security group, network ACL, peering, break-even
- পর্ব ২৯ · Cloud DNS আর পর্ব ৩০ · CDN, WAF আর DDoS সুরক্ষা — TTL, alias, failover-এর সময়, CDN, WAF
(সহজ) /22 subnet-এ provider ৫টি ঠিকানা কেটে রাখলে ব্যবহারযোগ্য ঠিকানা কত?
- ১,০২৪
- ১,০১৯
- ২৫১
- ৪,০৯১
(মাঝারি) কোন জোড়া CIDR overlap করে?
10.1.0.0/16আর10.2.0.0/1610.1.0.0/24আর10.1.1.0/2410.1.0.0/16আর10.1.200.0/21192.168.0.0/24আর192.168.2.0/24
(সহজ) নিচের কোন ঠিকানা RFC 1918-এর private পরিসরে পড়ে?
172.15.0.1192.169.1.111.0.0.1172.31.255.1
(কঠিন) Route table: 0.0.0.0/0 → nat, 10.0.0.0/16 → local, 10.0.8.0/21 → fw, 10.0.9.0/24 → vpn. 10.0.12.5-এর packet কোথায় যাবে?
- fw
- vpn
- local
- nat
(মাঝারি) Private subnet-এর জন্য NAT gateway কোথায় বসে?
- Private subnet-এর ভেতরে
- Public subnet-এ, private table-এর route তার দিকে
- Internet gateway-র বাইরে, provider-এর edge-এ
- Route table-এর বদলে
(মাঝারি) Public subnet-এর VM-এর public IP আছে। VM-এর OS-এর ভেতরে ip addr-এ সাধারণত কোন ঠিকানা দেখা যায়?
- শুধু private ঠিকানা
- শুধু public ঠিকানা
- দুটি ঠিকানাই ডিফল্টে
- কোনো ঠিকানা নেই
(মাঝারি) Flow log-এ একটি সারি ACCEPT. এর থেকে কী নিশ্চিত?
- অ্যাপ উত্তর দিয়েছে
- Client অবশ্যই সফল
- ঐ স্তর packet-টি আটকায়নি
- DNS ঠিক আছে
(সহজ) AWS-ধরনের security group সম্পর্কে কোনটি ঠিক?
- Stateless, ছোট নম্বর আগে
- Subnet-এ বসে, deny আছে
- প্রতি প্যাকেটে উত্তরের নিয়ম লাগে
- Stateful, শুধু allow নিয়ম
(মাঝারি) NACL inbound: ১০০ deny 198.51.100.0/24 সব port; ২০০ allow 0.0.0.0/0 TCP 443; * deny. 198.51.100.9 থেকে 443-এ packet এলে?
- Allow, কারণ ২০০ বেশি নির্দিষ্ট
- Allow, কারণ Allow সবসময় জেতে
- Deny, কারণ ১০০ নম্বর আগে মেলে
- SG-তে পাঠিয়ে সিদ্ধান্ত হবে
(মাঝারি) Web server-এ inbound 443 খোলা। Stateless NACL-এর outbound-এ কোন নিয়ম ছাড়া উত্তর ফিরবে না?
- TCP
443, একই port-এ - UDP
53, DNS-এর port - ICMP echo reply
- TCP
1024-65535
(মাঝারি) ৩ থেকে ২০টি app instance autoscale হয়। Database-এর inbound-এর উৎস কী হবে?
- App স্তরের security group
0.0.0.0/0- পুরো VPC-র CIDR
- প্রতিটি instance-এর IP হাতে
(মাঝারি) A–B আর B–C peering সক্রিয়, route ঠিক। A থেকে C-র private IP-তে কী হবে?
- B দিয়ে পৌঁছাবে
- পৌঁছাবে না
- NAT করে পৌঁছাবে
- প্রথমে ধীর, পরে ঠিক
(মাঝারি) ৩০টি VPC-কে full mesh peering-এ জুড়তে কতটি peering লাগবে?
- ৪৩৫
- ৮৭০
- ৩০
- ২৯
(কঠিন) VPN মাসে $৫০ + $০.১০/GB, dedicated link মাসে $৪৫০ + $০.০২/GB (অনুমিত)। Break-even কত GB?
- ৪,০০০ GB
- ৮,০০০ GB
- ৫,০০০ GB
- ৪০০ GB
(সহজ) DNS-এ “propagation” আসলে কী?
- সব DNS server-এ নতুন record push হওয়া
- Registrar-এর নবায়ন
- CDN-এর purge
- Resolver-এর cache-এর TTL শেষ হওয়া
(মাঝারি) example.com-এ load balancer-এর নাম বসাতে কোনটি মানায়?
- Apex-এ একটি CNAME record
- Provider-এর alias record
- MX record
- TXT record
(মাঝারি) Interval ৩০ s, failure threshold ২, TTL ৩০ s, client-এর নিজের cache নেই। সবচেয়ে খারাপ ক্ষেত্রে failover কত সময়?
- ৬০ s
- ৩০ s
- ৯০ s
- ১২০ s
(মাঝারি) CDN-এর hit ratio ৯৫% থেকে ৯৯% হলো, অনুরোধ একই। Origin-এর অনুরোধ কত হলো?
- আগের এক-পঞ্চমাংশ
- আগের চেয়ে ৪% কম
- আগের সমান, অপরিবর্তিত
- আগের চেয়ে ৪ গুণ
(মাঝারি) Cache-Control-এর no-cache আর no-store-এর পার্থক্য কোনটি?
- দুটি একই
no-cacheজমায় কিন্তু যাচাই করে,no-storeজমায়ই নাno-cacheএকদম জমায় না,no-storeএক দিন জমায়no-store১ দিন জমায়
(মাঝারি) নতুন WAF rule নিরাপদে চালু করার ক্রম কোনটি?
- প্রথম দিনেই block
- শুধু staging-এ, production-এ কখনো নয়
- Rule চালু না করে শুধু log পড়া
- আগে count মোডে দেখা, পরে block
মডিউল ৬ — Identity, নিরাপত্তা আর governance (২০টি প্রশ্ন)
Default deny, explicit Deny আর ছেদ; এনক্রিপশন অনুমতির বিকল্প নয়।
- পর্ব ৩১ · Cloud IAM আর পর্ব ৩২ · IAM policy evaluation — role-এর দুই দরজা, policy evaluation, boundary, cross-account, wildcard
- পর্ব ৩৩ · Secret আর KMS আর পর্ব ৩৪ · Cloud নিরাপত্তার ভিত্তি — envelope encryption, rotation, audit log, CSPM
- পর্ব ৩৫ · Governance — tag coverage, quota, guardrail
(সহজ) Login সফল, কিন্তু একটি resource-এ AccessDenied. সমস্যাটি কোন ধাপের?
- Authentication
- Authorization
- Encryption
- DNS
(মাঝারি) AWS-ধরনের role পরতে হলে কোন দুই দরজা পার হতে হয়?
- Bucket policy আর ACL
- Security group আর NACL
- Trust policy আর permission policy
- Password আর SSH key
(মাঝারি) Azure RBAC-এর role সম্পর্কে কোনটি ঠিক?
- Role assume করে temporary পরিচয় নিতে হয়
- Role শুধু VM-এ বসে
- Global Administrator আর সব RBAC role একই ব্যবস্থা
- Role একটি অনুমতির তালিকা, যা scope-এ কোনো principal-কে দেওয়া হয়
(কঠিন) VM-এ instance role আছে, কিন্তু env variable-এ পুরোনো access key রয়ে গেছে। AWS SDK-র সাধারণ ক্রমে অ্যাপ কোনটি ব্যবহার করবে?
- Env variable-এর key
- Instance role
- দুটি মিলিয়ে অনুমতি
- SDK error দেবে
(সহজ) Allow আর explicit Deny দুটিই একই action-এ মিললে (একই account) ফল কী?
- Allow
- যেটি পরে লেখা সেটি
- Deny
- যেটি বেশি নির্দিষ্ট সেটি
(মাঝারি) Identity policy s3:* Allow করে, permission boundary শুধু s3:GetObject Allow করে। Role s3:PutObject ডাকলে?
- Deny
- Allow
- Boundary-কে উপেক্ষা করে Allow
- Error ছাড়া অর্ধেক লেখা
(মাঝারি) Account A-র role, account B-র bucket পড়বে। B-র bucket policy role-কে Allow করে, কিন্তু role-এর identity policy-তে কিছু নেই। ফল কী?
- Allow
- Deny
- শুধু list চলবে
- A-র root হলে তবেই
(মাঝারি) Action-গুলো: s3:GetObject, s3:GetBucketPolicy, s3:PutObject, s3:ListBucket. s3:Get* কয়টির সাথে মেলে?
- ১টি
- ৩টি
- ৪টি
- ২টি
(কঠিন) iam:PassRole কেন আলাদা করে দেখা হয়?
- এটি user-এর password বদলে দেয়
- Service-কে বড় role দিয়ে ক্ষমতা বাড়ানো যায়
- এটি service চালু করে বিল বাড়ায়
- এটি শুধু root account-এর action
(মাঝারি) Envelope encryption-এ সংক্ষেপে কোনটি ঠিক?
- KEK দিয়ে সরাসরি সব ডেটা লক হয়
- Data key খোলা অবস্থায় ডেটার পাশে থাকে
- Data key ডেটা লক করে, KEK data key লক করে
- KEK ডেটার পাশে জমা থাকে
(মাঝারি) KMS key-এর automatic rotation-এর পরে পুরোনো ciphertext-এর কী হয়?
- বদলায় না, পুরোনো material-এ পড়া যায়
- নিজে থেকে নতুন key-তে re-encrypt হয়
- আর কখনো পড়া যায় না
- পুরোনো ciphertext মুছে যায়
(মাঝারি) ডেটার একমাত্র KMS key মুছে ফেললে কী হয়?
- ডেটা স্বয়ংক্রিয়ভাবে plain text হয়
- Provider-এর কাছে অন্য কপি থাকে
- পরের rotation-এ key ফেরে
- ডেটা কার্যত চিরতরে অপাঠ্য: crypto-erasure
(মাঝারি) ৪টি app instance, প্রতিটি নিজের data key ৬০০ সেকেন্ড cache করে। ৩০ দিনের মাসে KMS call কত?
- ১৭,২৮০
- ৪,৩২০
- ৪৩,২০০
- ২৫,৯২,০০০
(মাঝারি) App secret ১০ মিনিট cache করে, নতুন version ছড়াতে ১০ মিনিট। পুরোনো password বন্ধের আগে অন্তত কত অপেক্ষা?
- ১০ মিনিট, সাথে একটু বাড়তি
- ০ মিনিট, সাথে সাথে বন্ধ করা
- পুরো ১ দিন, নিয়ম অনুযায়ী
- ২০ মিনিট, সাথে একটু বাড়তি
(মাঝারি) Bucket provider-এর চাবিতে encrypted, আর policy সবাইকে পড়ার অনুমতি দিয়েছে। Internet থেকে কেউ ফাইলটি চাইলে?
- শুধু ciphertext পাবেন
403error পাবেন- স্বাভাবিকভাবে পড়তে পারবেন
- আগে চাবি চাওয়া হবে
(মাঝারি) Audit log নিয়ে কোন কথাটি ঠিক?
- সব data event ডিফল্টে বিনা খরচে থাকে
- Object পড়ার data event সাধারণত আলাদা করে চালু করতে হয়
- Log একই কাজের account-এ রাখাই নিরাপদ
- Log শুধু একটি region থেকে নিলেই চলে
(সহজ) CSPM আর threat detection-এর পার্থক্য কোনটি?
- দুটি একই কাজের দুই নাম
- CSPM শুধু মাসের cloud বিল দেখে
- Threat detection শুধু Dockerfile পড়ে, CSPM শুধু log
- CSPM ভুল সেটিং খোঁজে, threat detection চলমান আচরণ দেখে
(সহজ) মাসিক খরচ $৮,০০০, এর মধ্যে $৬,৮০০-তে team tag আছে। Unallocated কত?
- $১,২০০, অর্থাৎ ১৫%
- $৬,৮০০, অর্থাৎ ৮৫%
- $১,২০০, অর্থাৎ ১২%
- $৮০০, অর্থাৎ ১০%
(মাঝারি) vCPU quota বাড়ানো হয়েছে, তবু একটি zone-এ VM তৈরি ব্যর্থ। সবচেয়ে সম্ভাব্য কারণ?
- Quota কখনো কাজ করে না
- Quota শুধু অনুমতি, ক্ষমতা নয়
- VM-এ দরকারি tag নেই বলে
- SSH key যুক্ত করা হয়নি বলে
(মাঝারি) Organisation-এর SCP-তে একটি action Allow করা আছে, কিন্তু user-এর IAM policy-তে নেই। ফল কী?
- Allow
- শুধু root পারবে
- Deny
- Region ভেদে আলাদা
৫ · মডিউল ৭ — Container আর Docker (২০টি প্রশ্ন)
আসল run-এর আচরণ এখানে ফাঁদ: layer জমে, port খোলে না, আর exit code কারণ বলে না।
- পর্ব ৩৬ · Container কেন আর পর্ব ৩৭ · Docker image — kernel, writable layer, build cache, whiteout, ENTRYPOINT + CMD
- পর্ব ৩৮ · ভালো Dockerfile আর পর্ব ৩৯ · Container চালানো — build secret, signal, HEALTHCHECK, exit code, limit, network
- পর্ব ৪০ · Docker Compose আর পর্ব ৪১ · Registry আর supply chain — down -v, started ≠ ready, .env, digest, garbage collection, SBOM
(সহজ) একই Linux host-এ Alpine আর Debian container. কোন কথাটি ঠিক?
- দুটি একই host kernel ভাগ করে
- প্রতিটির নিজের kernel আছে
- দুটি হার্ডওয়্যার ভাগ করে না
- একসাথে চলতে পারে না
(মাঝারি) Container-এ /tmp/a.txt লেখা হলো। কোনটির পরে ফাইলটি থাকে?
docker rmdocker runদিয়ে একই image থেকে নতুন containerdocker restartdocker image rm-এর পরে নতুন pull
(মাঝারি) Image-এর tag আর digest সম্পর্কে কোনটি ঠিক?
- Tag বদলানো যায় না
- Digest সময়ের সাথে বদলায়
- দুটি একই জিনিস
- Tag সরতে পারে, digest সরে না
(মাঝারি) Dockerfile-এর ক্রম: FROM, COPY . ., RUN pip install, CMD. শুধু কোডের একটি লাইন বদলালে কী হবে?
- শুধু
CMDধাপটি আবার চলবে COPYআর তার নিচের ধাপ আবার চলবে- সব ধাপ cache থেকেই আসবে
FROMথেকে সব ধাপ আবার চলবে
(মাঝারি) এক RUN ৩০০ MB ফাইল বানাল, পরের RUN সেটি মুছল। Image-এর আকার?
- একটুও বাড়ে না
- ৬০০ MB বাড়ে
- প্রায় ৩০০ MB বাড়ে
- Build ব্যর্থ হয়
(মাঝারি) Image-এ ENTRYPOINT ["echo", "A"] আর CMD ["B"]. docker run --rm img কী ছাপবে?
BAecho A BA B
(সহজ) Dockerfile-এ EXPOSE 8000 আছে, docker run -d img চলল, -p নেই। Host থেকে 127.0.0.1:8000-এ?
- সংযোগ হবে না
- সংযোগ হবে
- Port আপনা-আপনি
80হবে - Build ব্যর্থ ছিল
(মাঝারি) ARG TOKEN আর --build-arg দিয়ে দেওয়া secret নিয়ে কোনটি ঠিক?
- ARG সবসময় নিরাপদ
docker history-তে দেখা যেতে পারে- Multi-stage হলেই সব সময় ঠিক হয়ে যায়
- RUN-এর পরে নিজে মুছে যায়
(মাঝারি) শেষ লাইন CMD python app.py | tee app.log, app-এ SIGTERM handler আছে। docker stop -t 5 দিলে সবচেয়ে সম্ভাব্য ফল?
- সাথে সাথে exit
0 - Container চলতেই থাকবে
- Exit
143, handler চলেছে - ৫ সেকেন্ড পরে SIGKILL, exit
137
(মাঝারি) শুধু Docker Engine-এ HEALTHCHECK ব্যর্থ হয়ে unhealthy দেখালে কী ঘটে?
- Container মুছে যায়
- Image নিজে আবার build হয়
- চলতে থাকে, শুধু অবস্থা জানায়
- Docker daemon থেমে যায়
(সহজ) Exit code 143 কী বোঝায়?
- SIGTERM
- SIGKILL
- SIGSEGV
- OOM নিশ্চিত
(মাঝারি) State.ExitCode 137, OOMKilled false. কোনটি বেশি সম্ভাব্য?
- Memory limit পার হয়েছে
- SIGKILL: stop timeout বা
docker kill - App সফলভাবে শেষ হয়েছে
- Image-এর ফাইল নষ্ট
(মাঝারি) --cpus আর --memory সীমা পার হওয়ার ফল কোনটি?
- দুটিতেই মৃত্যু
- দুটিতেই শুধু ধীরতা
- CPU-তে ধীরতা, memory-তে মৃত্যু
- CPU-তে মৃত্যু, memory-তে ধীরতা
(মাঝারি) Default bridge-এ wget http://other/ বলছে bad address. সবচেয়ে ভালো সমাধান?
--privilegedদেওয়া- User-defined network ব্যবহার
- Port
80publish করা - Image আবার build করা
(সহজ) docker compose down আর down -v-এর পার্থক্য কী?
-vnamed volume-ও মোছেdownimage মোছে-vশুধু আরও লেখা দেখায়- দুটি একই
(মাঝারি) depends_on: [db] শর্ত ছাড়া। db-র প্রস্তুত হতে ৩০ সেকেন্ড লাগে। কী নিশ্চিত?
- api চলবে db প্রস্তুত হলে
- api কখনো চালু হবে না
- db-র আগেই api চালু হবে
- শুধু শুরুর ক্রম, প্রস্তুতি নয়
(মাঝারি) .env-এ SECRET_X=abc, compose ফাইলের কোথাও SECRET_X নেই। Container-এ printenv SECRET_X?
- abc
- Error, compose চলবে না
- কিছু দেবে না
${SECRET_X}লেখা
(মাঝারি) Mutable registry-তে app:1.4-এ image A (digest dA), পরে একই tag-এ image B. কোনো cleanup হয়নি। app@dA pull করলে?
- Image B
- Error, tag বদলে গেছে
- দুটি মেশানো image
- Image A
(মাঝারি) Self-hosted registry-তে manifest মুছলেও disk কমেনি। কেন?
- Manifest মোছা যায় না
- Blob ভাগাভাগি, garbage collection লাগে
- Registry সব কপি অন্য দেশে পাঠিয়েছে
- Tag বদলাতে হবে
(মাঝারি) SBOM, signature আর provenance সংক্ষেপে কী বলে?
- কী আছে, কে সই করল, কীভাবে তৈরি
- তিনটিই image নিরাপদ বলে প্রমাণ করে
- SBOM চালানোর command দেয়
- Signature image ছোট করে
৬ · মডিউল ৮ — Kubernetes (৩০টি প্রশ্ন)
STATUS phase নয়, object মানে কার্যকর হওয়া নয়, আর round-এর দিক ঠিক রাখুন।
- পর্ব ৪২ · Kubernetes কেন আর পর্ব ৪৩ · Pod — control plane, etcd quorum, phase, readiness বনাম liveness, grace period
- পর্ব ৪৪ · Deployment আর পর্ব ৪৫ · Service আর cluster DNS — surge-এর round, আটকে থাকা rollout, undo, port, EndpointSlice
- পর্ব ৪৬ · Ingress আর Gateway API আর পর্ব ৪৭ · ConfigMap, Secret আর storage — controller, Prefix, ingress-nginx-এর অবসর, base64, ConfigMap, PV
- পর্ব ৪৮ · Scheduling আর resource আর পর্ব ৪৯ · Kubernetes নিরাপত্তা — request বনাম limit, QoS, HPA, RBAC, NetworkPolicy, token
- পর্ব ৫০ · Helm, Kustomize আর operator — Helm revision, validate-এর সীমা, CRD
(সহজ) Kubernetes-এ etcd-র সাথে সরাসরি কে কথা বলে?
- kubelet
- kube-proxy
- API server
- সব Pod
(মাঝারি) ৫ সদস্যের etcd-তে কয়টি নষ্ট হলেও লেখা চলবে?
- ২টি
- ১টি
- ৩টি
- ৪টি
(মাঝারি) Control plane-এর etcd quorum হারালে চলমান Pod-এর সাধারণত কী হয়?
- সব Pod সাথে সাথে মরে
- নতুন Deployment চলে
- etcd ডেটা মুছে দেয়
- চলতে থাকে, তবে নতুন লেখা থামে
(মাঝারি) kubectl get pods-এ STATUS CrashLoopBackOff. ঐ Pod-এর status.phase সাধারণত কী (restartPolicy Always)?
- Failed
- Running
- Pending
- CrashLoopBackOff
(মাঝারি) Liveness আর readiness ব্যর্থ হওয়ার ফল কোনটি?
- দুটিতেই restart
- দুটিতেই Pod মুছে যায়
- Liveness-এ restart, readiness-এ traffic বন্ধ
- Liveness-এ traffic বন্ধ, readiness-এ restart
(কঠিন) terminationGracePeriodSeconds: 40, preStop ৩০ s, SIGTERM-এর পরে app-এর লাগে ২০ s. কী ঘটবে?
- App পুরো ৪০ s পাবে
- App ১০ s পাবে, তারপর SIGKILL
- SIGTERM ছাড়াই সাথে সাথে SIGKILL
- Pod কখনো শেষ হবে না
(মাঝারি) replicas: 6, maxSurge: 25%, maxUnavailable: 25%. Rolling update-এ সর্বোচ্চ মোট আর সর্বনিম্ন available কত?
- ৮ আর ৫
- ৭ আর ৪
- ৮ আর ৪
- ৭.৫ আর ৪.৫
(মাঝারি) নতুন tag registry-তে নেই। maxUnavailable: 1, maxSurge: 1. Deployment-এ কী হবে?
- সব পুরোনো Pod সাথে সাথে মুছবে
- নিজে থেকে rollback হবে
- Registry-তে tag নিজে তৈরি হবে
- Rollout আটকাবে, পুরোনো Pod সেবা চালাবে
(কঠিন) Revision ১ ও ২-এর পরে kubectl rollout undo চালালে history-তে কী দেখা যায়?
- Revision ১ উধাও, সেটি এখন ৩
- ১ আর ২-ই থাকে, নম্বর একই
- ২ মুছে শুধু ১ থাকে
- History খালি হয়
(মাঝারি) Service-এ port: 80, targetPort: 8080. Cluster-এর ভেতর থেকে ClusterIP:80-এ গেলে Pod-এ কোন port-এ পৌঁছায়?
80- যেকোনো node port
4438080
(মাঝারি) ৩টি Ready Pod. একটি keep-alive সংযোগে ১০০টি HTTP অনুরোধ (iptables mode). সাধারণত কী হবে?
- তিন Pod-এ প্রায় সমান ভাগ
- Pod-গুলো পালা করে দেখবে
- সবগুলো একটি Pod-এ যাবে
- ১০০টিই ব্যর্থ
(মাঝারি) EndpointSlice-এ PORTS আর ENDPOINTS <unset>, DNS ঠিকানা দিচ্ছে, curl ব্যর্থ। সবচেয়ে সম্ভাব্য কারণ?
- CoreDNS বন্ধ হয়ে গেছে
- Selector কোনো Pod-এ মিলছে না
- etcd-র quorum হারিয়েছে
- Certificate মেয়াদোত্তীর্ণ
(সহজ) বৈধ Ingress object আছে, কিন্তু কোনো ingress controller নেই। কী হবে?
- apply-তেই validation error আসবে
- kube-proxy নিজে route করবে
- Object জমা হবে, traffic বদলাবে না
- পুরোনো Service মুছে যাবে
(মাঝারি) path: /foo, pathType: Prefix নিচের কোনটিতে মেলে না?
/foo/foobar/foo//foo/bar
(মাঝারি) ingress-nginx প্রকল্প সম্পর্কে এখনকার সঠিক কথা কোনটি?
- এটি মার্চ ২০২৬-এ অবসরে গেছে
- Kubernetes-এর ভেতরে বিনা controller-এ চলে
- F5/NGINX-এর প্রকল্প আর এটি এক
- Gateway API এটিরই আরেক নাম
(সহজ) Secret-এর মান ZGVtbw==. কোনটি সত্য?
- এটি AES দিয়ে encrypted
- এটি ফেরানো যায় না এমন one-way hash
- Pod ছাড়া পড়া অসম্ভব
- এটি base64, চাবি ছাড়াই ফেরানো যায়
(মাঝারি) ConfigMap বদলানো হলো। env, পুরো volume আর subPath, তিনভাবে ব্যবহৃত; restart হয়নি। নতুন মান কোথায় দেখা যাবে?
- শুধু পুরো volume-এর ফাইলে
- তিনটি জায়গাতেই
- শুধু env variable-এ
- কোথাও নয়, restart লাগবে
(মাঝারি) Retain policy-র PV-র PVC মোছা হলো। ঠিক পরে কী?
- Disk মুছে যায়
- PV Available, নতুন PVC জুড়ে নেবে
- Pod-এর ডেটা RAM-এ চলে যায়
- PV Released, ডেটা থাকে, নিজে জোড়ে না
(মাঝারি) Container-এর env যে ConfigMap থেকে আসে, সেটি নেই। Status-এ কী দেখার কথা?
OOMKilledCreateContainerConfigErrorCompletedImagePullBackOff
(সহজ) Scheduler Pod বসানোর সময় কী যোগ করে দেখে?
- Container-গুলোর limit
- Node-এর গত ঘণ্টার CPU ব্যবহার
- Container-গুলোর request
- Image-এর আকার মাত্র
(মাঝারি) Container-এ requests: {cpu: 100m, memory: 64Mi}, limits: {cpu: 100m, memory: 64Mi}. QoS class?
- Burstable
- Guaranteed
- BestEffort
- Critical
(মাঝারি) HPA লক্ষ্য ৬০%, এখন ৩ Pod, গড় ব্যবহার ১২০%. Tolerance বাদে সূত্রে পরের Pod-সংখ্যা?
- ৪
- ২
- ৬
- ৯
(মাঝারি) Pod Pending, event-এ untolerated taint. কোনটি সরাসরি কারণ?
- Pod-এ মানানসই toleration নেই
- Image registry-তে নেই
- Liveness probe ব্যর্থ হচ্ছে
- সামনের Service তৈরি হয়নি
(মাঝারি) Error from server (Forbidden), User "dev" cannot list. কোনটি ঠিক?
- পরিচয় মেলেনি
- API server বন্ধ
- Namespace নেই
- পরিচয় ঠিক, অনুমতি নেই
(মাঝারি) ClusterRole view-কে namespace shop-এর একটি RoleBinding দিয়ে দেওয়া হলো। Subject কোথায় Pod পড়তে পারবে?
- শুধু
shop-এ - সব namespace-এ
- কোথাও নয়
- শুধু
kube-system-এ
(মাঝারি) Default-deny NetworkPolicy kubectl get netpol-এ দেখাচ্ছে, তবু নিষিদ্ধ Pod সংযোগ করছে। সবচেয়ে সম্ভাব্য কারণ?
- NetworkPolicy বৈধ API object নয়
- Base64 দিয়ে লেখা হয়নি
- CNI plugin NetworkPolicy প্রয়োগ করে না
- Pod restart করলেই সব ঠিক
(কঠিন) একটি local cluster-এ projected token-এর JWT-তে warnafter 3607 আর প্রায় ১ বছরের মেয়াদ দেখা গেল। সবচেয়ে ভালো সিদ্ধান্ত?
- Token চিরকাল চলবে
- নিজের cluster-এ মাপা, আর অনুমতি ছোট রাখা
- এটি নিশ্চিত cluster-এর ত্রুটি
- Token base64 নয় বলে ফেলে দেওয়া
(মাঝারি) Helm-এ revision ৩-এর পরে helm rollback app 2 সফল। এখন revision কত?
- ২
- ৩
- ১
- ৪
(কঠিন) এক ভুল field-সহ chart-এ helm template --validate exit 0 দিল (Helm ৩.১৯, একটি আসল run). ঐ run-এ ভুলটি কোনটি ধরে?
helm templateআবার চালানোkubectl apply --dry-run=serverhelm listgrepদিয়ে YAML পড়া
(মাঝারি) CRD apply হলো, custom resource-ও তৈরি, কিন্তু controller নেই। কী ঘটবে?
- API server নিজে কাজ করবে
- Apply ব্যর্থ হবে
- Object জমা থাকবে, কাজ হবে না
- Pod আপনা-আপনি বসবে
নিজে যাচাই করুন — container, Kubernetes আর IaC-এর হিসাব
// Re-check the container, Kubernetes and Terraform answers.
const p = (label, v) => console.log(label.padEnd(30), v);
const limits = (r, pct) => [r + Math.ceil(r * pct), r - Math.floor(r * pct)];
p("Rolling 6 replicas, 25%", limits(6, 0.25).join(" / "));
p("Rolling 4 replicas, 25%", limits(4, 0.25).join(" / "));
p("Exit code SIGTERM, SIGKILL", (128 + 15) + ", " + (128 + 9));
p("etcd 5: tolerated failures", 5 - (Math.floor(5 / 2) + 1));
p("Grace left for the app (s)", 40 - 30);
p("HPA next replicas", Math.ceil(3 * 120 / 60));
// count: a resource's address is its index, so a removal shifts the rest.
function countPlan(oldL, newL) {
let add = 0, del = 0;
for (let i = 0; i < Math.max(oldL.length, newL.length); i++) {
if (oldL[i] === newL[i]) continue;
if (oldL[i] !== undefined) del++;
if (newL[i] !== undefined) add++;
}
return add + " to add, " + del + " to destroy";
}
function forEachPlan(oldL, newL) {
const add = newL.filter(k => !oldL.includes(k)).length;
const del = oldL.filter(k => !newL.includes(k)).length;
return add + " to add, " + del + " to destroy";
}
const before = ["a", "b", "c", "d"], after = ["a", "c", "d"];
p("count, remove b", countPlan(before, after));
p("for_each, remove b", forEachPlan(before, after));
p("Ansible batch failure %", 100 * 2 / 4);আউটপুট (নির্ধারিত, প্রতিবার একই):
Rolling 6 replicas, 25% 8 / 5
Rolling 4 replicas, 25% 5 / 3
Exit code SIGTERM, SIGKILL 143, 137
etcd 5: tolerated failures 2
Grace left for the app (s) 10
HPA next replicas 6
count, remove b 2 to add, 3 to destroy
for_each, remove b 0 to add, 1 to destroy
Ansible batch failure % 50
প্রথম দুই লাইনে surge উপরে আর unavailable নিচে গোল। count-এ ঠিকানা সূচক, তাই একটি সরালে পরেরগুলো replace হয়; for_each-এ শুধু একটি destroy.
৭ · মডিউল ৯ — Infrastructure as Code (২০টি প্রশ্ন)
Plan পড়া শিখুন: replace, drift, count-এর সরে যাওয়া আর প্রতিটি যাচাইয়ের সীমা।
- পর্ব ৫১ · Infrastructure as Code আর পর্ব ৫২ · Terraform-এর মৌলিক — idempotency, plan, drift, constraint, lock file, count বনাম for_each
- পর্ব ৫৩ · Terraform state আর পর্ব ৫৪ · Terraform module — state, moved, lock, import, module
- পর্ব ৫৫ · IaC-র পরীক্ষা আর পর্ব ৫৬ · Configuration management — check, exit code, test, Ansible, immutable
(সহজ) একটি script প্রতিবার চালালে একই লাইন ফাইলে আরও একবার যোগ হয়। কোন গুণ নেই?
- Elasticity
- Availability
- Encryption
- Idempotency
(মাঝারি) Plan: 2 to add, 0 to change, 2 to destroy. সবচেয়ে সতর্ক ব্যাখ্যা কোনটি?
- মোট চারটি নতুন resource যোগ হবে
- কিছুই মুছবে না
- দুটি replace হতে পারে; পড়ে দেখতে হবে
- Plan ভুল, আবার চালাতে হবে
(মাঝারি) local_file-এর content-এ timestamp() লেখা হলো। Code না বদলে দ্বিতীয় plan-এ কী আসে (একটি আসল run)?
No changes, কারণ code বদলায়নিmust be replaced, ১টি add ও ১টি destroy- Syntax error, function-টি অবৈধ
- State মুছে গিয়ে সব নতুন হয়
(মাঝারি) Code-এ replicas ১, কেউ হাতে ৩ করেছেন। Apply-এর আগে সবচেয়ে ঠিক কাজ কী?
- কারণ জেনে ফিরিয়ে দেওয়া, না code-এ গ্রহণ
- না দেখে apply করে code-এর মান ফেরানো
- State মুছে দেওয়া
- Terraform বাদ দেওয়া
(সহজ) Constraint ~> 1.2.0 কোন version মানে?
1.3.01.2.92.0.01.1.9
(মাঝারি) Git-এ কী রাখা উচিত?
.terraform.lock.hclterraform.tfstate- Saved plan ফাইল
.terraformফোল্ডার
(কঠিন) count-এ list ["a","b","c","d"], নাম names[count.index], নাম বদলালে replace হয়। "b" মুছলে plan-এর শেষ লাইন কী?
0 to add, 0 to change, 1 to destroy3 to add, 0 to change, 3 to destroy2 to add, 0 to change, 3 to destroy1 to add, 0 to change, 1 to destroy
(মাঝারি) Sensitive মান plan-এ (sensitive value) দেখালে state ফাইল সম্পর্কে কোনটি ঠিক?
- মান সবসময় encrypted থাকে
- State-এ মান থাকে না
- Git-এ রাখলে নিরাপদ
- মান সাধারণ লেখায় থাকতে পারে
(মাঝারি) Resource-এর নাম main থেকে primary করতে destroy ঠেকাবে কোনটি?
removedblockimportblockmovedblockdepends_on
(মাঝারি) CI-তে Error acquiring the state lock. সবচেয়ে ভালো প্রথম কাজ?
- সাথে সাথে
force-unlockচালানো -lock=falseদেওয়া- State ফাইল মোছা
- Lock Info পড়ে দেখা কাজ চলছে কি না
(কঠিন) একটি Secret import-এর পরে plan: 1 to import, 0 to add, 1 to change. (একটি আসল run) এর সম্ভাব্য অর্থ?
- Provider-এর নিজের argument মিলছে না
- Import ব্যর্থ, আবার চালাতে হবে
- Secret পরের apply-এ মুছে যাবে
- State ফাইল নষ্ট হয়ে গেছে
(মাঝারি) .terraform.lock.hcl সম্পর্কে কোনটি ঠিক?
- এটি module-এরও ঠিক version ধরে
- এটি provider ধরে, module নয়
- এতে state থাকে
- এটি
terraform.tfvars-এর বিকল্প
(মাঝারি) dev আর prod-এর credential আলাদা, dev-এর CI কখনো prod ছোঁবে না। কোনটি মানায়?
- আলাদা root ডিরেক্টরি ও backend
- একই workspace
terraform.tfvars-এ দুটি credential- একটি state-এ দুই environment
(সহজ) Terraform-এর check block-এর assert ব্যর্থ হলে?
- Apply থেমে সব উল্টে যায়
- Warning দেখায়, run শেষ হয়
- State মুছে যায়
- Resource replace হয়
(মাঝারি) terraform plan -detailed-exitcode কোন মান দিলে “বদল বাকি”?
0132
(মাঝারি) terraform test -filter-এ path ভুল: 0 passed, 0 failed, exit 0 (একটি আসল run). CI-এর ঝুঁকি কী?
- Exit
0মানে সব test চলেছে - CI লাল হয়ে থেমে যাবে
- সবুজ, অথচ কোনো পরীক্ষাই হয়নি
- Test চালালেই state মুছে যাবে
(মাঝারি) Apply-এর পরে postcondition ব্যর্থ হলে resource-এর কী হয়?
- Resource নিজে থেকে মুছে যায়
- Warning মাত্র, run সফল
- Plan ধাপেই run আটকে যায়
- Resource থাকে, run error-এ থামে
(মাঝারি) notify থাকা task-এর ফল এই run-এ ok. Handler?
- সবসময় চলবে
- দুবার চলবে
- চলবে না
- Playbook ব্যর্থ হবে
(কঠিন) ১২ host-এ serial: 4, max_fail_percentage: 25. প্রথম batch-এ ২টি ব্যর্থ। কী হবে?
- পরের batch-এ যাবে
- Rollout থেমে যাবে
- ব্যর্থ host বাদ দিয়ে সব host-এ একসাথে চলবে
- Ansible host দুটি নিজে সারাবে
(মাঝারি) Immutable infrastructure-এর মূল ধারা কোনটি?
- Packer-এ image, server বদলে যায়; state বাইরে
- চলমান server-এ রোজ SSH করে patch
- সব server হাতে snowflake
- State VM-এর local disk-এ
৮ · মডিউল ১০ — CI/CD, GitOps আর platform (২০টি প্রশ্ন)
Critical path, digest আর ছোট নমুনা: গতি, পরিচয় আর আস্থা, এই তিন প্রশ্ন।
- পর্ব ৫৭ · CI/CD pipeline-এর নকশা আর পর্ব ৫৮ · Artifact আর promotion — critical path, cache, flaky test, promotion, imageID
- পর্ব ৫৯ · Deployment strategy আর পর্ব ৬০ · GitOps — canary, expand-contract, GitOps, suspend
- পর্ব ৬১ · DevSecOps আর পর্ব ৬২ · Platform engineering — DAST, SHA pin, OIDC, golden path
(মাঝারি) মোট কাজ ৮০ মিনিট, critical path ৩০ মিনিট, ৬টি runner, queue নেই। সবচেয়ে কম সময় কত?
- ১৩.৩ মিনিট
- ৩০ মিনিট
- ৮০ মিনিট
- ৫ মিনিট
(মাঝারি) ৪০ মিনিটের suite, প্রতিটি runner-এ setup ২ মিনিট, ৪টি shard, ভাগ নিখুঁত। সময় আর মোট runner-মিনিট কত?
- ১০ মিনিট, ৪০ runner-মিনিট
- ১২ মিনিট, ৪০ runner-মিনিট
- ১২ মিনিট, ৪৮ runner-মিনিট
- ৪২ মিনিট, ৪৮ runner-মিনিট
(কঠিন) Cache ছাড়া install ৫ মিনিট, hit-এ ১ মিনিট, miss-এ ৫.৫ মিনিট। Hit ratio কত হলে লাভ-ক্ষতি সমান?
- প্রায় ১১%
- প্রায় ৯০%
- প্রায় ৫০%
- প্রায় ২০%
(মাঝারি) ৫০০টি test, প্রতিটি ০.১% সম্ভাবনায় মিথ্যা ফেল (স্বাধীন)। কত শতাংশ run অকারণে লাল?
- প্রায় ০.১%
- প্রায় ৫০%
- প্রায় ৮৬%
- প্রায় ৩৯%
(মাঝারি) একই commit থেকে দুবার build করে আলাদা digest এল। কী বোঝায়?
- Byte আলাদা, যদিও source এক
- Registry নষ্ট
- Commit বদলে গেছে
- Digest র্যান্ডম সংখ্যা
(সহজ) Staging থেকে prod-এ promotion-এর সঠিক অর্থ কোনটি?
- prod-এর জন্য আবার build
- একই digest-এ নতুন tag আর গেট পার হওয়া
- Staging মুছে দেওয়া
- Image-এ env ফাইল COPY করা
(মাঝারি) চলমান Pod-এ আসলে কোন image, তার সবচেয়ে নির্ভরযোগ্য প্রমাণ?
- Deployment-এর
image: web:prod - Git-এর শেষ commit
- Pod status-এর
imageID - Slack-এর বার্তা
(মাঝারি) ৪ stable আর ১ canary Pod একই Service-এর পেছনে। HPA stable ১৪ করল। Canary-র ভাগ প্রায়?
- ২০%
- ১০%
- ১%
- ৬.৭%
(মাঝারি) Canary-তে ৩,০০০ অনুরোধে ০টি error. Rule of three অনুযায়ী সবচেয়ে সৎ কথা?
- আসল হার প্রায় ০.১% পর্যন্ত হতে পারে
- হার নিশ্চিত শূন্য, আর দেখার দরকার নেই
- হার নিশ্চিত ৩%
- নমুনা কখনো কিছু বলে না
(মাঝারি) Database-এর column নাম বদলের নিরাপদ ক্রম কোনটি?
- আগে পুরোনো column মোছা
- Expand → migrate → contract
- Contract → migrate → expand
- এক deploy-এ সব
(মাঝারি) Blue-green-এ Service-এর selector বদলালে চলমান keep-alive সংযোগ?
- সাথে সাথে green-এ সরে
- সব ব্যবহারকারীর session মোছে
- পুরোনো Pod-এই থেকে যেতে পারে
- Blue মুছে যায়
(সহজ) নিচের কোনটি OpenGitOps-এর চার নীতির একটি?
- Kubernetes-only
- Manual approval always
- Push from CI
- Continuously reconciled
(মাঝারি) Argo CD-র auto-sync চলছে, ঘটনার মধ্যে হাতে patch দিতে হবে। আগে কী?
- কিছু না থামিয়ে হাতে patch দেওয়া
- Argo CD মুছে দেওয়া
- Sync suspend করা, পরে Git ঠিক করা
- পুরো cluster reboot করা
(মাঝারি) Pull-ভিত্তিক GitOps-এ সবচেয়ে দামি চাবি হয়ে ওঠে কোনটি?
- Git-এর
main-এ লেখার অধিকার - CI server-এর cluster credential
- Registry-র read token
- একটি Pod-এর IP ঠিকানা
(সহজ) কোন পরীক্ষা চলন্ত web app-এ বাইরে থেকে অনুরোধ পাঠায়?
- SAST
- SCA
- Secret scan
- DAST
(মাঝারি) GitHub Actions-এ uses: org/tool@v2-এর চেয়ে নিরাপদ কী?
@latest-এ বদলানো- পুরো commit SHA-তে pin করা
@mainbranch-এ বদলানোcontinue-on-error: trueদেওয়া
(মাঝারি) OIDC trust policy-তে aud মিলছে, sub-এর শর্ত নেই। বিপদ কী?
- অন্য repository-র job-ও role পেতে পারে
- Token কখনো issue হবে না
- Job অনেক ধীর হয়ে যাবে
- Key-র মেয়াদ কখনো শেষ হবে না
(মাঝারি) “Platform as a product”-এর অর্থ কোনটি?
- Platform বিক্রি করা
- সব দলে এক tool বাধ্য করা
- Service-এর মালিকানা নিয়ে নেওয়া
- ডেভেলপাররা গ্রাহক, ব্যবহার দেখে চালানো
(মাঝারি) একটি দলের প্রয়োজন golden path-এ ধরে না। সবচেয়ে ভালো ব্যবস্থা?
- দলকে নিষেধ করা
- Escape hatch, guardrail বহাল
- Guardrail তুলে নেওয়া
- Platform বন্ধ করা
(মাঝারি) ১০ জনের দলে সাধারণত platform নিয়ে কোনটি ঠিক?
- ১০ জনের platform দল লাগে
- Kubernetes-এর ওপর portal বাধ্যতামূলক
- আলাদা দল লাগে না, পাতলা platform চলে
- Platform নিষিদ্ধ
৯ · মডিউল ১১ — Observability আর SRE (২০টি প্রশ্ন)
Counter-এ rate আগে, label-এ cardinality, আর burn rate-এর হর।
- পর্ব ৬৩ · Metric আর Prometheus আর পর্ব ৬৪ · Centralized logging — counter, histogram, high cardinality, log-এর আকার
- পর্ব ৬৫ · Distributed tracing আর OpenTelemetry আর পর্ব ৬৬ · Alerting আর SLO — traceparent, self time, sampling, SLO, burn rate
- পর্ব ৬৭ · Incident management আর পর্ব ৬৮ · Reliability প্রকৌশল — incident, MTTR বনাম median, Little-এর সূত্র, capacity
(সহজ) Counter-এ সঠিক ক্রম কোনটি?
- আগে
sum, পরেrate - শুধু
avg - শুধু কাঁচা মান
- আগে
rate, পরেsum
(মাঝারি) Counter-এর sample: ২০০, ২৬০, ৩০, ৯০. Extrapolation বাদে মোট বৃদ্ধি কত?
- ১৫০
- −১১০
- ৯০
- ২৬০
(মাঝারি) Bucket: le="0.1" = ৬০, le="0.5" = ১০০, +Inf = ১০০. Linear interpolation-এ p70 কত?
- ০.৩ s
- ০.১ s
- ০.২ s
- ০.৫ s
(মাঝারি) Label হিসেবে user_id কেন ভুল?
user_idনামে label বসে না- Series হলো label-এর গুণফল; high cardinality
- Prometheus সংখ্যা রাখতে পারে না
- Counter-এ label চলে না
(সহজ) Container-এর app কোথায় log লিখবে (Twelve-Factor)?
- stdout-এ
/var/log-এর ফাইলে- Git-এ
- Database-এর একটি table-এ
(মাঝারি) ১০০ request/s, প্রতি request-এ ৫টি ৪০০ byte-এর line. ৩০ দিনে কত? (1 GB = 10⁹ byte)
- প্রায় ১৭ GB
- প্রায় ১০৪ GB
- প্রায় ৫.২ TB
- প্রায় ৫১৮ GB
(মাঝারি) আসে ৮০০ line/s, store নেয় ১,২০০ line/s, backlog ১,২০,০০০ line. শেষ হতে কত সময়?
- ১০০ s
- ৩০০ s
- ১৫০ s
- ৬০ s
(মাঝারি) traceparent এক hop থেকে পরের hop-এ গেলে কোনটি স্থির থাকে?
- parent-id
- Span-এর সময়
- trace-id
- Host নাম
(মাঝারি) Parent ৮০০ ms, তার একমাত্র child ৭৯০ ms, যার একমাত্র child ৭৮০ ms. সময় কোথায় গেছে?
- সবচেয়ে ভেতরের child-এ
- বাইরের parent span-এ
- মাঝের child-এ
- তিনটিতে সমান ভাগে
(মাঝারি) ১০% head sampling-এ দিনে ৩০টি দুর্লভ error ঘটে। Error trace?
- সব ৩০টি ধরা পড়ে
- গড়ে ৩টি ধরা পড়ে
- নিশ্চিতভাবে ০টি
- ৩০০টি ধরা পড়ে
(মাঝারি) SLO ৯৯.৯৫%, error rate ০.৫%. Burn rate কত?
- ০.৫
- ১০০
- ৫
- ১০
(মাঝারি) ৩০ দিনের SLO. Burn rate ৩ টানা ২৪ ঘণ্টা চললে budget-এর কত অংশ?
- ৩%
- ৭২%
- ১০%
- ৩.৩%
(সহজ) SLI, SLO, SLA-র মধ্যে চুক্তিগত ফল কোনটির?
- SLA
- SLI
- SLO
- তিনটিরই
(মাঝারি) কোন alert-এ রাতে page করা উচিত?
- একটি node-এর CPU ৮০% ছুঁয়েছে
- একটি disk ৪০% ভরে গেছে
- নতুন একটি log লাইন এসেছে
- ব্যবহারকারীর error budget দ্রুত পুড়ছে
(মাঝারি) Sev-1 চলছে, ৮ মিনিট আগে release, schema বদল নেই। প্রথম ভালো পদক্ষেপ?
- কারণ পুরো বুঝে নেওয়া
- Postmortem লেখা
- Rollback করে ক্ষতি থামানো
- নতুন feature ছাড়া
(মাঝারি) TTR (মিনিট): ১৫, ২০, ২৫, ৩০, ৩১০. MTTR আর median?
- ২৫ আর ৮০
- ৮০ আর ২৫
- ৮০ আর ৮০
- ২৫ আর ২৫
(সহজ) Blameless postmortem-এর অর্থ কোনটি?
- ব্যক্তি নয়, ব্যবস্থার ফাঁক খোঁজা
- কারও কোনো দায়িত্ব নেই
- কিছু লেখার দরকার নেই
- শুধু management পড়ে
(মাঝারি) λ = ৩০০ req/s, গড় response ১৫০ ms. L কত?
- ৪৫০
- ৪৫
- ২,০০০
- ১৫০
(মাঝারি) M/M/1: S = ২০ ms, ρ = ০.৮. গড় মোট সময়?
- ২৫ ms
- ৩৬ ms
- ২০ ms
- ১০০ ms
(কঠিন) চাপ ৪,০০০ req/s, instance-এর নিরাপদ ক্ষমতা ২০০ req/s, ৪টি zone. একটি zone হারিয়েও চলতে হলে সমান ভাগে মোট কত?
- ২০
- ২৭
- ২৮
- ৮০
১০ · মডিউল ১২ ও ১৩ — Serverless, খরচ আর architecture (৩০টি প্রশ্ন)
মডিউল ১২ — Serverless আর event-driven cloud (১৪টি প্রশ্ন)
Duplicate আসবেই; আর সীমায় কী হবে, তা ঠিক করে trigger-এর ধরন।
- পর্ব ৬৯ · Serverless function — init, GB-second, concurrency, recursive loop
- পর্ব ৭০ · Cloud-এর queue, event bus আর workflow — topic ও queue, visibility timeout, backlog, saga
- পর্ব ৭১ · Serverless architecture — race, idempotency, token bucket, batch
(সহজ) Function-এর handler-এর বাইরে লেখা client তৈরি কখন চলে?
- প্রতিটি call শুরু হওয়ার আগে
- শুধু deploy করার সময়ে
- নতুন environment-এর init-এ
- কখনোই চলে না
(মাঝারি) ২ GB memory, ০.২৫ s, মাসে ১ কোটি call, GB-second $০.০০০০২ (অনুমিত)। Compute বিল?
- $৫০
- $২০০
- $১০
- $১০০
(মাঝারি) Reserved আর provisioned concurrency কোনটি কী দেয়?
- Reserved জায়গা ও ছাদ, provisioned তৈরি environment
- দুটিই শুধু বিল কমায়
- Reserved cold start শূন্য করে, provisioned ছাদ দেয়
- Provisioned ছাদ বসায়
(মাঝারি) Uploads bucket-এ ফাইল এলে function চলে, আর সে একই bucket-এ ফল লেখে। ঝুঁকি কী?
- Function কখনো চলবে না
- Recursive loop-এ বিল লাফায়
- ফাইল public হবে
- Cold start শূন্য হবে
(মাঝারি) Queue থেকে poll হওয়া function concurrency-র ছাদে। বাড়তি বার্তা?
- Queue-তেই থাকে, পরে ধীরে চলে
- বার্তা সাথে সাথে হারায়
- HTTP
429ফেরত - Function নিজে মুছে যায়
(মাঝারি) একটি ঘটনা তিনটি স্বাধীন service-এ যাবে, প্রত্যেকে নিজ গতিতে। নকশা কোনটি?
- একটি queue, তিন consumer
- Topic, প্রতি service-এর সামনে queue
- সরাসরি তিনটি HTTP call
- তিনজনের database poll করা
(মাঝারি) Queue থেকে receive করলেই বার্তার কী হয়?
- মুছে যায়
- অন্য queue-তে যায়
- বার্তা encrypted হয়
- মোছে না, কিছু সময় লুকায়
(মাঝারি) Visibility timeout ২০ s, কাজে লাগে ৩৫ s, আরেকটি worker খালি। কী ঘটবে?
- কাজ ২০ s-এ থেমে যায়, বার্তা হারায়
- বার্তা DLQ-তে যায়
- ২০ s-এ বার্তা ফেরে, কাজ দুবার হতে পারে
- কিছু হয় না
(কঠিন) ৬,০০০ বার্তা জমে, প্রতিটি ০.২ s, লক্ষ্য ৩০ s-এর বেশি অপেক্ষা নয়। Backlog per worker ধরে কত worker?
- ১৫০
- ২০০
- ৩০
- ৪০
(মাঝারি) Saga: stock রাখা, টাকা কাটা সফল; courier চূড়ান্তভাবে ব্যর্থ। সঠিক compensation?
- এক database rollback-এ সব ফেরানো
- আগে refund, পরে stock ছাড়া
- কিছু না করে অপেক্ষা করা
- আগে stock ছাড়া, refund পরে
(মাঝারি) Handler আগে পড়ে দেখে event id আছে কি না, না থাকলে লেখে। Duplicate কখন ঢোকে?
- Function ধীর হলে কখনোই নয়
- Database খালি হলে
- দুটি copy প্রায় একই মুহূর্তে এলে
- Event id লম্বা হলে
(মাঝারি) Idempotency key আগে লিখে, পরে টাকা জমার আগে crash. Retry-তে কী হয়?
- Key পাওয়া যায়, তাই কাজটি বাদ পড়ে
- টাকা নিশ্চিতভাবে দুবার জমা হয়
- সব নিজে থেকে ঠিক হয়ে যায়
- Crash-এ key মুছে গিয়ে কাজ আবার চলে
(কঠিন) Token bucket: rate ৫০/s, burst ১০০, বালতি ভরা। এক সেকেন্ডে ৩০০ request. প্রায় কতগুলো 429?
- ২০০
- ২৫০
- ০
- ১৫০
(মাঝারি) Batch-এ ১০টির একটি বার্তা নষ্ট। কী করা ভালো?
- পুরো batch ব্যর্থ করে আবার চালানো
- শুধু ব্যর্থ বার্তার পরিচয় ফেরত, সাথে DLQ
- নষ্ট বার্তা চুপচাপ মোছা
- Timeout বাড়িয়ে আবার চেষ্টা করা
মডিউল ১৩ — FinOps, architecture আর ক্যাপস্টোন (১৬টি প্রশ্ন)
Break-even, unit cost আর migration-এর সময়: মোট নয়, অনুপাত দেখুন।
- পর্ব ৭২ · Cloud-এর বিল আর পর্ব ৭৩ · FinOps — commitment, অলস disk, spot, FinOps, showback
- পর্ব ৭৪ · Well-Architected আর পর্ব ৭৫ · Cloud migration — ছয় স্তম্ভ, correlated failure, replatform, cutover
- পর্ব ৭৬ · ক্যাপস্টোন — burn rate, readiness-এর সীমা, drift
(মাঝারি) Commitment-এ ৩৫% ছাড়, পুরো সময়ের দাম দিতে হয়। ন্যূনতম কত utilisation-এ on-demand-এর সমান?
- ৩৫%
- ৬৫%
- ১০০%
- ৫০%
(কঠিন) VM on-demand ঘণ্টায় $২, মাস ৭২০ ঘণ্টা (অনুমিত), চলে ৫০০ ঘণ্টা। ৩০% ছাড়ের অঙ্গীকারে পুরো মাসের দাম। কোনটি সস্তা?
- অঙ্গীকার, $৮ কম
- অঙ্গীকার, $৪৩২ কম
- দুটি সমান
- On-demand, $৮ কম
(মাঝারি) ৪০০ GB block disk কোনো VM-এ নেই, ভেতরে ৩০ GB. দর $০.১০/GB-মাস, বরাদ্দ অনুযায়ী বিল (অনুমিত)। মাসিক বিল?
- $৩
- $০
- $৪০
- $৪০০
(মাঝারি) Spot VM-এর জন্য সবচেয়ে উপযোগী কাজ কোনটি?
- Checkpoint-সহ, ছোট ভাগে করা batch
- একমাত্র primary database
- Checkpoint ছাড়া ১২ ঘণ্টার কাজ
- Payment-এর একমাত্র server
(সহজ) FinOps Framework-এর phase-গুলো কোনটি?
- Plan, Build, Run
- Dev, Test, Prod
- Cut, Stop, Delete
- Inform, Optimize, Operate
(মাঝারি) Showback আর chargeback-এর সম্পর্ক কোনটি?
- Showback দেখায়, chargeback বাজেটে কাটে
- দুটি একই জিনিসের দুই নাম
- Chargeback আগে, showback তার পরে
- Showback মানে বিলে discount দেওয়া
(মাঝারি) বিল ২০% বাড়ল, অর্ডার ৫০% বাড়ল। খরচ/অর্ডার?
- ৩০% বেড়েছে
- ২০% বেড়েছে
- ২০% কমেছে
- ৫০% কমেছে
(সহজ) AWS Well-Architected-এর ছয় স্তম্ভের একটি নয় কোনটি?
- Security
- Portability
- Reliability
- Cost optimization
(কঠিন) দুটি copy, প্রতিটি ১% সময় বন্ধ (u = ০.০১), একসাথে পড়ার অংশ b = ০.২. U = b×u + ((1−b)×u)² হলে U প্রায়?
- ০.০১%
- ১%
- ০.০০৬৪%
- ০.২০৬%
(মাঝারি) Lock-in-এর স্তর কোনগুলো?
- CPU, memory, disk
- ডেটা, API, দক্ষতা
- শুধু ভাষা
- Region-এর নাম
(মাঝারি) নিজের PostgreSQL ছেড়ে managed PostgreSQL, code প্রায় একই। পথটি কী?
- Replatform
- Rehost
- Refactor
- Retire
(মাঝারি) ২০ TB, ১ Gbps, ৮০% কার্যকারিতা (1 TB = 10¹² B). সময় কত?
- প্রায় ১.৯ দিন
- প্রায় ৭ ঘণ্টা
- প্রায় ২.৩ দিন
- প্রায় ২৩ দিন
(মাঝারি) Record-এর TTL ৭২০০ সেকেন্ড, ১৬:০০-তে cutover. TTL কমানোর সবচেয়ে দেরির নিরাপদ সময়?
- ১৪:০০
- ১৫:৫৫
- ১৬:০০
- ১৬:৩০
(কঠিন) SLO ৯৯.৯%, error ratio ১০%. Burn rate আর ৩০ দিনের পুরো budget কত ঘণ্টায় শেষ?
- ১০, ৭২ ঘণ্টা
- ১০০, ৭২ ঘণ্টা
- ১০০, ৭.২ ঘণ্টা
- ১, ৭২০ ঘণ্টা
(মাঝারি) সব Pod Ready, তবু ২০% request-এ 500. সবচেয়ে সম্ভাব্য?
- Readiness probe নষ্ট, সব Pod আসলে বন্ধ
- বাগটি এমন code-পথে, যা probe ছোঁয় না
- Terraform apply ব্যর্থ
- etcd নষ্ট
(মাঝারি) Terraform-চালিত Deployment-এ কেউ kubectl rollout undo দিলেন। পরের plan?
No changes, কারণ code একই আছে- State মুছে গিয়ে সব আবার তৈরি হবে
- Syntax error দিয়ে থামবে
- Drift: image config-এর মানে ফেরানো
নিজে যাচাই করুন — pipeline, SRE, serverless আর খরচের হিসাব
// Re-check the numericals of modules 10-13 (all prices assumed).
const f = (x, d = 2) => Number(x.toFixed(d));
const p = (label, v) => console.log(label.padEnd(30), v);
p("Shards: wall, runner-minutes", (40 / 4 + 2) + ", " + (40 / 4 + 2) * 4);
p("Cache break-even hit %", f(100 * 0.5 / 4.5, 1));
p("Flaky run %, 500 tests", f(100 * (1 - 0.999 ** 500), 1));
p("Canary share 1/15 %", f(100 / 15, 1));
const s = [200, 260, 30, 90]; let g = 0;
for (let i = 1; i < s.length; i++) g += s[i] >= s[i - 1] ? s[i] - s[i - 1] : s[i];
p("Counter growth with reset", g);
p("Histogram p70 (s)", f(0.1 + (70 - 60) / 40 * 0.4, 2));
p("Logs per 30 days (GB)", f(100 * 5 * 400 * 2592000 / 1e9, 1));
p("Log backlog drain (s)", 120000 / (1200 - 800));
p("Burn rate 0.5% at 99.95%", f(0.5 / 0.05, 1));
p("Budget used, burn 3 x 24 h %", f(100 * 3 * 24 / 720, 1));
p("Little L", f(300 * 0.15, 1));
p("M/M/1 total (ms)", f(20 / (1 - 0.8), 0));
p("Capacity, lose 1 of 4 zones", Math.ceil(4000 / 200 / 3) * 4);
p("Function bill", f(1e7 * 0.25 * 2 * 0.00002, 0));
p("Workers for backlog", 6000 / (30 / 0.2));
p("Token bucket: rejected", 300 - 100 - 50);
p("On-demand vs commitment", 500 * 2 + " vs " + f(720 * 2 * 0.7, 0));
p("Unit cost change %", f(100 * (1.2 / 1.5 - 1), 0));
p("U, b = 0.2, u = 0.01 %", f(100 * (0.2 * 0.01 + (0.8 * 0.01) ** 2), 4));
p("20 TB, 1 Gbps, 80% (days)", f(20e12 * 8 / 0.8e9 / 86400, 2));
p("Budget gone at burn 100 (h)", 720 / 100);আউটপুট (নির্ধারিত, প্রতিবার একই):
Shards: wall, runner-minutes 12, 48
Cache break-even hit % 11.1
Flaky run %, 500 tests 39.4
Canary share 1/15 % 6.7
Counter growth with reset 150
Histogram p70 (s) 0.2
Logs per 30 days (GB) 518.4
Log backlog drain (s) 300
Burn rate 0.5% at 99.95% 10
Budget used, burn 3 x 24 h % 10
Little L 45
M/M/1 total (ms) 100
Capacity, lose 1 of 4 zones 28
Function bill 100
Workers for backlog 40
Token bucket: rejected 150
On-demand vs commitment 1000 vs 1008
Unit cost change % -20
U, b = 0.2, u = 0.01 % 0.2064
20 TB, 1 Gbps, 80% (days) 2.31
Budget gone at burn 100 (h) 7.2
মডিউল ১০ থেকে ১৩-এর numerical. On-demand-এর লাইনটি দেখায়, ৫০০ ঘণ্টায় utilisation প্রায় ৬৯%, যা break-even ৭০%-এর সামান্য নিচে।
AI-এর যুগে — AI দিয়ে আরও MCQ বানান, কিন্তু উত্তর নিজে যাচাই করুন
AI মুহূর্তে শত শত MCQ বানাতে পারে, কিন্তু cloud আর DevOps-এর প্রশ্নে সে প্রায়ই পুরোনো আচরণকে “সঠিক” বলে, বা একই প্রশ্নে দুটি সঠিক অপশন রাখে।
| AI-এর প্রচলিত ভুল | উদাহরণ | কীভাবে ধরবেন |
|---|---|---|
| সরানো বা বানানো জিনিস | PodSecurityPolicy, অস্তিত্বহীন flag | Official docs, আর নিজের version-এ --dry-run |
| পুরোনো দাম আর সীমা | Free tier বা limit-কে চিরন্তন বলা | Provider-এর পাতা দেখুন; প্রশ্নে অনুমিত লিখুন |
| ঝুঁকিপূর্ণ “সঠিক উত্তর” | * অনুমতি, 0.0.0.0/0, public bucket, secret কোডে | Least privilege দিয়ে মেলান |
| ধ্বংসাত্মক command | terraform destroy, kubectl delete, rm -rf | আগে plan, throwaway পরিবেশে চালান |
| ভুল হিসাব, নিশ্চিত সুরে | Burn rate-এ ভুল হর, byte-bit | এই পাতার checker-এ সংখ্যা বসান |
| বানানো উৎস | “অমুক পরীক্ষায় এসেছিল” | উৎস দেখাতে না পারলে দাবি বাদ |
নিচের প্রম্পটটি AI-কে প্রশ্ন বানাতে বলে, সাথে যাচাইয়ের উপায়ও চায়:
যাচাইয়ের চেকলিস্ট
কেন এই উত্তর ভুল? — রিভিশনের কৌশল আর বড় ধারণা
আগে নিজে ভাবুন, তারপর খুলে দেখুন।
প্র ০১এতগুলো প্রশ্ন দিয়ে কীভাবে রিভিশন করলে সবচেয়ে বেশি কাজে লাগে?
একটানা পড়ে যাওয়া, মানে প্রশ্ন দেখা, উত্তর চাপা আর এগোনো, সবচেয়ে কম কাজে লাগে। শেখার গবেষণায় বারবার কার্যকর পাওয়া গেছে দুটি অভ্যাস: নিজে থেকে মনে করা (active recall) আর বিরতি দিয়ে ফেরা (spaced repetition).
- এক অংশ, পুরো মনোযোগ: একবারে একটি মডিউল নিন। চাপার আগে খাতায় উত্তর আর এক লাইনের কারণ লিখুন, যেমন “৪ × ২০ + ৫, তাই ৮৫”. কারণ লিখতে না পারলে ঠিক হলেও ভুল গুনুন।
- ভুলের খাতা: প্রতিটি ভুলের পাশে প্রশ্ন নয়, নিয়মটি লিখুন: “replace দুই দিকে গোনা হয়”. পরীক্ষায় একই নিয়ম অন্য সংখ্যায় আসে।
- নিজে চালান: Linux-এর প্রশ্ন একটি খালি folder-এ, Kubernetes আর Terraform-এর প্রশ্ন একটি local cluster-এ পরীক্ষা করা যায়, cloud-এর বিল ছাড়াই। পর্বগুলোর “নিজে চালাতে চাইলে” অংশ দেখুন।
- পর্বে ফিরুন: একটি মডিউলে চারটির বেশি ভুল হলে তার পর্ব আবার পড়ুন। ১, ৩ আর ৭ দিন পরে শুধু ভুলগুলো করুন, অপশন পড়ার আগেই উত্তর বলে।
- স্কোরের ফাঁদ: দ্বিতীয়বারে স্কোর বাড়ে অপশন মনে থাকার জন্যও। তাই সংখ্যা বদলে নিজের প্রশ্ন বানান, এই পাতার checker-এ মেলান।
- ফলের ধরন লিখুন: প্রতিটি মডিউলে কতটি সংজ্ঞায় আর কতটি হিসাবে ভুল হলো, আলাদা গুনুন। সংজ্ঞায় ভুল মানে পর্বে ফেরা, হিসাবে ভুল মানে আরও অনুশীলন।
মূল উপলব্ধি: প্রশ্ন নয়, পেছনের নিয়ম মনে রাখাই লক্ষ্য।
প্র ০২NetworkPolicy, Ingress আর CRD তিনটিই apply হয়, তবু কিছু ঘটে না। মিলটি কোথায়?
Kubernetes API হলো desired state জমা রাখার জায়গা। কে সেটি বাস্তবে আনবে, তা আলাদা প্রশ্ন। NetworkPolicy-এর কাজ করে CNI plugin, Ingress-এর কাজ করে ingress controller, আর custom resource-এর কাজ করে তার নিজের controller. API server শুধু object-টি যাচাই করে etcd-তে রাখে। তাই created লেখা দেখে এটুকুই বলা যায় যে object জমা হয়েছে।
পর্ব ৪৯-এর run-এ cluster-এর CNI NetworkPolicy মানছিল না, তাই default-deny দেওয়ার পরও নিষিদ্ধ সংযোগ চলেছে। kubectl get netpol ঠিকই object দেখাচ্ছিল, কারণ CNI কোনো Kubernetes API নয়, আর API server জানে না চলন্ত plugin কী পারে। প্রমাণ একটিই: একটি নিষিদ্ধ সংযোগ চেষ্টা করে ব্যর্থ হতে দেখা।
এই ভাগ দুর্বলতা নয়, নকশা। এর জন্যই Calico বা Cilium, Traefik বা অন্য controller, আর cloud-এর নিজস্ব plugin আলাদাভাবে গড়ে উঠতে পেরেছে। একই ধাঁচ অন্য জায়গাতেও দেখা যায়: budget alert ব্রেক নয়, আর type: LoadBalancer-এর ঠিকানা দেয় cloud controller; সেটি না থাকলে EXTERNAL-IP <pending> থাকে।
পরীক্ষায় এই ধাঁচের প্রশ্ন চিনবেন দুটি লক্ষণে: object ঠিকঠাক দেখাচ্ছে, অথচ আচরণ বদলায়নি। তখন “syntax ভুল” বা “restart দিন” ধরনের অপশন প্রায়ই ফাঁদ। বাস্তবে নতুন cluster-এর সেটআপ পরীক্ষায় একটি “নিষিদ্ধ সংযোগ ব্যর্থ হয় কি না” test রাখুন, আর upgrade বা CNI বদলের পরে আবার চালান।
মূল উপলব্ধি: জমা থাকা আর মানা আলাদা; ফল দেখে যাচাই করুন (পর্ব ৪৬, ৪৯, ৫০)।
প্র ০৩Replica, versioning, multi-AZ আর backup, এদের কোনটি কোন বিপদ থেকে বাঁচায়?
প্রতিটি ব্যবস্থা একটি নির্দিষ্ট বিপদের জন্য। Multi-AZ আর replica যন্ত্রের বিপদ সামলায়: একটি zone পড়লে সেবা চলে। কিন্তু DROP TABLE মুহূর্তে সব কপিতে পৌঁছে যায়, কারণ replication ভুল আর ঠিক আলাদা করে না। মানুষের ভুলে ফেরায় backup আর PITR.
Versioning ভুল overwrite আর ভুল delete সামলায়, কিন্তু চুরি যাওয়া admin credential সব version মুছতে পারে। আক্রমণের জন্য লাগে আলাদা account আর compliance ধরনের object lock. আবার যে key দিয়ে backup লক করা, সেটি production account-এ মুছে গেলে অক্ষত কপিও অপাঠ্য। তাই key-ও বেঁচে থাকা চাই।
GitLab-এর জানুয়ারি ২০১৭-এর প্রকাশ্য postmortem-এ দেখা যায়, ভুল server-এ ডেটা মোছার পরে কয়েকটি backup ব্যবস্থা আশানুরূপ কাজ করেনি, আর ফিরতে হয়েছে একটি পুরোনো snapshot থেকে। এই ঘটনাই “restore করে না দেখলে backup আছে বলা যায় না” কথাটির চেনা উদাহরণ। Checksum শুধু কপি মেলায়; কাজের প্রমাণ দেয় restore test.
পরীক্ষায় অপশন বাছার সহজ উপায়: প্রশ্নে কে ক্ষতি করেছে খুঁজুন। Zone বিকল হলে multi-AZ; একজন প্রকৌশলীর ভুলে PITR; চুরি যাওয়া credential-এ আলাদা account-এর immutable কপি। আর ভুলবেন না, region হারালে RPO-তে কপি পৌঁছানোর সময়ও যোগ হয়।
মূল উপলব্ধি: আগে প্রশ্ন করুন বিপদটি যন্ত্রের, মানুষের, না আক্রমণের (পর্ব ২১, ২২, ২৪)।
প্র ০৪Tag, digest আর rebuild: “একই version” দাবি করা কখন ভুল?
Tag একটি চলমান লেবেল। একই app:1.4-এ নতুন image push করলে tag সরে যায়, কিন্তু পুরোনো digest দিয়ে pull করলে আগের image-ই আসে। Digest বিষয়বস্তুর hash, তাই পরীক্ষার ফল আসলে একটি digest-এর, কোনো নামের নয়।
একই commit থেকে আবার build করলে timestamp-এর মতো কারণে byte বদলাতে পারে। পর্ব ৫৮-এর run-এ --no-cache-এর দুটি build দুটি আলাদা digest দিয়েছে। মানে সেটি নতুন, অপরীক্ষিত image, source এক হলেও। তাই promotion মানে একই digest-এ নতুন tag; আবার build নয়। Rollback মানে পুরোনো digest আবার deploy করা, আর retention rule যেন সেটি মুছে না ফেলে। মুছে গেলে নতুন Pod ImagePullBackOff-এ আটকায়।
একই যুক্তি CI-তেও খাটে। Git tag সরানো যায় বলেই third-party Action পুরো commit SHA-তে pin করার পরামর্শ দেওয়া হয়; মার্চ ২০২৫-এ একটি জনপ্রিয় Action-এর tag অন্য commit-এ সরিয়ে দেওয়ার ঘটনা প্রকাশ্যে আলোচিত হয়েছিল। চলমান Pod-এ আসলে কী চলছে, তার প্রমাণ imageID, আর label-এর সততার প্রমাণ স্বাক্ষরিত provenance.
কেউ “একই version” বললে জিজ্ঞেস করুন: একই নাম, একই source, না একই byte? শুধু শেষটিই পরীক্ষার ফল বয়ে নিয়ে যায়। তাই Deployment-এর YAML-এ web@sha256:… লেখা ভালো, আর ছাপানো নামের চেয়ে Pod-এর আসল imageID বেশি নির্ভরযোগ্য।
মূল উপলব্ধি: মানুষের জন্য tag, deployment আর rollback-এর জন্য digest (পর্ব ৪১, ৫৮)।
প্র ০৫সব যাচাই সবুজ, তবু production ভাঙল। কোন “সবুজ” কতটুকু বলে?
প্রতিটি যাচাই একটি সরু প্রশ্নের উত্তর, আর ভুল হয় তাকে বড় প্রশ্নের উত্তর ভাবলে।
- Helm:
helm template --validateপর্ব ৫০-এর run-এ (Helm ৩.১৯) exit 0 দিয়েছিল; ভুলটি ধরেছেkubectl apply --dry-run=server. আচরণ version-ভেদে বদলাতে পারে। - Terraform test:
-filter-এ ভুল path দিলে “0 passed, 0 failed”, exit 0. CI সবুজ, অথচ কোনো test চলেনি। - Readiness: সবুজ মানে probe-এর পথ ঠিক। পর্ব ৭৬-এ ২৫% request ভাঙা অবস্থাতেও সব Pod Ready ছিল; ধরেছে burn-rate alert.
- Flow log: ACCEPT মানে শুধু ঐ স্তর আটকায়নি, অ্যাপে পৌঁছানো নয়।
- Canary: ১,০০০ অনুরোধে ০ error মানে আসল হার প্রায় ০.৩% পর্যন্ত হতে পারে। ব্যস্ত সেবায় সেটি অনেক ব্যবহারকারী।
Amazon-এর ফেব্রুয়ারি ২০১৭-এর S3 ঘটনার প্রকাশিত সারাংশেও এই শিক্ষা আছে: নিয়মিত একটি command-এর ভুল input দরকারের চেয়ে বেশি server সরিয়েছিল। চেনা, “সবুজ” পথও ভুল ফল দিতে পারে, তাই সীমা আর ধীরে ছড়ানো লাগে।
পরীক্ষায় “সবুজ”-এর প্রশ্নে “তাই নিরাপদ” ধরনের অপশন প্রায়ই ভুল। সঠিক অপশনটি সাধারণত বলে দেয়, যাচাইটি কতটুকু দেখেছে আর কী দেখেনি। বাস্তবে pipeline-এ পাস করা test-এর সংখ্যা, নিষিদ্ধ পথের ব্যর্থতা আর ব্যবহারকারীর দিকের SLI, তিনটিই দেখুন।
মূল উপলব্ধি: জিজ্ঞেস করুন, এই সবুজ ঠিক কোন প্রশ্নের উত্তর (পর্ব ২৬, ৫০, ৫৫, ৫৯, ৭৬)।
শেষ ধাপ — ক্রম সাজান আর স্কোর দেখুন
উপরের সব MCQ শেষ করলে নিচে আপনার মোট স্কোর দেখাবে।
ক্রমCloud-এ database migration-এর cutover. ধাপগুলো আগে থেকে পরে সাজান (▲▼ চেপে সরান)
- DNS-এর TTL কমানো
- CDC দিয়ে ডেটা মিলিয়ে রাখা
- পুরোনো database read-only করা
- ডেটা যাচাই করা
- Sequence-এর মান এগিয়ে নেওয়া
- App-এর দিক নতুন database-এ বদলানো
শব্দকোষ
লেখার মধ্যে ডটেড দাগ দেওয়া শব্দে মাউস রাখুন বা চাপুন, অর্থ দেখাবে। এই পর্বের সব শব্দ এখানে একসাথে:
মনে রাখুন
- বাদ দিয়ে উত্তর: প্রতিটি অপশনের পেছনের নিয়ম খুঁজুন; ভালো distractor একটি আলাদা ভুল ধারণা।
- আছে ≠ কাজ করছে: Object-এর পেছনে কে আছে দেখুন, আর ফল দিয়ে যাচাই করুন।
- বিপদ চিনে সুরক্ষা: Replica যন্ত্রের জন্য, PITR ভুলের জন্য, আলাদা account আক্রমণের জন্য।
- পরিচয় স্থির রাখুন: Digest, স্থির key-র
for_each, idempotency key; নাম নয়, পরিচয়। - সূত্রের অংশ ভুলবেন না: Byte-bit-এর ৮, cap আর max, হরের ১ − SLO, আর break-even ১ − d.
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- পর্ব ৭৯ · লিখিত ও মৌখিক (ভাইভা) প্রশ্ন — cloud, container, CI/CD আর SREপরবর্তী পর্বMCQ-এর পর লিখিত আর মৌখিক উত্তর গুছিয়ে বলার অনুশীলন।
- পর্ব ৭৬ · ক্যাপস্টোন — code থেকে productionভিত্তিকোর্সের সব টুকরো একসাথে, আসল run-সহ।
- পর্ব ৪৯ · Kubernetes নিরাপত্তাভিত্তিRBAC, NetworkPolicy আর Pod Security-র মূল পর্ব।
- পর্ব ৬৬ · Alerting আর SLOভিত্তিBurn rate আর ভালো alert-এর হিসাব।
- পর্ব ৩২ · IAM policy evaluationভিত্তিAllow আর Deny-এর পুরো ক্রম।
- System Design · MCQ প্রশ্নব্যাংকপাশের ট্র্যাকScaling, storage আর distributed systems-এর MCQ.
- Software Engineering · MCQ প্রশ্নব্যাংকপাশের ট্র্যাকGit, testing আর CI/CD-র MCQ.