Control plane — tizim qanday ishlashi kerakligini belgilaydigan holat, siyosat va qarorlarni boshqaruvchi qatlam. U route tanlaydi, workload joylashtiradi, konfiguratsiya saqlaydi yoki access siyosatini tarqatadi. Data plane esa shu qarorlar asosida haqiqiy paket, so‘rov yoki ma’lumotni qayta ishlaydi.
Tarmoqdagi ma’nosi
Router control plane’i OSPF yoki BGP orqali route ma’lumotini almashib, routing table tuzadi. Data plane forwarding table’ga qarab har paketni line rate’da uzatadi. Control protocol vaqtincha sekinlashsa mavjud route bo‘yicha forwarding davom etishi mumkin; route eskirsa keyin data plane ham noto‘g‘ri yo‘l ishlatadi.
Software-defined networking’da controller markazlashtirilgan mantiq bilan switchlarga flow qoidasini tarqatadi. “Markazlashtirilgan” bitta server degani emas: controllerning o‘zi HA cluster bo‘lishi mumkin.
Orchestration tizimidagi roli
Kubernetes control plane API server, state store, scheduler va controllerlardan iborat. Foydalanuvchi desired state’ni APIga yozadi. Scheduler pod uchun node tanlaydi, controllerlar real va desired state farqini bartaraf etadi. Worker node agentlari data/workload plane’da containerlarni yuritadi.
| Komponent vazifasi | Misol |
|---|---|
| API va autentifikatsiya | So‘rovni qabul qilish va tekshirish |
| Holat saqlash | Cluster konfiguratsiyasini saqlash |
| Qaror chiqarish | Scheduling yoki route hisoblash |
| Reconciliation | Real holatni desired state’ga keltirish |
| Policy tarqatish | Node yoki proxy’ga qoida yetkazish |
Control plane ishlamay qolsa mavjud workload bir muddat ishlashda davom etishi mumkin, ammo yangi deployment, rescheduling va konfiguratsiya o‘zgarishi to‘xtaydi.
Availability va consensus
Control plane kritik bo‘lgani uchun bir nechta replica va quorum bilan quriladi. Consensus store ko‘pchilik mavjud bo‘lganda yozuv qabul qiladi. Uch a’zoli cluster bir a’zo yo‘qolishiga, besh a’zoli cluster ikki a’zo yo‘qolishiga chidashi mumkin; geografik latency esa commit vaqtiga ta’sir qiladi.
Load balancer API endpointni sog‘lom replica’ga yo‘naltiradi. Backup faqat config store faylini olish emas, restore procedure va encryption key mavjudligini tekshirishni ham qamrab oladi.
Masshtablash
Data plane trafik hajmi oshganda workerlar ko‘payadi. Control plane esa obyektlar soni, watch oqimlari, reconciliation tezligi va API requestlar bo‘yicha scale qilinadi. Minglab client bir xil resursni tez-tez poll qilsa API server va store bosimga uchraydi; watch va cache samaraliroq.
Controllerning work queue’si rate limit va retry bilan boshqariladi. Tashqi dependency ishlamayotganda cheksiz tez retry control plane’ni o‘zi bilan band qiladi. Reconciliation idempotent bo‘lishi kerak, chunki bir obyekt qayta-qayta ko‘riladi.
Xavfsizlik
Control plane credential’i butun tizimga katta ta’sir qiladi. API private network’da bo‘lishi, kuchli autentifikatsiya, RBAC va audit log bilan himoyalanishi kerak. Administrator va avtomatlashtirish identity’lari alohida, qisqa muddatli credential bilan ishlaydi.
Admission policy noto‘g‘ri yoki xavfli konfiguratsiyani state’ga yozilishidan oldin rad etadi. Audit kim qachon qaysi desired state’ni o‘zgartirganini ko‘rsatadi. Secret store backupi ham production ma’lumoti kabi shifrlanadi.
Failure holatlari
Control-plane partition’da ikki tomon bir xil resursni boshqarmasligi uchun leader election va lease ishlatiladi. Eski leader lease’ni yangilay olmasa qaror chiqarishni to‘xtatadi. Soat drift’i lease va sertifikat tekshiruviga ta’sir qilishi mumkin.
Control plane va data plane orasidagi versiya compatibility yangilash tartibini belgilaydi. Rolling upgrade’da avval yoki keyin qaysi qatlam yangilanishi platforma hujjatiga bog‘liq. Diagnostika API latency, store commit, leader change, queue depth va reconciliation errorlarini birga tahlil qiladi.
Bog‘liq tushunchalar
Data plane, Kubernetes, API server, Consensus, Reconciliation loop, Software-defined networking, Leader election