ื›ืœื™ื ืœืžืคืชื—ื™ ืืคืœื™ืงืฆื™ื•ืช ื”ืคื•ืขืœื•ืช ืขืœ Kubernetes

ื›ืœื™ื ืœืžืคืชื—ื™ ืืคืœื™ืงืฆื™ื•ืช ื”ืคื•ืขืœื•ืช ืขืœ Kubernetes

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

ืกืงื™ืจื” ื–ื• ืžืกืคืงืช ืžื™ื“ืข ืงืฆืจ ืขืœ ื›ืžื” ืžื”ื›ืœื™ื ืฉืžืงืœื™ื ืขืœ ื”ื—ื™ื™ื ืœืžืชื›ื ืช ืฉื”ืงื•ื“ ืฉืœื• ืคื•ืขืœ ื‘-pod'ax ืฉืœ ืืฉื›ื•ืœ Kubernetes.

ืขื•ื–ืจื™ื ืคืฉื•ื˜ื™ื

Kubectl-debug

  • ื‘ืฉื•ืจื” ื”ืชื—ืชื•ื ื”: ื”ื•ืกืฃ ืืช ื”ืžื™ื›ืœ ืฉืœืš ืœืคื•ื“ ื•ืจืื” ืžื” ืงื•ืจื” ื‘ื•.
  • GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื” ืงืฆืจื” ืฉืœ GH: 715 ื›ื•ื›ื‘ื™ื, 54 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 9 ืชื•ืจืžื™ื.
  • ืฉืคื”: ืœืš.
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

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

ืืชื” ื™ื›ื•ืœ ื’ื ืœืขื‘ื•ืจ ืœืžื™ื›ืœ ื”ืชื”ืœื™ืš ืขืœ ื™ื“ื™ ื”ืคืขืœื” chroot /proc/PID/root - ื–ื” ื™ื›ื•ืœ ืœื”ื™ื•ืช ืžืื•ื“ ื ื•ื— ื›ืืฉืจ ืืชื” ืฆืจื™ืš ืœืงื‘ืœ ืžืขื˜ืคืช ืฉื•ืจืฉ ื‘ืžื™ื›ืœ ืฉืขื‘ื•ืจื• ื”ื•ื ืžื•ื’ื“ืจ ื‘ืžื ื™ืคืกื˜ securityContext.runAs.

ื”ื›ืœื™ ืคืฉื•ื˜ ื•ื™ืขื™ืœ, ื›ืš ืฉื”ื•ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ ืœื›ืœ ืžืคืชื—. ื›ืชื‘ื ื• ืขืœ ื–ื” ื™ื•ืชืจ ื‘ ืžืืžืจ ื ืคืจื“.

ื˜ืœืคืจื ืกื ืก

  • ื‘ืฉื•ืจื” ื”ืชื—ืชื•ื ื”: ืœื”ืขื‘ื™ืจ ืืช ื”ืืคืœื™ืงืฆื™ื” ืœืžื—ืฉื‘ ืฉืœืš. ืคืชื— ื•ื ื™ืคื•ื™ ื‘ืื’ื™ื ืžืงื•ืžื™.
  • ืืชืจ; GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื•ืช GH ืงืฆืจื•ืช: 2131 ื›ื•ื›ื‘ื™ื, 2712 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 33 ืชื•ืจืžื™ื.
  • ืฉืคื”: ืคื™ื™ืชื•ืŸ.
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

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

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

ื›ื‘ืจ ืฉื™ืชืคื ื• ืืช ื”ื ื™ืกื™ื•ืŸ ืฉืœื ื• ื‘ืฉื™ืžื•ืฉ ื‘-Telepresence ื›ืืŸ.

Ksync

  • ื‘ืฉื•ืจื” ื”ืชื—ืชื•ื ื”: ืกื ื›ืจื•ืŸ ื›ืžืขื˜ ืžื™ื™ื“ื™ ืฉืœ ืงื•ื“ ืขื ื”ืžื™ื›ืœ ืฉื‘ืืฉื›ื•ืœ.
  • GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื” ืงืฆืจื” ืฉืœ GH: 555 ื›ื•ื›ื‘ื™ื, 362 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 11 ืชื•ืจืžื™ื.
  • ืฉืคื”: ืœืš.
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

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

ื›ืืฉืจ ืืชื—ื•ืœ ืคืขื ืื—ืช ืขืœ ื™ื“ื™ ื”ืคืงื•ื“ื” ksync init ื ื•ืฆืจ DaemonSet ื‘ืืฉื›ื•ืœ, ื”ืžืฉืžืฉ ืœื ื™ื˜ื•ืจ ืžืฆื‘ ืžืขืจื›ืช ื”ืงื‘ืฆื™ื ืฉืœ ื”ืžื›ื•ืœื” ืฉื ื‘ื—ืจื”. ื‘ืžื—ืฉื‘ ื”ืžืงื•ืžื™ ืฉืœื•, ื”ืžืคืชื— ืžืจื™ืฅ ืืช ื”ืคืงื•ื“ื” ksync watch, ื”ืžื ื˜ืจ ืชืฆื•ืจื•ืช ื•ื”ืจืฆื” syncthing, ื”ืžืกื ื›ืจืŸ ื™ืฉื™ืจื•ืช ืงื‘ืฆื™ื ืขื ื”ืืฉื›ื•ืœ.

ื›ืœ ืžื” ืฉื ื•ืชืจ ื”ื•ื ืœื”ื•ืจื•ืช ืœ- ksync ืžื” ืœืกื ื›ืจืŸ ืขื ืžื”. ืœื“ื•ื’ืžื”, ื”ืคืงื•ื“ื” ื”ื–ื•:

ksync create --name=myproject --namespace=test --selector=app=backend --container=php --reload=false /home/user/myproject/ /var/www/myproject/

...ื™ื™ืฆื•ืจ ืฆื•ืคื” ื‘ืฉื myprojectืฉื™ื—ืคืฉ ืคื•ื“ ืขื ืชื•ื•ื™ืช app=backend ื•ื ืกื” ืœืกื ื›ืจืŸ ืืช ื”ืกืคืจื™ื™ื” ื”ืžืงื•ืžื™ืช /home/user/myproject/ ืขื ืงื˜ืœื•ื’ /var/www/myproject/ ื‘ืžื™ื›ืœ ืฉื ืงืจื php.

ื‘ืขื™ื•ืช ื•ื”ืขืจื•ืช ืขืœ ksync ืžื”ื ื™ืกื™ื•ืŸ ืฉืœื ื•:

  • ื™ืฉ ืœื”ืฉืชืžืฉ ื‘ืฆืžืชื™ ืืฉื›ื•ืœ Kubernetes overlay2 ื›ืžื ื”ืœ ื”ืชืงืŸ ืื—ืกื•ืŸ ืขื‘ื•ืจ Docker. ื”ืฉื™ืจื•ืช ืœื ื™ืขื‘ื•ื“ ืขื ืื—ืจื™ื.
  • ื‘ืขืช ืฉื™ืžื•ืฉ ื‘-Windows ื›ืžืขืจื›ืช ื”ืคืขืœื” ืฉืœ ืœืงื•ื—, ื™ื™ืชื›ืŸ ืฉืฉื•ืžืจ ืžืขืจื›ืช ื”ืงื‘ืฆื™ื ืœื ื™ืคืขืœ ื›ื”ืœื›ื”. ื”ื‘ืื’ ื”ื–ื” ื”ื‘ื—ื™ืŸ ื‘ืขื‘ื•ื“ื” ืขื ืกืคืจื™ื•ืช ื’ื“ื•ืœื•ืช - ืขื ืžืกืคืจ ืจื‘ ืฉืœ ืงื‘ืฆื™ื ื•ืกืคืจื™ื•ืช ืžืงื•ื ื ื•ืช. ื™ืฆืจื ื• ื ื•ืฉื ืจืœื•ื•ื ื˜ื™ ื‘ืคืจื•ื™ืงื˜ ื”ืกื ื›ืจื•ืŸ, ืืš ืื™ืŸ ื‘ื• ืขื“ื™ื™ืŸ ื”ืชืงื“ืžื•ืช (ืžืื– ืชื—ื™ืœืช ื™ื•ืœื™).
  • ื”ืฉืชืžืฉ ื‘ืงื•ื‘ืฅ .stignore ื›ื“ื™ ืœืฆื™ื™ืŸ ื ืชื™ื‘ื™ื ืื• ืชื‘ื ื™ื•ืช ืงื‘ืฆื™ื ืฉืื™ืŸ ืฆื•ืจืš ืœืกื ื›ืจืŸ (ืœื“ื•ื’ืžื”, ืกืคืจื™ื•ืช app/cache ะธ .git).
  • ื›ื‘ืจื™ืจืช ืžื—ื“ืœ, ksync ื™ืคืขื™ืœ ืžื—ื“ืฉ ืืช ื”ืžื™ื›ืœ ื‘ื›ืœ ืคืขื ืฉื”ืงื‘ืฆื™ื ืžืฉืชื ื™ื. ืขื‘ื•ืจ Node.js ื–ื” ื ื•ื—, ืื‘ืœ ืขื‘ื•ืจ PHP ื–ื” ืžื™ื•ืชืจ ืœื—ืœื•ื˜ื™ืŸ. ืขื“ื™ืฃ ืœื›ื‘ื•ืช ืืช opcache ื•ืœื”ืฉืชืžืฉ ื‘ื“ื’ืœ --reload=false.
  • ืชืžื™ื“ ื ื™ืชืŸ ืœืชืงืŸ ืืช ื”ืชืฆื•ืจื” $HOME/.ksync/ksync.yaml.

ืงื™ืฉื•ื

  • ื‘ืฉื•ืจื” ื”ืชื—ืชื•ื ื”: ืื™ืชื•ืจ ื‘ืื’ื™ื ื™ืฉื™ืจื•ืช ื‘ืืฉื›ื•ืœ.
  • GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื” ืงืฆืจื” ืฉืœ GH: 1154 ื›ื•ื›ื‘ื™ื, 279 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 23 ืชื•ืจืžื™ื.
  • ืฉืคื”: ืœืš.
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

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

  • ืœื”ืชืขืžืง - ืขื‘ื•ืจ ื™ื™ืฉื•ืžื™ Go;
  • GDB - ื‘ืืžืฆืขื•ืช ืฉืœื˜ ื™ืขื“ + ื”ืขื‘ืจืช ื™ืฆื™ืื•ืช;
  • ื”ืขื‘ืจืช ื™ืฆื™ืื•ืช JDWP ืขื‘ื•ืจ ืื™ืชื•ืจ ื‘ืื’ื™ื ื‘ื™ื™ืฉื•ืžื™ Java.

ื‘ืฆื“ ื”-IDE, ืชืžื™ื›ื” ื–ืžื™ื ื” ืจืง ื‘-VScode (ื‘ืืžืฆืขื•ืช ื”ืจื—ื‘ื•ืช), ืขื ื–ืืช, ื”ืชื•ื›ื ื™ื•ืช ืœืฉื ื” ื”ื ื•ื›ื—ื™ืช (2019) ื›ื•ืœืœื•ืช Eclipse ื•-Intellij.

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

ืคืชืจื•ื ื•ืช ืžืฉื•ืœื‘ื™ื

ื‘ื•ืื• ื ืขื‘ื•ืจ ืœืชื•ืชื—ื™ื ื”ื›ื‘ื“ื™ื - ืขื•ื“ ืคืจื•ื™ืงื˜ื™ื "ื‘ืงื ื” ืžื™ื“ื” ื’ื“ื•ืœ" ืฉื ื•ืขื“ื• ืœืขื ื•ืช ื‘ืื•ืคืŸ ืžื™ื™ื“ื™ ืขืœ ืจื‘ื™ื ืžื”ืฆืจื›ื™ื ืฉืœ ืžืคืชื—ื™ื.

NB: ื‘ืจืฉื™ืžื” ื–ื•, ื›ืžื•ื‘ืŸ, ื™ืฉ ืžืงื•ื ืœื›ืœื™ ื”ืฉื™ืจื•ืช ืฉืœื ื• ื‘ืงื•ื“ ืคืชื•ื— werf (ืฉื ื•ื“ืข ื‘ืขื‘ืจ ื‘ืฉื dapp). ืขื ื–ืืช, ื›ื‘ืจ ื›ืชื‘ื ื• ื•ื“ื™ื‘ืจื ื• ืขืœ ื›ืš ื™ื•ืชืจ ืžืคืขื ืื—ืช, ื•ืœื›ืŸ ื”ื—ืœื˜ื ื• ืœื ืœื›ืœื•ืœ ืื•ืชื• ื‘ืกืงื™ืจื”. ืœืžื™ ืฉืจื•ืฆื” ืœื”ื›ื™ืจ ื™ื•ืชืจ ืืช ื™ื›ื•ืœื•ืชื™ื•, ืื ื• ืžืžืœื™ืฆื™ื ืœืงืจื•ื/ืœื”ืื–ื™ืŸ ืœื“ื•ื— "werf ื”ื•ื ื”ื›ืœื™ ืฉืœื ื• ืœ-CI/CD ื‘-Kubernetes".

DevSpace

  • ื‘ืฉื•ืจื” ื”ืชื—ืชื•ื ื”: ืœืžื™ ืฉืจื•ืฆื” ืœื”ืชื—ื™ืœ ืœืขื‘ื•ื“ ื‘ืงื•ื‘ืจื ื˜ืก, ืื‘ืœ ืœื ืจื•ืฆื” ืœื”ืขืžื™ืง ืœืชื•ืš ื”ื’'ื•ื ื’ืœ ืฉืœื”.
  • GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื” ืงืฆืจื” ืฉืœ GH: 630 ื›ื•ื›ื‘ื™ื, 1912 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 13 ืชื•ืจืžื™ื.
  • ืฉืคื”: ืœืš.
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

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

ื‘ืขืช ื”ืคืขืœืช ื”ืคืงื•ื“ื” devspace init ื‘ืงื˜ืœื•ื’ ื”ืคืจื•ื™ืงื˜ ื™ื•ืฆืข ืœื›ื (ื‘ืื•ืคืŸ ืื™ื ื˜ืจืืงื˜ื™ื‘ื™):

  • ื‘ื—ืจ ืืฉื›ื•ืœ Kubernetes ืขื•ื‘ื“,
  • ืœื”ืฉืชืžืฉ ื‘ืงื™ื™ื Dockerfile (ืื• ืœื™ืฆื•ืจ ืื—ื“ ื—ื“ืฉ) ื›ื“ื™ ืœื™ืฆื•ืจ ืžื™ื›ืœ ื”ืžื‘ื•ืกืก ืขืœื™ื•,
  • ื‘ื—ืจ ืžืื’ืจ ืœืื—ืกื•ืŸ ืชืžื•ื ื•ืช ืžื™ื›ืœ ื•ื›ื•'.

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

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

ืกื•ืฃ ืกื•ืฃ ื”ืฆื•ื•ืช devspace deploy ืžื’ืœื’ืœ ืืช ื”ืืคืœื™ืงืฆื™ื” ื•ื”ืชืฉืชื™ืช ื”ื ืœื•ื•ื™ืช ืœืืฉื›ื•ืœ, ื•ืœืื—ืจ ืžื›ืŸ ื”ื›ืœ ืžืชื—ื™ืœ ืœืชืคืงื“ ื‘ืžืฆื‘ ืงืจื‘.

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

ื›ืœื™ื ืœืžืคืชื—ื™ ืืคืœื™ืงืฆื™ื•ืช ื”ืคื•ืขืœื•ืช ืขืœ Kubernetes
ืืจื›ื™ื˜ืงื˜ื•ืจื” ื•ืฉืœื‘ื™ื ืขื™ืงืจื™ื™ื ื‘ืขื‘ื•ื“ื” ืขื DevSpace

ื‘ื ื•ืกืฃ, ืงืœ ืœื”ื•ืกื™ืฃ ืœืคืจื•ื™ื™ืงื˜ ืจื›ื™ื‘ ืžื•ื’ื“ืจ ืžืจืืฉ (ืœื“ื•ื’ืžื”, MySQL DBMS) ืื• ืชืจืฉื™ื Helm. ืงืจื ืขื•ื“ ื‘ ืชื™ืขื•ื“ - ื–ื” ืœื ืžืกื•ื‘ืš

ืกืงืคื•ืœื“

  • ืืชืจ; GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื•ืช GH ืงืฆืจื•ืช: 7423 ื›ื•ื›ื‘ื™ื, 4173 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 136 ืชื•ืจืžื™ื.
  • ืฉืคื”: ืœืš.
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

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

ืขื ื–ืืช, ืื ื–ื” ืœื ืžืคื—ื™ื“ ืื•ืชืš, ื”ื ื” ืžื” ืฉืกืงืคื•ืœื“ ืžืืคืฉืจ ืœืš ืœืขืฉื•ืช:

  • ืขืงื•ื‘ ืื—ืจ ืฉื™ื ื•ื™ื™ื ื‘ืงื•ื“ ื”ืžืงื•ืจ.
  • ืกื ื›ืจืŸ ืื•ืชื• ืขื ืžื™ื›ืœ ื”ืชืจืžื™ืœ ืื ื”ื•ื ืื™ื ื• ื“ื•ืจืฉ ื”ืจื›ื‘ื”.
  • ืืกื•ืฃ ืžื™ื›ืœื™ื ืขื ืงื•ื“, ืื ื”ืฉืคื” ืžืชืคืจืฉืช, ืื• ื”ื™ื“ื•ืจ ื—ืคืฆื™ื ื•ืืจื•ื– ืื•ืชื ื‘ืžื™ื›ืœื™ื.
  • ื”ืชืžื•ื ื•ืช ื”ืžืชืงื‘ืœื•ืช ื ื‘ื“ืงื•ืช ืื•ื˜ื•ืžื˜ื™ืช ื‘ืืžืฆืขื•ืช ืžื™ื›ืœ-ืžื‘ื ื”-ืžื‘ื—ืŸ.
  • ืชื™ื•ื’ ื•ื”ืขืœืืช ืชืžื•ื ื•ืช ืœ-Docker Registry.
  • ืคืจื•ืก ื™ื™ืฉื•ื ื‘ืืฉื›ื•ืœ ื‘ืืžืฆืขื•ืช kubectl, Helm ืื• kustomize.
  • ื‘ืฆืข ื”ืขื‘ืจืช ื™ืฆื™ืื•ืช.
  • ื ื™ืคื•ื™ ื‘ืื’ื™ื ื‘ืืคืœื™ืงืฆื™ื•ืช ืฉื ื›ืชื‘ื• ื‘-Java, Node.js, Python.

ื–ืจื™ืžืช ืขื‘ื•ื“ื” ื‘ื•ื•ืจื™ืืฆื™ื•ืช ืฉื•ื ื•ืช ืžืชื•ืืจืช ื‘ืื•ืคืŸ ื”ืฆื”ืจืชื™ ื‘ืงื•ื‘ืฅ skaffold.yaml. ืขื‘ื•ืจ ืคืจื•ื™ืงื˜, ื ื™ืชืŸ ื’ื ืœื”ื’ื“ื™ืจ ืžืกืคืจ ืคืจื•ืคื™ืœื™ื ื‘ื”ื ื ื™ืชืŸ ืœืฉื ื•ืช ื—ืœืงื™ืช ืื• ืžืœืื” ืืช ืฉืœื‘ื™ ื”ื”ืจื›ื‘ื” ื•ื”ืคืจื™ืกื”. ืœื“ื•ื’ืžื”, ืœืคื™ืชื•ื—, ืฆื™ื™ืŸ ืชืžื•ื ืช ื‘ืกื™ืก ื ื•ื—ื” ืœืžืคืชื—, ื•ืœืฉืœื‘ ื•ื”ืคืงื” - ืžื™ื ื™ืžืœื™ืช (+ ืฉื™ืžื•ืฉ securityContext ืงื•ื ื˜ื™ื™ื ืจื™ื ืื• ืœื”ื’ื“ื™ืจ ืžื—ื“ืฉ ืืช ื”ืืฉื›ื•ืœ ืฉื‘ื• ื™ื™ืคืจืก ื”ืืคืœื™ืงืฆื™ื”).

ื ื™ืชืŸ ืœื‘ื ื•ืช ืžื›ื•ืœื•ืช Docker ื‘ืื•ืคืŸ ืžืงื•ืžื™ ืื• ืžืจื—ื•ืง: ื‘ Google Cloud Build ืื• ื‘ืืฉื›ื•ืœ ื‘ืืžืฆืขื•ืช ืงื ื™ืงื•. ื’ื Bazel ื•-Jib Maven/Gradle ื ืชืžื›ื™ื. ืœืชื™ื•ื’, Skaffold ืชื•ืžืš ื‘ืืกื˜ืจื˜ื’ื™ื•ืช ืจื‘ื•ืช: ืœืคื™ git commit hash, ืชืืจื™ืš/ืฉืขื”, sha256-sum of sources ื•ื›ื•'.

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

  • ื‘ื™ืฆื•ืข ืคืงื•ื“ื•ืช ื‘ื”ืงืฉืจ ืฉืœ ืงื•ื ื˜ื™ื™ื ืจ ืขื ืžืขืงื‘ ืื—ืจ ืกื˜ื˜ื•ืกื™ ื™ืฆื™ืื” ื•ื‘ื“ื™ืงืช ืคืœื˜ ื”ื˜ืงืกื˜ ืฉืœ ื”ืคืงื•ื“ื”.
  • ื‘ื“ื™ืงืช ื ื•ื›ื—ื•ืช ืงื‘ืฆื™ื ื‘ืžื™ื›ืœ ื•ื”ืชืืžืช ื”ืชื›ื•ื ื•ืช ืฉืฆื•ื™ื ื•.
  • ืฉืœื™ื˜ื” ื‘ืชื•ื›ืŸ ื”ืงื•ื‘ืฅ ื‘ืืžืฆืขื•ืช ื‘ื™ื˜ื•ื™ื™ื ืจื’ื•ืœืจื™ื™ื.
  • ืื™ืžื•ืช ืžื˜ื ื ืชื•ื ื™ื ืฉืœ ืชืžื•ื ื” (ENV, ENTRYPOINT, VOLUMES ื•ื›ื•.).
  • ื‘ื“ื™ืงืช ืชืื™ืžื•ืช ืœืจื™ืฉื™ื•ืŸ.

ืกื ื›ืจื•ืŸ ืงื‘ืฆื™ื ืขื ื”ืงื•ื ื˜ื™ื™ื ืจ ืœื ืžืชื‘ืฆืข ื‘ืฆื•ืจื” ื”ืื•ืคื˜ื™ืžืœื™ืช ื‘ื™ื•ืชืจ: Skaffold ืคืฉื•ื˜ ื™ื•ืฆืจ ืืจื›ื™ื•ืŸ ืขื ื”ืžืงื•ืจื•ืช, ืžืขืชื™ืง ืื•ืชื• ื•ืคื•ืจืง ืื•ืชื• ื‘ืงื•ื ื˜ื™ื™ื ืจ (ื™ืฉ ืœื”ืชืงื™ืŸ tar). ืœื›ืŸ, ืื ื”ืžืฉื™ืžื” ื”ืขื™ืงืจื™ืช ืฉืœืš ื”ื™ื ืกื ื›ืจื•ืŸ ืงื•ื“, ืขื“ื™ืฃ ืœื—ืคืฉ ืคืชืจื•ืŸ ืžื™ื•ื—ื“ (ksync).

ื›ืœื™ื ืœืžืคืชื—ื™ ืืคืœื™ืงืฆื™ื•ืช ื”ืคื•ืขืœื•ืช ืขืœ Kubernetes
ืฉืœื‘ื™ื ืขื™ืงืจื™ื™ื ืฉืœ ืคืขื•ืœืช ืกืงืคื•ืœื“

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

ื’ืŸ

  • ืืชืจ; GitHub.
  • ืกื˜ื˜ื™ืกื˜ื™ืงื” ืงืฆืจื” ืฉืœ GH: 1063 ื›ื•ื›ื‘ื™ื, 1927 ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช, 17 ืชื•ืจืžื™ื.
  • ืฉืคื”: TypeScript (ืžืชื•ื›ื ืŸ ืœืคืฆืœ ืืช ื”ืคืจื•ื™ืงื˜ ืœืžืกืคืจ ืจื›ื™ื‘ื™ื, ื—ืœืงื ื™ื”ื™ื• ื‘-Go, ื•ื’ื ืœื™ืฆื•ืจ SDK ืœื™ืฆื™ืจืช ื”ืจื—ื‘ื•ืช ื‘-TypeScript/JavaScript ื•-Go).
  • ืจื™ืฉื™ื•ืŸ: Apache License 2.0.

ื›ืžื• Skaffold, Garden ืฉื•ืืคืช ืœื‘ืฆืข ืื•ื˜ื•ืžืฆื™ื” ืฉืœ ืชื”ืœื™ื›ื™ ืืกืคืงืช ืงื•ื“ ืืคืœื™ืงืฆื™ื” ืœืืฉื›ื•ืœ K8s. ื›ื“ื™ ืœืขืฉื•ืช ื–ืืช, ืชื—ื™ืœื” ืขืœื™ืš ืœืชืืจ ืืช ืžื‘ื ื” ื”ืคืจื•ื™ืงื˜ ื‘ืงื•ื‘ืฅ YAML, ื•ืœืื—ืจ ืžื›ืŸ ืœื”ืคืขื™ืœ ืืช ื”ืคืงื•ื“ื” garden dev. ื”ื™ื ืชืขืฉื” ืืช ื›ืœ ื”ืงืกื:

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

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

ืžื•ื“ื•ืœ ืคืจื•ื™ืงื˜ ื™ื›ื•ืœ ืœื”ื™ื•ืช ืงื•ื ื˜ื™ื™ื ืจ, ืงื•ื ื˜ื™ื™ื ืจ ืฉืœ Maven, ืชืจืฉื™ื Helm, ืžื ื™ืคืกื˜ ืขื‘ื•ืจ kubectl apply ืื• ืืคื™ืœื• ืคื•ื ืงืฆื™ื™ืช OpenFaaS. ื™ืชืจื” ืžื›ืš, ื›ืœ ืื—ื“ ืžื”ืžื•ื“ื•ืœื™ื ื ื™ืชืŸ ืœืฉืœื™ืคื” ืžืžืื’ืจ Git ืžืจื•ื—ืง. ืžื•ื“ื•ืœ ืขืฉื•ื™ ืœื”ื’ื“ื™ืจ ืฉื™ืจื•ืชื™ื, ืžืฉื™ืžื•ืช ื•ืžื‘ื—ื ื™ื ืื• ืœื. ืœืฉื™ืจื•ืชื™ื ื•ืœืžืฉื™ืžื•ืช ื™ื›ื•ืœื•ืช ืœื”ื™ื•ืช ืชืœื•ืช, ืฉื‘ื–ื›ื•ืชืŸ ืืชื” ื™ื›ื•ืœ ืœืงื‘ื•ืข ืืช ืจืฆืฃ ื”ืคืจื™ืกื” ืฉืœ ืฉื™ืจื•ืช ืžืกื•ื™ื ื•ืœืืจื’ืŸ ืืช ื”ื”ืฉืงื” ืฉืœ ืžืฉื™ืžื•ืช ื•ื‘ื“ื™ืงื•ืช.

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

ื›ืœื™ื ืœืžืคืชื—ื™ ืืคืœื™ืงืฆื™ื•ืช ื”ืคื•ืขืœื•ืช ืขืœ Kubernetes
ืคืื ืœ ืœื’ืŸ

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

ืžืกืงื ื”

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

ื .ื‘.

ืงืจื ื’ื ื‘ื‘ืœื•ื’ ืฉืœื ื•:

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

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