Минтақаҳои мавҷудият ва минтақаҳои салиб
1) Истилоҳот ва вазифаҳо
Минтақаи мавҷудият (AZ) - маркази алоҳидаи додаҳо дар минтақа (иқтидор/шабакаи худ).
Минтақа - гурӯҳи AZ бо ҷуғрофияи умумӣ ва таъхирҳо.
- RTO (Recovery Time Objective) - чӣ қадар вақт шумо хидмат расонида наметавонед.
- RPO (Ҳадафи барқарорсозии нуқта) - чӣ қадар маълумотро аз даст додан мумкин аст.
Одатан: дар дохили минтақа мо ба RTO ≤ 5-15 дақиқа, RPO ~ 0-1 дақиқа, байниминтақавӣ - RTO ≤ 1 соат, RPO ≤ 5 дақиқа (вобаста ба маҳсулот ва буҷа) равона мешавем.
2) Моделҳои меъморӣ
2. 1 Дар дохили минтақа (multi-AZ)
Қабати бешаҳрвандӣ: аз AZ тақсим карда мешавад; мувозинат - L4/L7 бо муоинаи тиббӣ.
Қабати давлатӣ: кластерҳо бо такрори синхронӣ (ё кворум) байни AZ.
Кэш/навбатҳо: кластерӣ, бо sharding AZ ва нокомии автоматӣ.
2. 2 байниминтақавӣ (бисёр минтақа)
Фаъол-фаъол: Ҳарду минтақа ҳаракати нақлиёт мегиранд.
Ҳадди ақали таъхири корбар, барқароршавии зуд, мувофиқати − ва мураккабии низоъ
Фаъол-пассив (гарм/гарм): минтақаи асосӣ хизмат мекунад, дуюм - бо лаззати гарм/гарм.
маълумоти соддатар, арзонтар; − РТО баландтар.
Pilot-Light: ҳадди аққали "нур" (маълумот ҳамоҳанг карда мешавад, ҳисобҳо дар ҳолати садама ба амал меоянд).
DR-нусхабардорӣ: танҳо нусхаҳои эҳтиётӣ ва сенарияи барқароршавӣ (арзон ва сусттарин).
3) Маълумот ва пайдарҳамӣ
3. 1 Пойгоҳи додаҳо
Кворуми синхронӣ (RPO ≈ 0, * latentnost): PostgrE SQL бо стендҳои синхронӣ дар минтақа; махзани маълумотҳои паҳншуда (Cockroach-DB/Cassandra) бо кворумҳои маҳаллӣ (Кворум маҳаллӣ) ва тавозуни AZ.
Асинхронии байниминтақавӣ (RPO> 0, ↓latentnost): такрори мантиқӣ Postgres/My "ҷадвалҳои глобалӣ" v KV/No SQL; CDC → ба минтақаи дигар ҳаракат мекунад.
Вурудоти ихтилофӣ: Барои фаъол-фаъол, CRDT/versioning ё leader-минтақаро барои як калид/иҷорагир истифода баред.
3. 2 Сарчашмаҳо ва навбатҳо
Навбатҳо/ҷараёнҳо (Кафка/Пулсар/SQS-монанд): мавзӯъҳои оина ё репликаторҳои минтақавӣ; калид - idempotency истеъмолкунандагон ва монеаи калидӣ.
Webhooks ва шарикони хориҷӣ: имзо гузоштан, бозсозӣ кардан, нуқтаҳои офсет/гузаргоҳро дар ҳарду минтақа нигоҳ доштан.
3. 3 Пули нақд
Кэшҳои маҳаллӣ дар як минтақа (навиштан/навсозӣ); кэши муштараки глобалӣ танҳо барои KV-ҳои дарозмуддат (aka split-мағзи сар). Хомӯш кардани ҳодиса (паб/зер), TTL - консервативӣ.
4) Трафики ҷаҳонӣ ва ҳалқаи шабака
GSLB/DNS: Масир дар асоси Geo-/Latency, санҷиши саломатӣ, вазни ҳаракат барои канарейкаҳо ва садамаҳо.
Anycast/Edge: мо даромадгоҳро ба корбар наздиктар мекунем, баъд ба минтақаи наздиктарини солим.
Сиёсати нокомӣ: ҳавзҳои минтақавии болооб, манъи 0-RTT дар роҳҳои муҳим, таъхири кам ба вобастагии байниминтақавӣ.
Сиёсати бозгашт: бозгашти экспоненсиалӣ + ҷиттер, маҳдудияти ниҳоӣ, idempotent PUT/POST бо 'Idempotency-Key'.
5) Кубернетҳо ва фикрию хидматӣ
5. 1 Multi-AZ дар як кластер
топология маҳдудиятҳоро паҳн мекунад po 'topology. кубернетес. io/минтақа '.
Poddisruption- Budget i синфҳои афзалиятнок.
Гиреҳи Affinity/Anti-Affinity - Аз ҷойгиршавии нусхабардорӣ канорагирӣ кунед.
Минтақаҳои нигоҳдорӣ: PV бо такрори AZ ё системаҳои тақсимшудаи ҳаҷм.
5. 2 Бисёр минтақа (бисёр кластер)
Барои синхронизатсияи декларативӣ кластерҳои ҷудогона дар як минтақа + GIT (Argo CD/Flux).
Хадамоти Mesh (Istio/Linkerd): мувозинати сарбории маҳал ва нокомӣ дар байни минтақаҳо; MTLS, шахсияти муштарак.
Ҷойивазкунии ҳаракат: тадриҷан 1% → 10% → 50% ба минтақаи нав; дастаки "фавран 0%" гузоред.
6) Интихоби RTO/RPO ва ҳатмии намуна
7) Озмоиши таҳаммулпазирии хато (DR)
Рӯзҳои бозӣ: сенарияи семоҳаи пурраи "минтақа/AZ берун".
Тазриқи хаос: таъхири шабака, талафоти пакет, брокер/қатъ кардани пойгоҳ дар як AZ.
RTO/RPO воқеӣ: вақти гузариш ва аз даст додани маълумотро чен кунед, ҳисобот нашр кунед.
Китобҳои корӣ: дастурҳои зина ба зина ва "тугмаҳои сурх" барои гузариш (вазнҳои DNS, парчамҳои хусусият, хомӯш кардани хусусиятҳои вазнин).
8) Мушоҳида ва идоракунӣ
Иловаро метрикӣ аз рӯи минтақа/AZ/иҷорагир; p95/p99 таъхири масир.
Буҷаҳои SLO ва хатогиҳо дар як минтақа ва як ҳавзи ҷаҳонӣ.
Огоҳиҳо: таназзули як минтақа набояд "роҳбандӣ" кунад, агар дуввум ҳаракати нақлиётро ба таври муқаррарӣ анҷом диҳад.
Трейсы: бағоҷи 'минтақа', 'аз', 'нокомӣ = ҳақиқат/дурӯғ'; гузоришҳо "чӣ қадар дархостҳо ба нокомӣ дучор шуданд".
9) Бехатарӣ ва риояи
Резидентураи маълумот: пайваст кардани маълумоти PII/пардохт бо минтақаҳои мушаххас (юрисдиксия).
Асрҳо: KMS/HSM интеллектуалӣ бо калидҳои минтақавӣ ва гардиш; Маводи калидии алоҳида дар як минтақа.
MTLS ва эътимоди мутақобила байни минтақаҳо; маҳдуд кардани egress байниминтақавӣ аз ҷониби ACL.
10) Хароҷот ва пасандозҳо
Кэши канорӣ + SWR - кам шудани egress байниминтақавӣ.
Синфҳои гуногуни нигоҳдорӣ (гарм/гарм/хунук) ва ченакҳо/гузоришҳо.
Профилҳои миқёси худкор аз рӯи минтақа (ҳадди аққали шаб).
Шиносоии тасвир + конфигуратсияи дифференсиалӣ тавассути тағирёбандаҳои муҳит/қиматҳои Helm.
11) Антипаттернҳо
Як устоди давлатӣ дар як система; тақсим-мағзи бе кворум.
Навиштани синхронии байниминтақавӣ ба як RDBMS (таъхири тоқатнопазир).
Кэши глобалӣ бо пайдарҳамии қавӣ бидуни CRDT → пурборшавӣ ва фантомҳо.
Бозхонди бидуни идемпотенсиалӣ → такрори амалиётҳо/пардохтҳо.
SLO-и ягонаи "ҷаҳонӣ" - нокомии як минтақаро пинҳон мекунад.
Машқҳои мунтазами DR вуҷуд надоранд - нақшаҳо дар ҷанг ғайриимконанд.
12) Хусусиятҳои IGaming/Finance
Таъминкунандагони пардохт/CCP-ҳо дар минтақа интихоб карда мешаванд; масири интеллектуалиро тавассути PSP бо сигналҳои саломатӣ иҷро кунед, нусхабардорӣ накунед.
Салоҳият: Гузаронидани PII ва гузоришҳои муомилот дар дохили кишвар/минтақа; салиб-минтақа - танҳо агрегатҳо/беном.
Маҳдудиятҳо/бозии масъулиятнок: қоидаҳои маҳаллӣ ва соатҳо - "сар-ба" -ро дар байни минтақаҳо такрор накунед, мувофиқати ҳодисаҳоро истифода баред.
Бонусҳо/тавозун: калидҳои номатлуб ва "манбаи ҳақиқат" барои як иҷорагир/минтақа; корҳои пас аз DR.
13) Дорухатҳои мини (рақамҳои псевдо)
13. 1 Фиристодаи огоҳ аз маҳал + ноком
yaml load_assignment:
endpoints:
- locality: { region: eu, zone: eu-a }
lb_endpoints: [{ endpoint: { address:... } }]
- locality: { region: eu, zone: eu-b }
lb_endpoints: [{ endpoint: { address:... } }]
- locality: { region: us, zone: us-a } # failover target lb_endpoints: [{ endpoint: { address:... } }]
common_lb_config:
zone_aware_lb_config: {}
locality_weighted_lb_config: {}
outlier_detection:
consecutive_5xx: 5 base_ejection_time: 30s
13. 2 Паҳншавии топологияи Кубернетес
yaml spec:
topologySpreadConstraints:
- maxSkew: 1 topologyKey: topology. kubernetes. io/zone whenUnsatisfiable: DoNotSchedule labelSelector: { matchLabels: { app: api } }
13. 3 DNS Feilover вазн (идея)
'вазн (eu) = 90', 'вазн (мо) = 10' → ҳангоми таназзули 'eu' automatically ба 'мо' мегузарад. Санҷишҳои тиббӣ ва паст кардани TTL (вале на он қадар хашмгин, 30-120 с).
14) Рӯйхати санҷиши омодагии Prod
- RTO/RPO барои як хидмат муайян ва бо тиҷорат мувофиқа карда шудааст.
- Шаҳрвандӣ дар саросари AZ паҳн карда мешавад; давлатӣ дорои кворум/нусхабардорӣ ва модели возеҳи мувофиқат мебошад.
- Нусхабардории байниминтақавӣ (асинхрон/CDC), санҷишҳои бархӯрд/такрорӣ.
- GSLB/Anycast танзим карда мешавад, санҷишҳои тиббӣ ва вазнҳо автоматӣ карда мешаванд.
- Кубернетҳо: паҳншавии топология, PDB, зидди наздикӣ; бисёр кластерии GITOPS.
- Retrai бо jitter, idempotency дар навиштан; танаффуси кӯтоҳ ба таври байниминтақавӣ.
- Машқҳои DR, андозагирии воқеии RTO/RPO; runbook ҷорӣ.
- Мушоҳида аз рӯи минтақа/AZ, SLO ва сатҳи сӯзондан дар қисматҳо, огоҳиҳо кори муқаррарии "мураббо" нестанд.
- Ҷойгиркунии маълумот/асрори/калидҳо ба талаботи танзим мувофиқат мекунад.
- Иқтисодиёт: egress, анбор, профилҳои autoscale таҳти назорат.
15) TL; ДР
Сохтани multi-AZ ҳамчун қабати асосӣ, бисёрҷониба ҳамчун суғуртаи тиҷорат. Намунаи (фаъол-фаъол/интизорӣ) барои RTO/RPO ва арзиши онро интихоб кунед, маълумотро огоҳона нусхабардорӣ кунед (кворумҳо/CDC/CRDT), трафики глобалиро тавассути GSLB/Anycast ва тавозуни ҷойгиршавӣ идора кунед. Ҳатмӣ: номутобиқатӣ, танаффуси кӯтоҳ, машқҳои муқаррарии DR, SLO/ченакҳо дар иловаро дар минтақа/AZ. Барои IGaming/Finance, PSP/KYC минтақавӣ, талаботҳои маълумот ва SLO-ро аз рӯи салоҳият илова кунед.