ื”ืื ืงืคืงื ื‘-Kubernetes ื˜ื•ื‘?

ืฉืœื•ื ืจื‘, ื”ื‘ืจ!

ืคืขื, ื”ื™ื™ื ื• ื”ืจืืฉื•ื ื™ื ืฉื”ืฆื™ื’ื• ืืช ื”ื ื•ืฉื ืœืฉื•ืง ื”ืจื•ืกื™ ืงืคืงื ื•ื”ืžืฉืš ื‘ืฆืข ืœืคื™ืชื•ื— ืฉืœื”. ื‘ืคืจื˜, ืžืฆืื ื• ืืช ื ื•ืฉื ื”ืื™ื ื˜ืจืืงืฆื™ื” ื‘ื™ืŸ ืงืคืงื ืœื‘ื™ืŸ ืงื•ื‘ืจื ื˜. ื ื™ืชืŸ ืœืฆืคื™ื™ื” (ื•ื“ื™ ื–ื”ื™ืจ) ืžืืžืจ ื ื•ืฉื ื–ื” ืคื•ืจืกื ื‘ื‘ืœื•ื’ Confluent ืขื•ื“ ื‘ืื•ืงื˜ื•ื‘ืจ ื‘ืฉื ื” ืฉืขื‘ืจื” ืชื—ืช ืžื—ื‘ืจื” ืฉืœ ื’ื•ื•ืŸ ืฉืคื™ืจื. ื”ื™ื•ื ื‘ืจืฆื•ื ื ื• ืœื”ืกื‘ ืืช ืชืฉื•ืžืช ืœื‘ื›ื ืœืžืืžืจ ืขื“ื›ื ื™ ื™ื•ืชืจ ืžืืคืจื™ืœ ืžืืช ื™ื•ื”ืŸ ื’ื™ื’ืจ, ืฉืœืžืจื•ืช ืฉืœื ื‘ืœื™ ืกื™ืžืŸ ืฉืืœื” ื‘ื›ื•ืชืจืช, ื‘ื•ื—ืŸ ืืช ื”ื ื•ืฉื ื‘ืฆื•ืจื” ื™ื•ืชืจ ืžื”ื•ืชื™ืช, ืžืœื•ื•ื” ืืช ื”ื˜ืงืกื˜ ื‘ืงื™ืฉื•ืจื™ื ืžืขื ื™ื™ื ื™ื. ืื ื ืกืœื— ืœื ื• ืขืœ ื”ืชืจื’ื•ื ื”ื—ื•ืคืฉื™ ืฉืœ "ืงื•ืฃ ื›ืื•ืก" ืื ืืชื” ื™ื›ื•ืœ!

ื”ืื ืงืคืงื ื‘-Kubernetes ื˜ื•ื‘?

ืžื‘ื•ื

Kubernetes ื ื•ืขื“ ืœื”ืชืžื•ื“ื“ ืขื ืขื•ืžืกื™ ืขื‘ื•ื“ื” ื—ืกืจื™ ืžื“ื™ื ื”. ื‘ื“ืจืš ื›ืœืœ, ืขื•ืžืกื™ ืขื‘ื•ื“ื” ื›ืืœื” ืžื•ืฆื’ื™ื ื‘ืฆื•ืจื” ืฉืœ ืืจื›ื™ื˜ืงื˜ื•ืจืช ืžื™ืงืจื•-ืฉื™ืจื•ืชื™ื, ื”ื ืงืœื™ื, ืžืชืจื—ื‘ื™ื ื”ื™ื˜ื‘ ื‘ืฆื•ืจื” ืื•ืคืงื™ืช, ืขื•ืงื‘ื™ื ืื—ืจ ื”ืขืงืจื•ื ื•ืช ืฉืœ ื™ื™ืฉื•ืžื™ื ืฉืœ 12 ื’ื•ืจืžื™ื, ื•ื™ื›ื•ืœื™ื ืœืขื‘ื•ื“ ืขื ืžืคืกืงื™ื ื•ืงื•ืคื™ ื›ืื•ืก.

ืงืคืงื, ืœืขื•ืžืช ื–ืืช, ืคื•ืขืœ ื‘ืขืฆื ื›ืžืกื“ ื ืชื•ื ื™ื ืžื‘ื•ื–ืจ. ืœื›ืŸ, ื›ืฉืืชื” ืขื•ื‘ื“, ืืชื” ืฆืจื™ืš ืœื”ืชืžื•ื“ื“ ืขื ื”ืžื“ื™ื ื”, ื•ื–ื” ื”ืจื‘ื” ื™ื•ืชืจ ื›ื‘ื“ ืžืฉื™ืจื•ืช ืžื™ืงืจื•. Kubernetes ืชื•ืžืš ื‘ืขื•ืžืกื™ื ืžืฆื‘ื™ื™ื, ืื‘ืœ ื›ืคื™ ืฉ-Kelsey Hightower ืžืฆื™ื™ื ืช ื‘ืฉื ื™ ืฆื™ื•ืฆื™ื, ื™ืฉ ืœื˜ืคืœ ื‘ื”ื ื‘ื–ื”ื™ืจื•ืช:

ื™ืฉ ืื ืฉื™ื ืฉืžืจื’ื™ืฉื™ื ืฉืื ืืชื” ืžื’ืœื’ืœ ืืช Kubernetes ืœืขื•ืžืก ืขื‘ื•ื“ื” ืžืžืœื›ืชื™, ื–ื” ื”ื•ืคืš ืœืžืกื“ ื ืชื•ื ื™ื ืžื ื•ื”ืœ ื‘ืžืœื•ืื• ืฉืžืชื—ืจื” ื‘-RDS. ื–ื” ืœื ื ื›ื•ืŸ. ืื•ืœื™, ืื ืชืขื‘ื•ื“ ืงืฉื” ืžืกืคื™ืง, ืชื•ืกื™ืฃ ืจื›ื™ื‘ื™ื ื ื•ืกืคื™ื ื•ืชืžืฉื•ืš ืฆื•ื•ืช ืฉืœ ืžื”ื ื“ืกื™ SRE, ืชื•ื›ืœ ืœื‘ื ื•ืช RDS ืขืœ ื’ื‘ื™ Kubernetes.

ืื ื™ ืชืžื™ื“ ืžืžืœื™ืฅ ืœื›ื•ืœื ืœื ืงื•ื˜ ื‘ื–ื”ื™ืจื•ืช ื™ืชืจื” ื‘ืขืช ื”ืคืขืœืช ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืงื‘ื•ืขื™ื ืขืœ Kubernetes. ืœืจื•ื‘ ื”ืื ืฉื™ื ืฉืฉื•ืืœื™ื "ื”ืื ืื ื™ ื™ื›ื•ืœ ืœื”ืคืขื™ืœ ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืžืžืœื›ืชื™ื™ื ืขืœ Kubernetes" ืื™ืŸ ืžืกืคื™ืง ื ื™ืกื™ื•ืŸ ืขื Kubernetes, ื•ืœืขืชื™ื ืงืจื•ื‘ื•ืช ืขื ืขื•ืžืก ื”ืขื‘ื•ื“ื” ืฉื”ื ืฉื•ืืœื™ื ืขืœื™ื•.

ืื–, ื”ืื ืœื”ืคืขื™ืœ ืืช ืงืคืงื ื‘-Kubernetes? ืฉืืœืช ื ื’ื“: ื”ืื ืงืคืงื ื™ืขื‘ื•ื“ ื˜ื•ื‘ ื™ื•ืชืจ ืœืœื Kubernetes? ืœื›ืŸ ืื ื™ ืจื•ืฆื” ืœื”ื“ื’ื™ืฉ ื‘ืžืืžืจ ื–ื” ื›ื™ืฆื“ ืงืคืงื ื•ืงื•ื‘ืจื ื˜ืก ืžืฉืœื™ืžื™ื ื–ื” ืืช ื–ื”, ื•ืื™ืœื• ืžืœื›ื•ื“ื•ืช ื™ื›ื•ืœื•ืช ืœื‘ื•ื ื‘ืฉื™ืœื•ื‘ ื‘ื™ื ื™ื”ื.

ื–ืžืŸ ื”ื”ืฉืœืžื”

ื‘ื•ืื• ื ื“ื‘ืจ ืขืœ ื”ื“ื‘ืจ ื”ื‘ืกื™ืกื™ โ€“ ืกื‘ื™ื‘ืช ื–ืžืŸ ื”ืจื™ืฆื” ืขืฆืžื”

ืชื”ืœื™ืš

ืžืชื•ื•ื›ื™ื ืฉืœ ืงืคืงื ื”ื ื™ื“ื™ื“ื•ืชื™ื™ื ืœืžืขื‘ื“. TLS ืขืฉื•ื™ ืœื”ืฆื™ื’ ืชืงื•ืจื” ืžืกื•ื™ืžืช. ืขื ื–ืืช, ืœืงื•ื—ื•ืช ืงืคืงื ืขืฉื•ื™ื™ื ืœื”ื™ื•ืช ื™ื•ืชืจ ืื™ื ื˜ื ืกื™ื‘ื™ื™ื ื‘ืžืขื‘ื“ ืื ื”ื ืžืฉืชืžืฉื™ื ื‘ื”ืฆืคื ื”, ืื‘ืœ ื–ื” ืœื ืžืฉืคื™ืข ืขืœ ื‘ืจื•ืงืจื™ื.

ื–ื™ื›ืจื•ืŸ

ืžืชื•ื•ื›ื™ื ืฉืœ ืงืคืงื ืื•ื›ืœื™ื ื–ื™ื›ืจื•ืŸ. ื’ื•ื“ืœ ืขืจื™ืžืช ื”-JVM ืžื•ื’ื‘ืœ ื‘ื“ืจืš ื›ืœืœ ืœ-4-5 ื’'ื™ื’ื”-ื‘ื™ื™ื˜, ืืš ืชื–ื“ืงืง ื’ื ืœื–ื™ื›ืจื•ืŸ ืžืขืจื›ืช ืจื‘ ืžื›ื™ื•ื•ืŸ ืฉืงืคืงื ืžืฉืชืžืฉ ื‘ืžื˜ืžื•ืŸ ื”ืขืžื•ื“ื™ื ื‘ื›ื‘ื“ื•ืช ืจื‘ื”. ื‘-Kubernetes, ื”ื’ื“ืจ ืžื’ื‘ืœื•ืช ืฉืœ ืžืฉืื‘ื™ ืžื™ื›ืœ ื•ื‘ืงืฉื•ืช ื‘ื”ืชืื.

ืžื—ืกืŸ ื ืชื•ื ื™ื

ืื—ืกื•ืŸ ื”ื ืชื•ื ื™ื ื‘ืงื•ื ื˜ื™ื™ื ืจื™ื ื”ื•ื ื—ื•ืœืฃ - ื ืชื•ื ื™ื ืื•ื‘ื“ื™ื ื‘ืขืช ื”ืคืขืœื” ืžื—ื“ืฉ. ืขื‘ื•ืจ ื ืชื•ื ื™ ืงืคืงื ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื ืคื— emptyDir, ื•ื”ืืคืงื˜ ื™ื”ื™ื” ื“ื•ืžื”: ื ืชื•ื ื™ ื”ื‘ืจื•ืงืจ ืฉืœืš ื™ืื‘ื“ื• ืœืื—ืจ ื”ืฉืœืžืชื. ืขื“ื™ื™ืŸ ื ื™ืชืŸ ืœืื—ืกืŸ ืืช ื”ื”ื•ื“ืขื•ืช ืฉืœืš ื‘ื‘ืจื•ืงืจื™ื ืื—ืจื™ื ื›ืขื•ืชืงื™ื. ืœื›ืŸ, ืœืื—ืจ ื”ืคืขืœื” ืžื—ื“ืฉ, ื”ื‘ืจื•ืงืจ ื”ื›ื•ืฉืœ ื—ื™ื™ื‘ ืงื•ื“ื ื›ืœ ืœืฉื›ืคืœ ืืช ื›ืœ ื”ื ืชื•ื ื™ื, ื•ืชื”ืœื™ืš ื–ื” ื™ื›ื•ืœ ืœืงื—ืช ื”ืจื‘ื” ื–ืžืŸ.

ื–ื• ื”ืกื™ื‘ื” ืฉืืชื” ืฆืจื™ืš ืœื”ืฉืชืžืฉ ื‘ืื—ืกื•ืŸ ื ืชื•ื ื™ื ืœื˜ื•ื•ื— ืืจื•ืš. ืชืŸ ืœื–ื” ืœื”ื™ื•ืช ืื—ืกื•ืŸ ืœื˜ื•ื•ื— ืืจื•ืš ืœื ืžืงื•ืžื™ ืขื ืžืขืจื›ืช ื”ืงื‘ืฆื™ื XFS ืื•, ืœื™ืชืจ ื“ื™ื•ืง, ext4. ืืœ ืชืฉืชืžืฉ ื‘-NFS. ื”ื–ื”ืจืชื™ ืื•ืชืš. ื’ืจืกืื•ืช NFS v3 ืื• v4 ืœื ื™ืขื‘ื“ื•. ื‘ืงื™ืฆื•ืจ, ื”ื‘ืจื•ืงืจ ืฉืœ ืงืคืงื ื™ืงืจื•ืก ืื ื”ื•ื ืœื ื™ื•ื›ืœ ืœืžื—ื•ืง ืืช ืกืคืจื™ื™ืช ื”ื ืชื•ื ื™ื ื‘ื’ืœืœ ื‘ืขื™ื™ืช "ืฉื™ื ื•ื™ ืฉื ื˜ื™ืคืฉื™" ื‘-NFS. ืื ืขื“ื™ื™ืŸ ืœื ืฉื›ื ืขืชื™ ืื•ืชืš, ื‘ื–ื”ื™ืจื•ืช ืจื‘ื” ืœืงืจื•ื ืืช ื”ืžืืžืจ ื”ื–ื”. ืžืื’ืจ ื”ื ืชื•ื ื™ื ืฆืจื™ืš ืœื”ื™ื•ืช ืœื ืžืงื•ืžื™ ื›ื“ื™ ืฉ-Kubernetes ืชื•ื›ืœ ืœื‘ื—ื•ืจ ื‘ืฆื•ืจื” ื’ืžื™ืฉื” ื™ื•ืชืจ ืฆื•ืžืช ื—ื“ืฉ ืœืื—ืจ ื”ืคืขืœื” ืžื—ื“ืฉ ืื• ื”ืขื‘ืจื”.

ืจืฉืช

ื›ืžื• ื‘ืจื•ื‘ ื”ืžืขืจื›ื•ืช ื”ืžื‘ื•ื–ืจื•ืช, ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ืงืคืงื ืชืœื•ื™ื™ื ืžืื•ื“ ื‘ืฉืžื™ืจื” ืขืœ ื–ืžืŸ ื”ืฉื”ื™ื™ืช ื”ืจืฉืช ืœืžื™ื ื™ืžื•ื ื•ื‘ืจื•ื—ื‘ ื”ืคืก ืœืžืงืกื™ืžื•ื. ืืœ ืชื ืกื” ืœืืจื— ืืช ื›ืœ ื”ื‘ืจื•ืงืจื™ื ื‘ืื•ืชื• ืฆื•ืžืช, ืžื›ื™ื•ื•ืŸ ืฉื–ื” ื™ืงื˜ื™ืŸ ืืช ื”ื–ืžื™ื ื•ืช. ืื ืฆื•ืžืช Kubernetes ื ื›ืฉืœ, ื›ืœ ืืฉื›ื•ืœ ืงืคืงื ื™ื™ื›ืฉืœ. ื›ืžื• ื›ืŸ, ืืœ ืชืคื–ืจ ืืช ืืฉื›ื•ืœ ืงืคืงื ืขืœ ืคื ื™ ืžืจื›ื–ื™ ื ืชื•ื ื™ื ืฉืœืžื™ื. ืื•ืชื• ื“ื‘ืจ ืœื’ื‘ื™ ืืฉื›ื•ืœ Kubernetes. ืคืฉืจื” ื˜ื•ื‘ื” ื‘ืžืงืจื” ื–ื” ื”ื™ื ืœื‘ื—ื•ืจ ืื–ื•ืจื™ ื–ืžื™ื ื•ืช ืฉื•ื ื™ื.

ืชึฐืฆื•ึผืจึธื”

ืžื ื™ืคืกื˜ื™ื ืงื‘ื•ืขื™ื

ืœืืชืจ Kubernetes ื™ืฉ ืžื“ืจื™ืš ื˜ื•ื‘ ืžืื•ื“ ื›ื™ืฆื“ ืœื”ื’ื“ื™ืจ ืืช ZooKeeper ื‘ืืžืฆืขื•ืช ืžื ื™ืคืกื˜ื™ื. ืžื›ื™ื•ื•ืŸ ืฉ-ZooKeeper ื”ื•ื ื—ืœืง ืžืงืคืงื, ื–ื”ื• ืžืงื•ื ื˜ื•ื‘ ืœื”ืชื—ื™ืœ ื‘ื• ื›ื“ื™ ืœื”ื›ื™ืจ ืืช ื”ืžื•ืฉื’ื™ื ืฉืœ Kubernetes ื—ืœื™ื ื›ืืŸ. ื‘ืจื’ืข ืฉืืชื” ืžื‘ื™ืŸ ื–ืืช, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืื•ืชื ืžื•ืฉื’ื™ื ืขื ืืฉื›ื•ืœ ืงืคืงื.

  • ืชื—ืช: ืคื•ื“ ื”ื•ื ื”ื™ื—ื™ื“ื” ื”ื ื™ืชื ืช ืœืคืจื™ืกื” ื”ืงื˜ื ื” ื‘ื™ื•ืชืจ ื‘-Kubernetes. ืคื•ื“ ืžื›ื™ืœ ืืช ืขื•ืžืก ื”ืขื‘ื•ื“ื” ืฉืœืš, ื•ื”ืคื•ื“ ืขืฆืžื• ืžืชืื™ื ืœืชื”ืœื™ืš ื‘ืืฉื›ื•ืœ ืฉืœืš. ืชืจืžื™ืœ ืžื›ื™ืœ ืžื™ื›ืœ ืื—ื“ ืื• ื™ื•ืชืจ. ื›ืœ ืฉืจืช ZooKeeper ื‘ืื ืกืžื‘ืœ ื•ื›ืœ ื‘ืจื•ืงืจ ื‘ืืฉื›ื•ืœ ืงืคืงื ื™ืคืขืœื• ื‘ืคื•ื“ ื ืคืจื“.
  • StatefulSet: StatefulSet ื”ื•ื ืื•ื‘ื™ื™ืงื˜ Kubernetes ื”ืžื˜ืคืœ ื‘ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืžืจื•ื‘ื™ื, ื•ืขื•ืžืกื™ ืขื‘ื•ื“ื” ื›ืืœื” ื“ื•ืจืฉื™ื ืชื™ืื•ื. StatefulSets ืžืกืคืงื™ื ืขืจื‘ื•ื™ื•ืช ืœื’ื‘ื™ ื”ื–ืžื ืช ื”ืคื•ื“ื™ื ื•ื”ื™ื™ื—ื•ื“ื™ื•ืช ืฉืœื”ื.
  • ืฉื™ืจื•ืชื™ื ืœืœื ืจืืฉ: ืฉื™ืจื•ืชื™ื ืžืืคืฉืจื™ื ืœืš ืœื ืชืง ืคื•ื“ื™ื ืžืœืงื•ื—ื•ืช ื‘ืืžืฆืขื•ืช ืฉื ื”ื’ื™ื•ื ื™. Kubernetes ื‘ืžืงืจื” ื–ื” ืื—ืจืื™ืช ืขืœ ืื™ื–ื•ืŸ ืขื•ืžืกื™ื. ืขื ื–ืืช, ื›ืืฉืจ ืžืคืขื™ืœื™ื ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืงื‘ื•ืขื™ื, ื›ื’ื•ืŸ ZooKeeper ื•ืงืคืงื, ืœืงื•ื—ื•ืช ืฆืจื™ื›ื™ื ืœืชืงืฉืจ ืขื ืžื•ืคืข ืกืคืฆื™ืคื™. ื–ื” ื”ืžืงื•ื ืฉื‘ื• ืฉื™ืจื•ืชื™ื ื—ืกืจื™ ืจืืฉ ืžื•ืขื™ืœื™ื: ื‘ืžืงืจื” ื–ื”, ืœืœืงื•ื— ืขื“ื™ื™ืŸ ื™ื”ื™ื” ืฉื ื”ื’ื™ื•ื ื™, ืืš ืœื ืชืฆื˜ืจืš ืœื™ืฆื•ืจ ืงืฉืจ ื™ืฉื™ืจื•ืช ืขื ื”ืคื•ื“.
  • ื ืคื— ืื—ืกื•ืŸ ืœื˜ื•ื•ื— ืืจื•ืš: ืืžืฆืขื™ ืื—ืกื•ืŸ ืืœื” ื ื—ื•ืฆื™ื ื›ื“ื™ ืœื”ื’ื“ื™ืจ ืืช ื”ืื—ืกื•ืŸ ื”ืงื‘ื•ืข ื‘ืœื•ืง ืœื ืžืงื•ืžื™ ืฉื”ื•ื–ื›ืจ ืœืขื™ืœ.

ืขืœ ื™ื•ืœื™ืŸ ืžืกืคืง ืกื˜ ืžืงื™ืฃ ืฉืœ ืžื ื™ืคืกื˜ื™ื ืฉื™ืขื–ืจื• ืœืš ืœื”ืชื—ื™ืœ ืขื ืงืคืงื ื‘-Kubernetes.

ืชืจืฉื™ืžื™ ื”ื’ื”

Helm ื”ื•ื ืžื ื”ืœ ื—ื‘ื™ืœื•ืช ืขื‘ื•ืจ Kubernetes ืฉื ื™ืชืŸ ืœื”ืฉื•ื•ืช ืœืžื ื”ืœื™ ื—ื‘ื™ืœื•ืช ืžืขืจื›ืช ื”ืคืขืœื” ื›ื’ื•ืŸ yum, apt, Homebrew ืื• Chocolatey. ื–ื” ืžืงืœ ืขืœ ื”ืชืงื ืช ื—ื‘ื™ืœื•ืช ืชื•ื›ื ื” ืžื•ื’ื“ืจื•ืช ืžืจืืฉ ื”ืžืชื•ืืจื•ืช ื‘ืชืจืฉื™ืžื™ื ืฉืœ Helm. ื˜ื‘ืœืช Helm ืฉื ื‘ื—ืจื” ื”ื™ื˜ื‘ ื”ื•ืคื›ืช ืืช ื”ืžืฉื™ืžื” ื”ืงืฉื” ืฉืœ ืื™ืš ืœื”ื’ื“ื™ืจ ื ื›ื•ืŸ ืืช ื›ืœ ื”ืคืจืžื˜ืจื™ื ืœืฉื™ืžื•ืฉ ื‘ืงืคืงื ื‘-Kubernetes ืœืงืœื”. ื™ืฉ ื›ืžื” ื“ื™ืื’ืจืžื•ืช ืฉืœ ืงืคืงื: ื”ืจืฉืžื™ ื ืžืฆื ื‘ืžืฆื‘ ืื™ื ืงื•ื‘ื˜ื•ืจ, ื™ืฉ ืื—ื“ ืž ืฆื•ืžืช, ืขื•ื“ ืื—ื“ - ืž Bitnami.

ืื•ืคืจื˜ื•ืจื™ื

ืžื›ื™ื•ื•ืŸ ืฉืœื”ืœื ื™ืฉ ื—ืกืจื•ื ื•ืช ืžืกื•ื™ืžื™ื, ื›ืœื™ ื ื•ืกืฃ ืฆื•ื‘ืจ ืคื•ืคื•ืœืจื™ื•ืช ื ื™ื›ืจืช: ืžืคืขื™ืœื™ Kubernetes. ื”ืžืคืขื™ืœ ืœื ืจืง ืื•ืจื– ืชื•ื›ื ื” ืขื‘ื•ืจ Kubernetes, ืืœื ื’ื ืžืืคืฉืจ ืœืš ืœืคืจื•ืก ืชื•ื›ื ื” ื›ื–ื• ื•ืœื ื”ืœ ืื•ืชื”.

ะ’ ัะฟะธัะบะต ืžืคืขื™ืœื™ื ืžื“ื”ื™ืžื™ื ืžื•ื–ื›ืจื™ื ืฉื ื™ ืžืคืขื™ืœื™ื ืฉืœ ืงืคืงื. ืื—ื“ ืžื”ื - ืกื˜ืจื™ืžื–ื™. ืขื Strimzi, ืงืœ ืœื”ืคืขื™ืœ ืืช ืืฉื›ื•ืœ ืงืคืงื ืฉืœืš ืชื•ืš ื“ืงื•ืช. ื›ืžืขื˜ ื•ืœื ื ื“ืจืฉืช ืชืฆื•ืจื”, ื‘ื ื•ืกืฃ, ื”ืžืคืขื™ืœ ืขืฆืžื• ืžืกืคืง ื›ืžื” ืชื›ื•ื ื•ืช ื ื—ืžื“ื•ืช, ืœืžืฉืœ, ื”ืฆืคื ืช TLS ืžื ืงื•ื“ื” ืœื ืงื•ื“ื” ื‘ืชื•ืš ื”ืืฉื›ื•ืœ. Confluent ืžืกืคืง ื’ื ืžืคืขื™ืœ ืžืฉืœื•.

ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช

ื—ืฉื•ื‘ ืœื‘ื—ื•ืŸ ืืช ื”ื‘ื™ืฆื•ืขื™ื ืขืœ ื™ื“ื™ ื”ืฉื•ื•ืืช ืžื•ืคืข ืงืคืงื ืฉืœืš. ื‘ื“ื™ืงื•ืช ื›ืืœื” ื™ืขื–ืจื• ืœืš ืœืžืฆื•ื ืฆื•ื•ืืจื™ ื‘ืงื‘ื•ืง ืคื•ื˜ื ืฆื™ืืœื™ื™ื ืœืคื ื™ ืฉื™ืชืจื—ืฉื• ื‘ืขื™ื•ืช. ืœืžืจื‘ื” ื”ืžื–ืœ, ืงืคืงื ื›ื‘ืจ ืžืกืคืง ืฉื ื™ ื›ืœื™ื ืœื‘ื“ื™ืงืช ื‘ื™ืฆื•ืขื™ื: kafka-producer-perf-test.sh ะธ kafka-consumer-perf-test.sh. ืขืฉื” ื‘ื”ื ืฉื™ืžื•ืฉ ืคืขื™ืœ. ืœืขื™ื•ืŸ, ืืชื” ื™ื›ื•ืœ ืœืขื™ื™ืŸ ื‘ืชื•ืฆืื•ืช ื”ืžืชื•ืืจื•ืช ื‘ ื”ืคื•ืกื˜ ื”ื–ื” ื’'ื™ื™ ืงืจืคืก, ืื• ืœื”ืชืžืงื“ ืกืงื™ืจื” ื–ื• ืืžื–ื•ืŸ MSK ืžืืช ืกื˜ืคืŸ ืžืืจืง.

ืคืขื•ืœื•ืช

ื ื™ื˜ื•ืจ

ืฉืงื™ืคื•ืช ื‘ืžืขืจื›ืช ื—ืฉื•ื‘ื” ืžืื•ื“ - ืื—ืจืช ืœื ืชื‘ื™ื ื• ืžื” ืงื•ืจื” ื‘ื”. ื›ื™ื•ื ื™ืฉ ืขืจื›ืช ื›ืœื™ื ืžื•ืฆืงื” ื”ืžืกืคืงืช ื ื™ื˜ื•ืจ ืžื‘ื•ืกืก ืžื“ื“ื™ื ื‘ืกื’ื ื•ืŸ native ื‘ืขื ืŸ. ืฉื ื™ ื›ืœื™ื ืคื•ืคื•ืœืจื™ื™ื ืœืžื˜ืจื” ื–ื• ื”ื ืคืจื•ืžืชืื•ืก ื•ื’ืจืคืื ื”. ืคืจื•ืžืชืื•ืก ื™ื›ื•ืœ ืœืืกื•ืฃ ืžื“ื“ื™ื ืžื›ืœ ืชื”ืœื™ื›ื™ Java (Kafka, Zookeeper, Kafka Connect) ื‘ืืžืฆืขื•ืช ื™ืฆื•ืืŸ JMX - ื‘ืฆื•ืจื” ื”ืคืฉื•ื˜ื” ื‘ื™ื•ืชืจ. ืื ืชื•ืกื™ืฃ ืžื“ื“ื™ cAdvisor, ืชื•ื›ืœ ืœื”ื‘ื™ืŸ ื™ื•ืชืจ ื›ื™ืฆื“ ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘ืžืฉืื‘ื™ื ื‘-Kubernetes.

ืœ-Strimzi ื™ืฉ ื“ื•ื’ืžื” ื ื•ื—ื” ืžืื•ื“ ืœืœื•ื— ืžื—ื•ื•ื ื™ื ืฉืœ Grafana ืขื‘ื•ืจ ืงืคืงื. ื”ื•ื ืžื“ืžื™ื™ืŸ ืžื“ื“ื™ ืžืคืชื—, ืœืžืฉืœ, ืœื’ื‘ื™ ืžื’ื–ืจื™ื ืœื ืžืฉื•ื›ืคืœื™ื ืื• ื›ืืœื” ืฉืื™ื ื ืžืงื•ื•ื ื™ื. ื”ื›ืœ ืžืื•ื“ ื‘ืจื•ืจ ืฉื. ืžื“ื“ื™ื ืืœื” ืžืฉืœื™ืžื™ื ืขืœ ื™ื“ื™ ืžื™ื“ืข ืขืœ ื ื™ืฆื•ืœ ืžืฉืื‘ื™ื ื•ื‘ื™ืฆื•ืขื™ื, ื›ืžื• ื’ื ืžื“ื“ื™ ื™ืฆื™ื‘ื•ืช. ืื– ืืชื” ืžืงื‘ืœ ื ื™ื˜ื•ืจ ืืฉื›ื•ืœื•ืช ืงืคืงื ื‘ืกื™ืกื™ ื‘ื—ื™ื ื!

ื”ืื ืงืคืงื ื‘-Kubernetes ื˜ื•ื‘?

ืžืงื•ืจ: streamzi.io/docs/master/#kafka_dashboard

ื–ื” ื™ื”ื™ื” ื ื—ืžื“ ืœื”ืฉืœื™ื ืืช ื›ืœ ื–ื” ืขื ื ื™ื˜ื•ืจ ืœืงื•ื—ื•ืช (ืžื“ื“ื™ื ืขืœ ืฆืจื›ื ื™ื ื•ื™ืฆืจื ื™ื), ื›ืžื• ื’ื ื ื™ื˜ื•ืจ ื—ื‘ื™ื•ืŸ (ื‘ืฉื‘ื™ืœ ื–ื” ื™ืฉ ืœึดื ึฐื‘ึผื•ึผืจ) ื•ื ื™ื˜ื•ืจ ืžืงืฆื” ืœืงืฆื” - ืœืฉื™ืžื•ืฉ ื–ื” ืงืคืงื ืžื•ื ื™ื˜ื•ืจ.

ืจื™ืฉื•ื

ืจื™ืฉื•ื ื”ื•ื ืขื•ื“ ืžืฉื™ืžื” ืงืจื™ื˜ื™ืช. ื•ื“ื ืฉื›ืœ ื”ืžื™ื›ืœื™ื ื‘ื”ืชืงื ืช Kafka ืฉืœืš ืžื—ื•ื‘ืจื™ื stdout ะธ stderr, ื•ื’ื ืœื”ื‘ื˜ื™ื— ืฉืืฉื›ื•ืœ Kubernetes ืฉืœืš ืื•ืกืฃ ืืช ื›ืœ ื”ื™ื•ืžื ื™ื ืœืชื•ืš ืชืฉืชื™ืช ืจื™ืฉื•ื ืžืจื›ื–ื™ืช, ืœืžืฉืœ. Elasticsearch.

ื‘ื“ื™ืงืช ื‘ืจื™ืื•ืช

Kubernetes ืžืฉืชืžืฉืช ื‘ื‘ื“ื™ืงื•ืช ื—ื™ื•ื ื™ื•ืช ื•ืžื•ื›ื ื•ืช ื›ื“ื™ ืœื‘ื“ื•ืง ืื ื”ืคื•ื“ื™ื ืฉืœืš ืคื•ืขืœื™ื ื›ืจื’ื™ืœ. ืื ื‘ื“ื™ืงืช ื”ื—ื™ื™ื ื ื›ืฉืœืช, Kubernetes ืชืขืฆื•ืจ ืืช ื”ืžื™ื›ืœ ื”ื–ื” ื•ืœืื—ืจ ืžื›ืŸ ืชืคืขื™ืœ ืื•ืชื• ืžื—ื“ืฉ ืื ืžื“ื™ื ื™ื•ืช ื”ื”ืคืขืœื” ืžื—ื“ืฉ ืžื•ื’ื“ืจืช ื‘ื”ืชืื. ืื ื‘ื“ื™ืงืช ื”ืžื•ื›ื ื•ืช ื ื›ืฉืœืช, Kubernetes ืžื‘ื•ื“ื“ืช ืืช ื”ืคื•ื“ ืžื‘ืงืฉื•ืช ืฉื™ืจื•ืช. ื›ืš ืฉื‘ืžืงืจื™ื ื›ืืœื” ื›ื‘ืจ ืœื ื ื“ืจืฉืช ื”ืชืขืจื‘ื•ืช ื™ื“ื ื™ืช ื›ืœืœ, ื•ื–ื” ื™ืชืจื•ืŸ ื’ื“ื•ืœ.

ื”ืคืงืช ืขื“ื›ื•ื ื™ื

StatefulSets ืชื•ืžื›ื™ื ื‘ืขื“ื›ื•ื ื™ื ืื•ื˜ื•ืžื˜ื™ื™ื: ืื ืชื‘ื—ืจ ื‘ืืกื˜ืจื˜ื’ื™ื™ืช RollingUpdate, ื›ืœ ืื—ื“ ืชื—ืช ืงืคืงื ื™ืขื•ื“ื›ืŸ ื‘ืชื•ืจื•. ื‘ื“ืจืš ื–ื•, ื ื™ืชืŸ ืœืฆืžืฆื ืืช ื–ืžืŸ ื”ื”ืฉื‘ืชื” ืœืืคืก.

ืฉื™ื ื•ื™ ืงื ื” ืžื™ื“ื”

ืงื ื” ืžื™ื“ื” ืฉืœ ืืฉื›ื•ืœ ืงืคืงื ืื™ื ื• ืžืฉื™ืžื” ืงืœื”. ืขื ื–ืืช, Kubernetes ืžืงืœ ืžืื•ื“ ืขืœ ืงื ื” ืžื™ื“ื” ืฉืœ ืชืจืžื™ืœื™ื ืœืžืกืคืจ ืžืกื•ื™ื ืฉืœ ื”ืขืชืงื™ื, ืžื” ืฉืื•ืžืจ ืฉืืชื” ื™ื›ื•ืœ ืœื”ื’ื“ื™ืจ ื‘ืื•ืคืŸ ื”ืฆื”ืจืชื™ ื›ืžื” ืžืชื•ื•ื›ื™ื ืฉืœ ืงืคืงื ืฉืชืจืฆื”. ื”ื“ื‘ืจ ื”ืงืฉื” ื‘ื™ื•ืชืจ ื‘ืžืงืจื” ื–ื” ื”ื•ื ื”ืงืฆืื” ืžื—ื“ืฉ ืฉืœ ืกืงื˜ื•ืจื™ื ืœืื—ืจ ื”ื’ื“ืœื” ืื• ืœืคื ื™ ื”ื’ื“ืœื”. ืฉื•ื‘, Kubernetes ื™ืขื–ื•ืจ ืœืš ื‘ืžืฉื™ืžื” ื–ื•.

ืžื™ื ื”ืœ

ื ื™ืชืŸ ืœื‘ืฆืข ืžืฉื™ืžื•ืช ื”ืงืฉื•ืจื•ืช ืœื ื™ื”ื•ืœ ืืฉื›ื•ืœ ืงืคืงื ืฉืœืš, ื›ื’ื•ืŸ ื™ืฆื™ืจืช ื ื•ืฉืื™ื ื•ื”ืงืฆืื” ืžื—ื“ืฉ ืฉืœ ืกืงื˜ื•ืจื™ื, ื‘ืืžืฆืขื•ืช ืกืงืจื™ืคื˜ื™ื ืฉืœ ืžืขื˜ืคืช ืงื™ื™ืžื™ื ืขืœ ื™ื“ื™ ืคืชื™ื—ืช ืžืžืฉืง ืฉื•ืจืช ื”ืคืงื•ื“ื” ื‘ืชืจืžื™ืœื™ื ืฉืœืš. ืขื ื–ืืช, ืคืชืจื•ืŸ ื–ื” ืื™ื ื• ื™ืคื” ื‘ืžื™ื•ื—ื“. Strimzi ืชื•ืžืš ื‘ื ื™ื”ื•ืœ ื ื•ืฉืื™ื ื‘ืืžืฆืขื•ืช ืื•ืคืจื˜ื•ืจ ืื—ืจ. ื™ืฉ ื›ืืŸ ืžืงื•ื ืœืฉื™ืคื•ืจ.

ื’ื™ื‘ื•ื™ ื•ืฉื—ื–ื•ืจ

ื›ืขืช ื”ื–ืžื™ื ื•ืช ืฉืœ ืงืคืงื ืชื”ื™ื” ืชืœื•ื™ื” ื’ื ื‘ื–ืžื™ื ื•ืช ืฉืœ Kubernetes. ืื ืืฉื›ื•ืœ Kubernetes ืฉืœืš ื ื›ืฉืœ, ืื– ื‘ืžืงืจื” ื”ื’ืจื•ืข ื‘ื™ื•ืชืจ, ื’ื ืืฉื›ื•ืœ ืงืคืงื ืฉืœืš ื™ื™ื›ืฉืœ. ืขืœ ืคื™ ื—ื•ืง ืžืจืคื™, ื–ื” ื‘ื”ื—ืœื˜ ื™ืงืจื”, ื•ืืชื” ืชืื‘ื“ ื ืชื•ื ื™ื. ื›ื“ื™ ืœื”ืคื—ื™ืช ืกื•ื’ ื–ื” ืฉืœ ืกื™ื›ื•ืŸ, ื™ืฉ ืจืขื™ื•ืŸ ื’ื™ื‘ื•ื™ ื˜ื•ื‘. ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘-MirrorMaker, ืืคืฉืจื•ืช ื ื•ืกืคืช ื”ื™ื ืœื”ืฉืชืžืฉ ื‘-S3 ืœืฉื ื›ืš, ื›ืžืชื•ืืจ ื‘ื–ื” ืคื•ืกื˜ ืžื–ืœื ื“ื•.

ืžืกืงื ื”

ื‘ืขื‘ื•ื“ื” ืขื ืืฉื›ื•ืœื•ืช ืงืคืงื ืงื˜ื ื™ื ืขื“ ื‘ื™ื ื•ื ื™ื™ื, ื‘ื”ื—ืœื˜ ื›ื“ืื™ ืœื”ืฉืชืžืฉ ื‘-Kubernetes ืฉื›ืŸ ื”ื•ื ืžืกืคืง ื’ืžื™ืฉื•ืช ื ื•ืกืคืช ื•ืžืคืฉื˜ ืืช ื—ื•ื•ื™ืช ื”ืžืคืขื™ืœ. ืื ื™ืฉ ืœืš ื“ืจื™ืฉื•ืช ื”ืฉื”ื™ื™ื” ื•/ืื• ืชืคื•ืงื” ืžืฉืžืขื•ืชื™ื•ืช ืžืื•ื“ ืฉืื™ื ืŸ ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช, ืื– ืื•ืœื™ ืขื“ื™ืฃ ืœืฉืงื•ืœ ืืคืฉืจื•ืช ืคืจื™ืกื” ืื—ืจืช.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”