ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ื‘ื ื•ืกืฃ, ืจื•ื‘ ื”ืชืžื•ื ื•ืช ื‘-Docker ืžืฉืชืžืฉื•ืช ื‘ื“ื‘ื™ืืŸ ืื• ื‘ืื•ื‘ื•ื ื˜ื• ืขื‘ื•ืจ ืชืžื•ื ืช ื”ื‘ืกื™ืก, ื•ืœืžืจื•ืช ืฉื–ื” ืžืกืคืง ืชืื™ืžื•ืช ืžืฆื•ื™ื ืช ื•ื”ืชืืžื” ืื™ืฉื™ืช ืงืœื” (ืงื•ื‘ืฅ Docker ืœื•ืงื— ืจืง ืฉืชื™ ืฉื•ืจื•ืช ืงื•ื“), ืชืžื•ื ื•ืช ื‘ืกื™ืก ื™ื›ื•ืœื•ืช ืœื”ื•ืกื™ืฃ ืžืื•ืช ืžื’ื”-ื‘ื™ื™ื˜ ืฉืœ ืขื•ืžืก ื ื•ืกืฃ ืœืžื›ื•ืœื” ืฉืœืš. ืœื“ื•ื’ืžื”, ืงื•ื‘ืฅ node.js ืคืฉื•ื˜ ืขื‘ื•ืจ ื™ื™ืฉื•ื Go "hello-world" ื”ื•ื ื‘ืขืจืš 700 ืžื’ื”-ื‘ื™ื™ื˜, ื‘ืขื•ื“ ืฉื”ืืคืœื™ืงืฆื™ื” ืฉืœืš ื‘ืคื•ืขืœ ื”ื™ื ื‘ื’ื•ื“ืœ ืฉืœ ื›ืžื” ืžื’ื”-ื‘ื™ื™ื˜ ื‘ืœื‘ื“.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ื”ืจืืฉื•ืŸ ื”ื•ื ื”ืฉื™ืžื•ืฉ ื‘ืชืžื•ื ื•ืช ื‘ืกื™ืก ืงื˜ื ื•ืช, ื”ืฉื ื™ ื”ื•ื ื”ืฉื™ืžื•ืฉ ื‘-Builder Pattern. ืฉื™ืžื•ืฉ ื‘ืชืžื•ื ื•ืช ื‘ืกื™ืก ืงื˜ื ื•ืช ื™ื•ืชืจ ื”ื•ื ื›ื ืจืื” ื”ื“ืจืš ื”ืงืœื” ื‘ื™ื•ืชืจ ืœื”ืงื˜ื™ืŸ ืืช ื’ื•ื“ืœ ื”ืžื™ื›ืœ ืฉืœืš. ืกื‘ื™ืจ ืœื”ื ื™ื— ืฉื”ืฉืคื” ืื• ื”ืขืจื™ืžื” ืฉื‘ื” ืืชื” ืžืฉืชืžืฉ ืžืกืคืงืช ืชืžื•ื ืช ืืคืœื™ืงืฆื™ื” ืžืงื•ืจื™ืช ืฉื”ื™ื ืงื˜ื ื” ื‘ื”ืจื‘ื” ืžืชืžื•ื ืช ื‘ืจื™ืจืช ื”ืžื—ื“ืœ. ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ืžื™ื›ืœ node.js ืฉืœื ื•.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ื›ื‘ืจื™ืจืช ืžื—ื“ืœ ื‘-Docker, ื’ื•ื“ืœ ื”ืชืžื•ื ื” ื”ื‘ืกื™ืกื™ ืฉืœ node:8 ื”ื•ื 670 ืžื’ื”-ื‘ื™ื™ื˜, ื•ื”ืฆื•ืžืช: ื’ื•ื“ืœ ืชืžื•ื ื” 8-ืืœืคื™ื ื™ ื”ื•ื ืจืง 65 ืžื’ื”-ื‘ื™ื™ื˜, ื›ืœื•ืžืจ ืงื˜ืŸ ืคื™ 10. ืขืœ ื™ื“ื™ ืฉื™ืžื•ืฉ ื‘ืชืžื•ื ืช ื”ื‘ืกื™ืก ื”ืืœืคื™ื ื™ ื”ืงื˜ื ื” ื™ื•ืชืจ, ืชืงื˜ื™ืŸ ืžืฉืžืขื•ืชื™ืช ืืช ื’ื•ื“ืœ ื”ืžื™ื›ืœ ืฉืœืš. Alpine ื”ื™ื ื”ืคืฆืช ืœื™ื ื•ืงืก ืงื˜ื ื” ื•ืงืœืช ืžืฉืงืœ ืฉืคื•ืคื•ืœืจื™ืช ืžืื•ื“ ื‘ืงืจื‘ ืžืฉืชืžืฉื™ Docker ืžื›ื™ื•ื•ืŸ ืฉื”ื™ื ืชื•ืืžืช ืœื™ื™ืฉื•ืžื™ื ืจื‘ื™ื ืชื•ืš ืฉืžื™ืจื” ืขืœ ืžื™ื›ืœื™ื ืงื˜ื ื™ื. ื‘ื ื™ื’ื•ื“ ืœืชืžื•ื ืช ื”"ืฆื•ืžืช" ื”ืจื’ื™ืœื” ืฉืœ Docker, "node:alpine" ืžืกื™ืจ ื”ืจื‘ื” ืงื‘ืฆื™ ืฉื™ืจื•ืช ื•ืชื•ื›ื ื™ื•ืช, ื•ืžืฉืื™ืจ ืจืง ืืช ืืœื” ืฉืžืกืคื™ืงื™ื ืœื”ืคืขืœืช ื”ืืคืœื™ืงืฆื™ื” ืฉืœืš.

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ื›ืขืช, ื‘ื ื™ื’ื•ื“ ืœืชืžื•ื ืช ื”-onbuild ื”ื™ืฉื ื”, โ€‹โ€‹ืขืœื™ืš ืœื”ืขืชื™ืง ืืช ื”ืงื•ื“ ืฉืœืš ืœืงื•ื ื˜ื™ื™ื ืจ ื•ืœื”ืชืงื™ืŸ ืืช ื›ืœ ื”ืชืœื•ืช. ื‘-Dockerfile ื—ื“ืฉ, ื”ืงื•ื ื˜ื™ื™ื ืจ ืžืชื—ื™ืœ ื‘ืชืžื•ื ืช node:alpine, ื•ืื– ื™ื•ืฆืจ ืกืคืจื™ื™ื” ืขื‘ื•ืจ ื”ืงื•ื“, ืžืชืงื™ืŸ ืชืœื•ืช ื‘ืืžืฆืขื•ืช ืžื ื”ืœ ื”ื—ื‘ื™ืœื•ืช ืฉืœ NPM, ื•ืœื‘ืกื•ืฃ ืžืจื™ืฅ ืืช server.js.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ื‘-Dockerfile ื”ื—ื“ืฉ, ื”ืงื•ื ื˜ื™ื™ื ืจ ืžืชื—ื™ืœ ื‘ืชืžื•ื ืช golang:alpine. ืœืื—ืจ ืžื›ืŸ ื”ื•ื ื™ื•ืฆืจ ืกืคืจื™ื™ื” ืขื‘ื•ืจ ื”ืงื•ื“, ืžืขืชื™ืง ืื•ืชื• ืœืงื•ื“ ื”ืžืงื•ืจ, ื‘ื•ื ื” ืืช ืงื•ื“ ื”ืžืงื•ืจ ื”ื–ื” ื•ืžืคืขื™ืœ ืืช ื”ื™ื™ืฉื•ื. ืงื•ื ื˜ื™ื™ื ืจ ื–ื” ืงื˜ืŸ ื‘ื”ืจื‘ื” ืžืžื™ื›ืœ ื”-onbuild, ืื‘ืœ ื”ื•ื ืขื“ื™ื™ืŸ ืžื›ื™ืœ ืืช ื”ืžื”ื“ืจ ื•ื›ืœื™ Go ืื—ืจื™ื ืฉืื ื—ื ื• ืœื ื‘ืืžืช ืฆืจื™ื›ื™ื. ืื– ื‘ื•ืื• ืคืฉื•ื˜ ื ื—ืœืฅ ืืช ื”ืชื•ื›ื ื™ืช ื”ืงื•ืžืคื™ืœื™ืช ื•ื ื›ื ื™ืก ืื•ืชื” ืœืžื™ื›ืœ ืžืฉืœื”.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ื™ื™ืชื›ืŸ ืฉืชื‘ื—ื™ืŸ ื‘ืžืฉื”ื• ืžื•ื–ืจ ื‘ืงื•ื‘ืฅ ื”-Docker ื”ื–ื”: ื”ื•ื ืžื›ื™ืœ ืฉืชื™ ืฉื•ืจื•ืช FROM. ื”ื—ืœืง ื”ืจืืฉื•ืŸ ืฉืœ 4 ื”ืฉื•ืจื•ืช ื ืจืื” ื‘ื“ื™ื•ืง ืื•ืชื• ื”ื“ื‘ืจ ื›ืžื• ื”-Dockerfile ื”ืงื•ื“ื ืืœื ืฉื”ื•ื ืžืฉืชืžืฉ ื‘ืžื™ืœืช ื”ืžืคืชื— AS ื›ื“ื™ ืœืชืช ืฉื ืœืฉืœื‘ ื”ื–ื”. ื‘ื—ืœืง ื”ื‘ื ื™ืฉ ืฉื•ืจืช FROM ื—ื“ืฉื” ื›ื“ื™ ืœื”ืชื—ื™ืœ ืชืžื•ื ื” ื—ื“ืฉื”, ืฉื‘ื” ื‘ืžืงื•ื ืชืžื•ื ืช golang:alpine ื ืฉืชืžืฉ ื‘- Raw alpine ื›ืชืžื•ื ืช ื”ื‘ืกื™ืก.

ืœ-Raw Alpine Linux ืœื ืžื•ืชืงื ื•ืช ืชืขื•ื“ื•ืช SSL, ืžื” ืฉื™ื’ืจื•ื ืœืจื•ื‘ ืงืจื™ืื•ืช ื”-API ื“ืจืš HTTPS ืœื”ื™ื›ืฉืœ, ืื– ื‘ื•ืื• ื ืชืงื™ืŸ ื›ืžื” ืื™ืฉื•ืจื™ CA ืฉื•ืจืฉ.

ืขื›ืฉื™ื• ืžื’ื™ืข ื”ื—ืœืง ื”ืžื”ื ื”: ื›ื“ื™ ืœื”ืขืชื™ืง ืืช ื”ืงื•ื“ ื”ืงื•ืžืคื™ืœืฆื™ื” ืžื”ืžื™ื›ืœ ื”ืจืืฉื•ืŸ ืœืฉื ื™, ืืชื” ื™ื›ื•ืœ ืคืฉื•ื˜ ืœื”ืฉืชืžืฉ ื‘ืคืงื•ื“ื” COPY ื”ืžืžื•ืงืžืช ื‘ืฉื•ืจื” 5 ืฉืœ ื”ื—ืœืง ื”ืฉื ื™. ื–ื” ื™ืขืชื™ืง ืจืง ืงื•ื‘ืฅ ื™ื™ืฉื•ื ืื—ื“ ื•ืœื ื™ืฉืคื™ืข ืขืœ ื›ืœื™ ื”ืฉื™ืจื•ืช Go. ื”ืงื•ื‘ืฅ ื”ืจื‘-ืฉืœื‘ื™ ื”ื—ื“ืฉ ืฉืœ Docker ื™ื›ื™ืœ ืชืžื•ื ืช ืงื•ื ื˜ื™ื™ื ืจ ื‘ื’ื•ื“ืœ ืฉืœ 12 ืžื’ื”-ื‘ื™ื™ื˜ ื‘ืœื‘ื“, ืœืขื•ืžืช ืชืžื•ื ืช ื”ืงื•ื ื˜ื™ื™ื ืจ ื”ืžืงื•ืจื™ืช ืฉื”ื™ื™ืชื” 700 ืžื’ื”-ื‘ื™ื™ื˜, ื•ื–ื” ื”ื‘ื“ืœ ื’ื“ื•ืœ!
ืื– ืฉื™ืžื•ืฉ ื‘ืชืžื•ื ื•ืช ื‘ืกื™ืก ืงื˜ื ื•ืช ื•ื‘ืชื‘ื ื™ืช Builder ื”ืŸ ื“ืจื›ื™ื ื ื”ื“ืจื•ืช ืœื™ืฆื•ืจ ืงื•ื ื˜ื™ื™ื ืจื™ื ืงื˜ื ื™ื ื‘ื”ืจื‘ื” ื‘ืœื™ ื”ืจื‘ื” ืขื‘ื•ื“ื”.
ื™ืชื›ืŸ ืฉื‘ื”ืชืื ืœืขืจื™ืžืช ื”ืืคืœื™ืงืฆื™ื”, ื™ืฉื ืŸ ื“ืจื›ื™ื ื ื•ืกืคื•ืช ืœื”ืงื˜ื™ืŸ ืืช ื’ื•ื“ืœ ื”ืชืžื•ื ื” ื•ื”ืžื™ื›ืœ, ืืš ื”ืื ืœืžื›ื•ืœื•ืช ืงื˜ื ื•ืช ื‘ืืžืช ื™ืฉ ื™ืชืจื•ืŸ ืžื“ื™ื“? ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ืฉื ื™ ืชื—ื•ืžื™ื ืฉื‘ื”ื ืžื™ื›ืœื™ื ืงื˜ื ื™ื ื”ื ื™ืขื™ืœื™ื ื‘ื™ื•ืชืจ โ€“ ื‘ื™ืฆื•ืขื™ื ื•ืื‘ื˜ื—ื”.

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

Docker ื™ืฉืžื•ืจ ืืช ื”ืฉื›ื‘ื•ืช ื‘ืžื˜ืžื•ืŸ ื›ืš ืฉื”ื‘ื ื™ื™ื” ื”ื‘ืื” ืชื”ื™ื” ืžื”ื™ืจื” ืžืื•ื“. ืขื ื–ืืช, ืžืขืจื›ื•ืช CI ืจื‘ื•ืช ื”ืžืฉืžืฉื•ืช ืœื‘ื ื™ื™ื” ื•ืœื‘ื“ื™ืงืช ืงื•ื ื˜ื™ื™ื ืจื™ื ืื™ื ืŸ ืžืื—ืกื ื•ืช ืฉื›ื‘ื•ืช ื‘ืžื˜ืžื•ืŸ, ื›ืš ืฉื™ืฉ ื—ื™ืกื›ื•ืŸ ืžืฉืžืขื•ืชื™ ื‘ื–ืžืŸ. ื›ืคื™ ืฉืืชื” ื™ื›ื•ืœ ืœืจืื•ืช, ื”ื–ืžืŸ ืœื‘ื ื™ื™ืช ืžื™ื›ืœ ื’ื“ื•ืœ, ื‘ื”ืชืื ืœืขื•ืฆืžืช ื”ืžื›ื•ื ื” ืฉืœืš, ื”ื•ื ื‘ื™ืŸ 34 ืœ-54 ืฉื ื™ื•ืช, ื•ื‘ืฉื™ืžื•ืฉ ื‘ืžื™ื›ืœ ืžื•ืคื—ืช ื‘ืืžืฆืขื•ืช ืชื‘ื ื™ืช ื”-Builder - ืž-23 ืœ-28 ืฉื ื™ื•ืช. ื‘ืคืขื•ืœื•ืช ืžืกื•ื’ ื–ื” ื”ืขืœื™ื™ื” ื‘ืคืจื™ื•ืŸ ืชื”ื™ื” 40-50%. ืื– ืจืง ืชื—ืฉื•ื‘ ื›ืžื” ืคืขืžื™ื ืืชื” ื‘ื•ื ื” ื•ื‘ื•ื“ืง ืืช ื”ืงื•ื“ ืฉืœืš.

ืœืื—ืจ ื‘ื ื™ื™ืช ื”ืงื•ื ื˜ื™ื™ื ืจ, ืขืœื™ืš ืœื“ื—ื•ืฃ ืืช ื”ืชืžื•ื ื” ืฉืœื• (ืชืžื•ื ืช ืžื™ื›ืœ) ืœืชื•ืš ืจื™ืฉื•ื ื”ืžื›ื•ืœื” ื›ื“ื™ ืฉืชื•ื›ืœ ืœื”ืฉืชืžืฉ ื‘ื” ื‘ืืฉื›ื•ืœ Kubernetes ืฉืœืš. ืื ื™ ืžืžืœื™ืฅ ืœื”ืฉืชืžืฉ ื‘-Google Container Registry.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ืขื Google Container Registry (GCR), ืืชื” ืžืฉืœื ืจืง ืขื‘ื•ืจ ืื—ืกื•ืŸ ื’ื•ืœืžื™ ื•ืจืฉืช, ื•ืื™ืŸ ืขืžืœื•ืช ื ื•ืกืคื•ืช ืœื ื™ื”ื•ืœ ืงื•ื ื˜ื™ื™ื ืจ. ื–ื” ืคืจื˜ื™, ืžืื•ื‘ื˜ื— ื•ืžื”ื™ืจ ืžืื•ื“. GCR ืžืฉืชืžืฉ ื‘ื˜ืจื™ืงื™ื ืจื‘ื™ื ื›ื“ื™ ืœื”ืื™ืฅ ืืช ืคืขื•ืœืช ื”ืžืฉื™ื›ื”. ื›ืคื™ ืฉื ื™ืชืŸ ืœืจืื•ืช, ื”ื›ื ืกืช ืžื™ื›ืœ Docker Container Image ื‘ืืžืฆืขื•ืช go:onbuild ืชื™ืงื— ื‘ื™ืŸ 15 ืœ-48 ืฉื ื™ื•ืช, ืชืœื•ื™ ื‘ื‘ื™ืฆื•ืขื™ ื”ืžื—ืฉื‘, ื•ืื•ืชื” ืคืขื•ืœื” ืขื ืžื™ื›ืœ ืงื˜ืŸ ื™ื•ืชืจ ืชื™ืงื— ื‘ื™ืŸ 14 ืœ-16 ืฉื ื™ื•ืช, ื•ืœืžื›ื•ื ื•ืช ืคื—ื•ืช ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช ื”ื™ืชืจื•ืŸ ื‘ืžื”ื™ืจื•ืช ื”ืคืขื•ืœื” ื’ื“ืœ ืคื™ 3. ืขื‘ื•ืจ ืžื›ื•ื ื•ืช ื’ื“ื•ืœื•ืช ื™ื•ืชืจ, ื”ื–ืžืŸ ื‘ืขืจืš ื–ื”ื”, ืžื›ื™ื•ื•ืŸ ืฉ-GCR ืžืฉืชืžืฉ ื‘ืžื˜ืžื•ืŸ ื’ืœื•ื‘ืœื™ ืขื‘ื•ืจ ืžืกื“ ื ืชื•ื ื™ื ืžืฉื•ืชืฃ ืฉืœ ืชืžื•ื ื•ืช, ื›ืœื•ืžืจ ืื™ื ืš ืฆืจื™ืš ืœื˜ืขื•ืŸ ืื•ืชืŸ ื›ืœืœ. ื‘ืžื—ืฉื‘ ื‘ืขืœ ื”ืกืคืง ื ืžื•ืš, ื”-CPU ื”ื•ื ืฆื•ื•ืืจ ื”ื‘ืงื‘ื•ืง, ื›ืš ืฉื”ื™ืชืจื•ืŸ ื‘ืฉื™ืžื•ืฉ ื‘ืžื™ื›ืœื™ื ืงื˜ื ื™ื ื”ื•ื ื”ืจื‘ื” ื™ื•ืชืจ ื’ื“ื•ืœ ื›ืืŸ.

ืื ืืชื” ืžืฉืชืžืฉ ื‘-GCR, ืื ื™ ืžืžืœื™ืฅ ื‘ื—ื•ื ืœื”ืฉืชืžืฉ ื‘-Google Container Builder (GCB) ื›ื—ืœืง ืžืžืขืจื›ืช ื”ื‘ื ื™ื™ื” ืฉืœืš.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

ื›ืคื™ ืฉืืชื” ื™ื›ื•ืœ ืœืจืื•ืช, ื”ืฉื™ืžื•ืฉ ื‘ื• ืžืืคืฉืจ ืœืš ืœื”ืฉื™ื’ ืชื•ืฆืื•ืช ื˜ื•ื‘ื•ืช ื‘ื”ืจื‘ื” ื‘ื”ืคื—ืชืช ืžืฉืš ืคืขื•ืœืช ื”-Build+Push ืžืืฉืจ ืืคื™ืœื• ืžื›ื•ื ื” ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ืช - ื‘ืžืงืจื” ื–ื”, ืชื”ืœื™ืš ื”ื‘ื ื™ื™ื” ื•ืฉืœื™ื—ืช ื”ืžื›ื•ืœื•ืช ืœืžืืจื— ืžื•ืืฅ ื›ืžืขื˜ ืคื™ 2 . ื‘ื ื•ืกืฃ, ืืชื” ืžืงื‘ืœ 120 ื“ืงื•ืช ื‘ื ื™ื™ื” ื‘ื—ื™ื ื ื‘ื›ืœ ื™ื•ื, ืžื” ืฉืžื›ืกื” ืืช ืฆืจื›ื™ ื‘ื ื™ื™ืช ื”ืžื›ื•ืœื•ืช ืฉืœืš ื‘ืจื•ื‘ ื”ืžืงืจื™ื.

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

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ื ื•ืฉื ื”ืื‘ื˜ื—ื”. ืžื™ื›ืœื™ื ืงื˜ื ื™ื ื™ื•ืชืจ ื ื—ืฉื‘ื™ื ืœื‘ื˜ื•ื—ื™ื ื”ืจื‘ื” ื™ื•ืชืจ ืžื’ื“ื•ืœื™ื ื™ื•ืชืจ ืžื›ื™ื•ื•ืŸ ืฉื™ืฉ ืœื”ื ืžืฉื˜ื— ื”ืชืงืคื” ืงื˜ืŸ ื™ื•ืชืจ. ื‘ืืžืช? ืื—ืช ื”ืชื›ื•ื ื•ืช ื”ืฉื™ืžื•ืฉื™ื•ืช ื‘ื™ื•ืชืจ ืฉืœ Google Container Registry ื”ื™ื ื”ื™ื›ื•ืœืช ืœืกืจื•ืง ืื•ื˜ื•ืžื˜ื™ืช ืืช ื”ืงื•ื ื˜ื™ื™ื ืจื™ื ืฉืœืš ืœืื™ืชื•ืจ ื ืงื•ื“ื•ืช ืชื•ืจืคื”. ืœืคื ื™ ื›ืžื” ื—ื•ื“ืฉื™ื ื™ืฆืจืชื™ ืงื•ื ื˜ื™ื™ื ืจื™ื ื‘ื‘ื ื™ื™ื” ื•ืจื‘ ืฉืœื‘ื™ื, ืื– ื‘ื•ื ื ืจืื” ืื โ€‹โ€‹ื™ืฉ ืฉื ื ืงื•ื“ื•ืช ืชื•ืจืคื”.

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ื™ืฆื™ืจืช ืžื™ื›ืœื™ื ืงื˜ื ื™ื

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

ืฉื™ื˜ื•ืช ืขื‘ื•ื“ื” ืžื•ืžืœืฆื•ืช ืฉืœ Kubernetes. ืืจื’ื•ืŸ Kubernetes ืขื ืžืจื—ื‘ ืฉืžื•ืช

ื›ืžื” ืžื•ื“ืขื•ืช ๐Ÿ™‚

ืชื•ื“ื” ืฉื ืฉืืจืช ืื™ืชื ื•. ื”ืื ืืชื” ืื•ื”ื‘ ืืช ื”ืžืืžืจื™ื ืฉืœื ื•? ืจื•ืฆื™ื ืœืจืื•ืช ืขื•ื“ ืชื•ื›ืŸ ืžืขื ื™ื™ืŸ? ืชืžื›ื• ื‘ื ื• ืขืœ ื™ื“ื™ ื‘ื™ืฆื•ืข ื”ื–ืžื ื” ืื• ื”ืžืœืฆื” ืœื—ื‘ืจื™ื, Cloud VPS ืœืžืคืชื—ื™ื ื”ื—ืœ ืž-$4.99, ืื ืœื•ื’ื™ ื™ื™ื—ื•ื“ื™ ืฉืœ ืฉืจืชื™ื ื‘ืจืžืช ื”ื›ื ื™ืกื”, ืฉื”ื•ืžืฆื ืขืœ ื™ื“ื™ื ื• ืขื‘ื•ืจื›ื: ื›ืœ ื”ืืžืช ืขืœ VPS (KVM) E5-2697 v3 (6 ืœื™ื‘ื•ืช) 10GB DDR4 480GB SSD 1Gbps ื”ื—ืœ ืž-$19 ืื• ืื™ืš ืœืฉืชืฃ ืฉืจืช? (ื–ืžื™ืŸ ืขื RAID1 ื•-RAID10, ืขื“ 24 ืœื™ื‘ื•ืช ื•ืขื“ 40GB DDR4).

Dell R730xd ื–ื•ืœ ืคื™ 2 ื‘ืžืจื›ื– ื”ื ืชื•ื ื™ื Equinix Tier IV ื‘ืืžืกื˜ืจื“ื? ืจืง ื›ืืŸ 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV ื”ื—ืœ ืž-$199 ื‘ื”ื•ืœื ื“! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - ื”ื—ืœ ืž-$99! ืœืงืจื•ื ืขืœ ื›ื™ืฆื“ ืœื‘ื ื•ืช ืชืฉืชื™ื•ืช ืงื•ืจืค. ืžื—ืœืงื” ืขื ืฉื™ืžื•ืฉ ื‘ืฉืจืชื™ Dell R730xd E5-2650 v4 ื‘ืฉื•ื•ื™ 9000 ื™ื•ืจื• ืขื‘ื•ืจ ืื’ื•ืจื”?

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

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