Sobes.tech
Middle

Kubernetesте ишке киргизилген колдонмолор бири-бири менен кантип өз ара аракеттенет?

sobes.tech AI

AIден жооп

Кубернетеске тиркемелердин өз ара аракеттешүүсү негизинен тармактык кызматтар аркылуу жүргүзүлөт.

  1. Кызматтарды табуу: Тиркемелер түздөн-түз поддордун IP даректери аркылуу байланыша алышпайт, анткени поддордун IP даректери эфемердүү жана кайра түзүүдө өзгөрүшү мүмкүн. Анын ордуна, алар Кызматтарды табуу механизмин колдонушат, ал туруктуу DNS аты жана IP даректи бирдей иштеген поддор тобу үчүн камсыздайт.

    • ClusterIP: Туура келген кызматтын түрү, ички IP даректи камсыз кылат, ал гана кластердин ичинде жеткиликтүү.
    • NodePort: Кластердин ар бир түйүнүндө статикалык порт ачат, ал трафикти ClusterIP кызматка багыттайт.
    • LoadBalancer: Чет жактан жүктү теңдештирүүчү түзөт (эгер камсыздоочу колдойт болсо).
    • ExternalName: Кызмат сырткы DNS аталышына шилтеме жасоого мүмкүндүк берет.
  2. DNS: Kubernetes ички DNS серверин камсыз кылат (мисалы, CoreDNS), ал автоматтык түрдө кызматтар үчүн DNS аттарын түзөт. Тиркеме башка кызматка service-name.namespace.svc.cluster.local аты менен же кыскача service-name аркылуу байланыша алат.

  3. Тармактык саясаттар: Алар под топторунун бири-бири менен жана тышкы тармактык чекиттер менен кандайча аракеттешээрин аныктайт. Алар коопсуздук үчүн тармактык трафикти изоляциялоого колдонулат.

    apiVersion: networking.k8s.io/v1
    kind: NetworkPolicy
    metadata:
      name: deny-all-ingress
      namespace: default
    spec:
      podSelector: {} # Бардык поддорго колдонулат, namespace default
      policyTypes:
      - Ingress
      ingress: [] # Бардык кирүү трафигин тыюу салат
    
  4. Ingress: Кластердеги кызматтарга тышкы кирүүнү башкарат, көбүнчө HTTP/HTTPS аркылуу. Ingress контроллери (мисалы, Nginx Ingress, Traefik) тышкы тармактан келген трафикти Ingress ресурсуна белгиленген эрежелер боюнча ички кызматтарга багыттайт.

  5. Service Mesh: (мисалы, Istio, Linkerd) кызматтардын өз ара аракеттешүүсүнө кошумча деңгээл жана функционалдуулук кошот. Ал mutual TLS, суроо-талаптарды трассировкалоо, метрикалар, трафикти башкаруу (A/B тесттер, канардык чыгарылыштар) сыяктуу мүмкүнчүлүктөрдү камсыз кылат, ал эми прокси-серверлер (sidecar-контейнерлер) деңгээлинде иштейт, ар бир подго кошулат.

Ошентип, негизги аракеттешүү механизмдери DNS аркылуу кызматтарды табуу жана ар кандай түрдөгү кызматтар, коопсуздук үчүн тармактык саясаттар жана трафикти башкаруу жана көзөмөлдөө үчүн Ingress/Service Mesh колдонулат.