ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ
. ΠΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ (Infrastructure Layer) ΠΠ»Π°ΡΡΠ΅Ρ Kubernetes (CP, Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 3 ΡΠ·Π»ΠΎΠ²): ΠΡΠ±ΡΠ°ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² K8s (kubeadm, Talos Linux ΠΈΠ»ΠΈ k3s). ΠΠ±ΠΎΡΠ½ΠΎΠ²Π°ΡΡ Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ Π²ΡΡΠΎΠΊΠΎΠ΄ΠΎΡΡΡΠΏΠ½ΡΠΉ (HA) control-plane Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ VIP-Π°Π΄ΡΠ΅ΡΠ° (Virtual IP) Π΄Π»Ρ API-ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠ°ΡΡΡΠΎΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ worker-Π½ΠΎΠ΄ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Proxmox HA β ΠΏΡΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠΈ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Ρ
ΠΎΡΡΠ° ΠΠ Ρ K8s-Π½ΠΎΠ΄ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΡΠ·Π»Π΅ Proxmox. Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ CNI-ΠΏΠ»Π°Π³ΠΈΠ½ (Cilium ΠΈΠ»ΠΈ Calico) Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Network Policies. ΠΠ°ΡΡΡΠΎΠΈΡΡ MetalLB Π΄Π»Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠΈΠΏΠ° LoadBalancer Ρ ΠΏΡΠ»ΠΎΠΌ Π²Π½Π΅ΡΠ½ΠΈΡ
IP-Π°Π΄ΡΠ΅ΡΠΎΠ². Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ingress-ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ (Nginx Ingress ΠΈΠ»ΠΈ Traefik) Π΄Π»Ρ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°. ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΈΠ·ΠΎΠ»ΡΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Kubernetes Network Policies. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Ceph: ΠΠ°ΡΡΡΠΎΠΈΡΡ Ceph CSI (RBD ΠΈ CephFS) Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΠΌΠΎΠ² PersistentVolume Π² Kubernetes. Π‘ΠΎΠ·Π΄Π°ΡΡ StorageClass Π΄Π»Ρ Π±ΡΡΡΡΡΡ
(SSD) ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ
(HDD) ΡΠΎΠΌΠΎΠ². ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠ²ΠΈΠΆΠΈΠ½ΠΈΠ½Π³Π° PVC. ΠΠΎΠΏ ΠΎΠΏΡΠΈΡ Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ Longhorn Π΄Π»Ρ ΡΠ΅ΠΏΠ»ΠΈΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ Π±Π»ΠΎΡΠ½ΠΎΠ³ΠΎ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΠΎΠ²Π΅ΡΡ
ΠΊΡΠ±ΠΈΠΊΠ° ΠΠ°ΡΡΡΠΎΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ PVC Π² Ceph RBD ΠΈΠ»ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΉ S3-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ Π±Π°ΠΊΠ΅Ρ. TerraformΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠΌ Π΄Π»Ρ Proxmox Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΠ ΠΏΠΎΠ΄ control-plane ΠΈ worker-Π½ΠΎΠ΄Ρ. ΠΠ°ΡΡΡΠΎΠΈΡΡ cloud-init Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ, SSH-ΠΊΠ»ΡΡΠΈ, hostname). ΠΡΠΆΠ΅Π½ Ansible-ΠΏΠ»Π΅ΠΉΠ±ΡΠΊΠΈ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Kubernetes (kubeadm ΠΈΠ»ΠΈ k3s) Π½Π° Π²ΡΠ΅Ρ
Π½ΠΎΠ΄Π°Ρ
. ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΠΎΠ²Π°ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ Π²ΡΠ΅Ρ
Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² (CNI, MetalLB, Ingress, Ceph CSI, Prometheus, etc.) Ρ ΠΏΠΎΠΌΠΎΡΡΡ Helm-ΡΠ°ΡΡΠΎΠ². ΠΠ½Π΅Π΄ΡΠΈΡΠ΅ GitOps-ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ (ArgoCD ΠΈΠ»ΠΈ Flux) Π΄Π»Ρ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°. Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ cert-manager Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ SSL-ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² ΠΎΡ Let's Encrypt (ΠΈΠ»ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ CA) Π΄Π»Ρ Π²ΡΠ΅Ρ
Ingress-ΡΠ΅ΡΡΡΡΠΎΠ². ΠΠ°ΡΡΡΠΎΠΈΡΡ OIDC-ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ (Authentik) Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² Kubernetes. ΠΠ½Π΅Π΄ΡΠΈΡΡ RBAC Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠΎΠ»ΡΠΌΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² ΠΈ CI/CD-ΡΠΈΡΡΠ΅ΠΌ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Pod Security Policies (ΠΈΠ»ΠΈ Pod Security Admission) Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ. ΠΠ°ΡΡΡΠΎΠΈΡΡ Network Policies Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ°ΡΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΠ΄Π°ΠΌΠΈ. ΠΠ½Π΅Π΄ΡΠΈΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ² Trivy Π² CI/CD-ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½. Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ Prometheus Stack (kube-prometheus-stack) ΡΠΎ ΡΠ±ΠΎΡΠΎΠΌ ΠΌΠ΅ΡΡΠΈΠΊ Ρ K8s-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Π½ΠΎΠ΄ Proxmox ΠΈ Ceph. ΠΠ°ΡΡΡΠΎΠΈΡΡ Grafana Ρ ΠΏΡΠ΅Π΄Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ Π΄Π°ΡΠ±ΠΎΡΠ΄Π°ΠΌΠΈ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°, Π½Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΈ ΡΠ΅ΡΠΈ. ΠΠ½Π΅Π΄ΡΠΈΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ±ΠΎΡ Π»ΠΎΠ³ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ Elasticsearch + Fluentd/Filebeat + Kibana (EFK) ΠΈΠ»ΠΈ Loki + Promtail. ΠΠ°ΡΡΡΠΎΠΈΡΡ Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΎΠ² Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 30 Π΄Π½Π΅ΠΉ Ρ ΡΠΎΡΠ°ΡΠΈΠ΅ΠΉ ΠΈ Π°ΡΡ
ΠΈΠ²Π°ΡΠΈΠ΅ΠΉ.