Helm Security

ื ื™ืชืŸ ืœืชืืจ ืืช ืžื”ื•ืช ื”ืกื™ืคื•ืจ ืขืœ ืžื ื”ืœ ื”ื—ื‘ื™ืœื•ืช ื”ืคื•ืคื•ืœืจื™ ื‘ื™ื•ืชืจ ืขื‘ื•ืจ Kubernetes ื‘ืืžืฆืขื•ืช ืื™ืžื•ื’'ื™:

  • ื”ืงื•ืคืกื” ื”ื™ื Helm (ืฉื–ื” ื”ื“ื‘ืจ ื”ืงืจื•ื‘ ื‘ื™ื•ืชืจ ืœืžื”ื“ื•ืจืช ื”ืื™ืžื•ื’'ื™ ื”ืื—ืจื•ื ื”);
  • ืžื ืขื•ืœ - ืื‘ื˜ื—ื”;
  • ื”ืื™ืฉ ื”ืงื˜ืŸ ื”ื•ื ื”ืคืชืจื•ืŸ ืœื‘ืขื™ื”.

Helm Security

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

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

ื›ืœ ืžื” ื‘ืžืืžืจ ื–ื” ื—ืœ ืขืœ Helm 2. ื’ืจืกื” ื–ื• ื ืžืฆืืช ื›ืขืช ื‘ื™ื™ืฆื•ืจ ื•ื›ื›ืœ ื”ื ืจืื” ื”ื™ื ื–ื• ืฉื‘ื” ืืชื” ืžืฉืชืžืฉ ื›ืขืช, ื•ื”ื™ื ื”ื’ืจืกื” ื”ืžื›ื™ืœื” ืืช ืกื™ื›ื•ื ื™ ื”ืื‘ื˜ื—ื”.


ืขืœ ื”ื“ื•ื‘ืจ: ืืœื›ืกื ื“ืจ ื—ื™ื™ืจื•ื‘ (allexx) ืžืคืชื—ืช ื›ื‘ืจ 10 ืฉื ื™ื, ื•ืขื•ื–ืจืช ื‘ืฉื™ืคื•ืจ ื”ืชื•ื›ืŸ Moscow Python Conf++ ื•ื”ืฆื˜ืจืคื” ืœื•ื•ืขื“ื” ืคืกื’ืช ื”ื”ื’ื”. ื›ืขืช ื”ื•ื ืขื•ื‘ื“ ื‘-Chainstack ื›ืžื•ื‘ื™ืœ ืคื™ืชื•ื— - ื–ื•ื”ื™ ื”ื›ืœืื” ื‘ื™ืŸ ืžื ื”ืœ ืคื™ืชื•ื— ืœืื“ื ืฉืื—ืจืื™ ืขืœ ืžืกื™ืจืช ืžื”ื“ื•ืจื•ืช ืกื•ืคื™ื•ืช. ื›ืœื•ืžืจ, ื”ื•ื ืžืžื•ืงื ื‘ืฉื“ื” ื”ืงืจื‘, ืฉื ืžืชืจื—ืฉ ื”ื›ืœ ืžื™ืฆื™ืจืช ื”ืžื•ืฆืจ ื•ืขื“ ืœื”ืคืขืœืชื•.

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

ื”ื’ื”

ื–ื”ื• ืžื ื”ืœ ื—ื‘ื™ืœื•ืช (ืชืจืฉื™ื) ืขื‘ื•ืจ Kubernetes. ื”ื“ืจืš ื”ืื™ื ื˜ื•ืื™ื˜ื™ื‘ื™ืช ื•ื”ืื•ื ื™ื‘ืจืกืœื™ืช ื‘ื™ื•ืชืจ ืœื”ื‘ื™ื ื™ื™ืฉื•ืžื™ื ืœืืฉื›ื•ืœ Kubernetes.

Helm Security

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

Helm ื”ื•ื ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ ืฉื–ืžื™ืŸ ื•ืคื•ืคื•ืœืจื™ ื›ืจื’ืข.

ืœืžื” ื”ืœื? ื‘ืขื™ืงืจ ื‘ื’ืœืœ ืฉื”ื•ื ื ืชืžืš ืขืœ ื™ื“ื™ CNCF. Cloud Native ื”ื•ื ืืจื’ื•ืŸ ื’ื“ื•ืœ ื•ืžื”ื•ื•ื” ื—ื‘ืจืช ื”ืื ืœืคืจื•ื™ืงื˜ื™ื Kubernetes, etcd, Fluentd ื•ืื—ืจื™ื.

ืขื•ื‘ื“ื” ื—ืฉื•ื‘ื” ื ื•ืกืคืช ื”ื™ื ืฉื”ืœื ื”ื•ื ืคืจื•ื™ืงื˜ ืคื•ืคื•ืœืจื™ ืžืื•ื“. ื›ืฉื”ืชื—ืœืชื™ ืœื“ื‘ืจ ืขืœ ืื™ืš ืœื”ืคื•ืš ืืช Helm ืœืื‘ื˜ื— ื‘ื™ื ื•ืืจ 2019, ืœืคืจื•ื™ืงื˜ ื”ื™ื• ืืœืฃ ื›ื•ื›ื‘ื™ื ื‘-GitHub. ืขื“ ืžืื™ ื”ื™ื• 12 ืืœืฃ ืžื”ื.

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

ืฆื•ื•ืช ื”ืœื™ื‘ื” ืฉืœ Helm ื ืชืžืš ืขืœ ื™ื“ื™ Microsoft Azure ื•ืœื›ืŸ ื”ื•ื ืคืจื•ื™ืงื˜ ื™ืฆื™ื‘ ืœืžื“ื™, ื‘ื ื™ื’ื•ื“ ืœืจื‘ื™ื ืื—ืจื™ื. ืฉื—ืจื•ืจื• ืฉืœ Helm 3 Alpha 2 ื‘ืืžืฆืข ื™ื•ืœื™ ืžืฆื‘ื™ืข ืขืœ ื›ืš ืฉื™ืฉ ื“ื™ ื”ืจื‘ื” ืื ืฉื™ื ืฉืขื•ื‘ื“ื™ื ืขืœ ื”ืคืจื•ื™ืงื˜, ื•ื™ืฉ ืœื”ื ืืช ื”ืจืฆื•ืŸ ื•ื”ืื ืจื’ื™ื” ืœืคืชื— ื•ืœืฉืคืจ ืืช Helm.

Helm Security

Helm ืคื•ืชืจ ืžืกืคืจ ื‘ืขื™ื•ืช ืฉื•ืจืฉ ืฉืœ ื ื™ื”ื•ืœ ื™ื™ืฉื•ืžื™ื ื‘-Kubernetes.

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

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

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

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

Helm ืžืืคืฉืจ ืœืš:

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

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

ื”ื’ื” ืžื‘ื•ืกืกืช ืขืœ ืฉืœื•ืฉื” ืžื•ืฉื’ื™ื ืขื™ืงืจื™ื™ื:

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

ืืจื›ื™ื˜ืงื˜ื•ืจืช ื”ื’ื”

ื”ืชืจืฉื™ื ืžืชืืจ ืงื•ื ืกืคื˜ื•ืืœื™ืช ืืช ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ื‘ืจืžื” ื”ื’ื‘ื•ื”ื” ืฉืœ Helm.

Helm Security

ื”ืจืฉื• ืœื™ ืœื”ื–ื›ื™ืจ ืœื›ื ืฉื”ืœื ื”ื•ื ืžืฉื”ื• ืฉืงืฉื•ืจ ืœ-Kubernetes. ืœื›ืŸ, ืื ื—ื ื• ืœื ื™ื›ื•ืœื™ื ืœื”ืกืชื“ืจ ื‘ืœื™ ืืฉื›ื•ืœ Kubernetes (ืžืœื‘ืŸ). ืจื›ื™ื‘ kube-apiserver ื ืžืฆื ื‘ืžืืกื˜ืจ. ื‘ืœื™ Helm ื™ืฉ ืœื ื• Kubeconfig. Helm ืžื‘ื™ื ื‘ื™ื ืืจื™ ืื—ื“ ืงื˜ืŸ, ืื ืืคืฉืจ ืœืงืจื•ื ืœื–ื” ื›ืš, ืขื–ืจ Helm CLI, ืฉืžื•ืชืงืŸ ืขืœ ืžื—ืฉื‘, ืžื—ืฉื‘ ื ื™ื™ื“, ืžื™ื™ื ืคืจื™ื™ื - ืขืœ ื›ืœ ื“ื‘ืจ.

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

ื”ืจื›ื™ื‘ ื”ื‘ื ืฉืœ Chart Repo ื”ื•ื ืžืื’ืจ ืขื ืชืจืฉื™ืžื™ื. ื™ืฉ ืžืื’ืจ ืจืฉืžื™, ื•ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื™ืฉ ืžืื’ืจ ืคืจื˜ื™ ืฉืœ ื—ื‘ืจื” ืื• ืคืจื•ื™ืงื˜.

ืื™ื ื˜ืจืืงืฆื™ื”

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

  • ืื ื—ื ื• ืžื“ื‘ืจื™ื Helm install, ื’ืฉ ืœืžืื’ืจ (Chart Repo) ื•ืงื‘ืœ ืชืจืฉื™ื Helm.

  • ื›ืœื™ ื”ืฉื™ืจื•ืช Helm (Helm CLI) ืžืงื™ื™ื ืื™ื ื˜ืจืืงืฆื™ื” ืขื Kubeconfig ื›ื“ื™ ืœื”ื‘ื™ืŸ ืœืื™ื–ื” ืืฉื›ื•ืœ ืœืคื ื•ืช. 
  • ืœืื—ืจ ืงื‘ืœืช ื”ืžื™ื“ืข ื”ื–ื”, ื”ืฉื™ืจื•ืช ืžืชื™ื™ื—ืก ืœื˜ื™ืœืจ, ืฉื ืžืฆื ื‘ืืฉื›ื•ืœ ืฉืœื ื•, ื›ืืคืœื™ืงืฆื™ื”. 
  • Tiller ืงื•ืจื ืœ-Kube-apiserver ืœื‘ืฆืข ืคืขื•ืœื•ืช ื‘-Kubernetes, ืœื™ืฆื•ืจ ื›ืžื” ืื•ื‘ื™ื™ืงื˜ื™ื (ืฉื™ืจื•ืชื™ื, ืคื•ื“ื™ื, ื”ืขืชืงื™ื, ืกื•ื“ื•ืช ื•ื›ื•').

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

ื•ืงื˜ื•ืจ ื”ืชืงืคื”

ื ืงื•ื“ืช ื”ืชื•ืจืคื” ื”ืคื•ื˜ื ืฆื™ืืœื™ืช ื”ืจืืฉื•ื ื” ื”ื™ื API ืžื•ืขื“ืฃ-ืžืฉืชืžืฉ. ื›ื—ืœืง ืžื”ืชื•ื›ื ื™ืช, ืžื“ื•ื‘ืจ ื‘ื”ืืงืจ ืฉืงื™ื‘ืœ ื’ื™ืฉืช ืžื ื”ืœ ืœ-Helm CLI.

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

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

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

Helm Security

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

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

Helm Security

Helm CLI ืžืชืงืฉืจ ืขื Chart Repo, ืžืงื™ื™ื ืื™ื ื˜ืจืืงืฆื™ื” ืขื Kubeconfig, ื•ื”ืขื‘ื•ื“ื” ืžื•ืขื‘ืจืช ืœืืฉื›ื•ืœ ืœืจื›ื™ื‘ Tiller.

ื˜ื™ืœืจ ืžื™ื•ืฆื’ ืขืœ ื™ื“ื™ ืฉื ื™ ืื•ื‘ื™ื™ืงื˜ื™ื:

  • Tiller-deploy svc, ืืฉืจ ื—ื•ืฉืฃ ืฉื™ืจื•ืช ืžืกื•ื™ื;
  • Tiller-deploy pod (ื‘ืชืจืฉื™ื ื‘ืขื•ืชืง ื‘ื•ื“ื“ ื‘ื”ืขืชืง ืื—ื“), ืฉืขืœื™ื• ืคื•ืขืœ ื›ืœ ื”ืขื•ืžืก, ื”ื ื™ื’ืฉ ืœืืฉื›ื•ืœ.

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

  • ื”ืžื ื’ื ื•ืŸ ืฉื‘ืืžืฆืขื•ืชื• ื”-Helm CLI ื ื™ื’ืฉ ืœ-repo ืฉืœ ื”ืชืจืฉื™ื: ืื™ื–ื” ืคืจื•ื˜ื•ืงื•ืœ, ื”ืื ื™ืฉ ืื™ืžื•ืช ื•ืžื” ืืคืฉืจ ืœืขืฉื•ืช ืื™ืชื•.
  • ื”ืคืจื•ื˜ื•ืงื•ืœ ืฉืœืคื™ื• Helm CLI, ื‘ืืžืฆืขื•ืช kubectl, ืžืชืงืฉืจ ืขื ื˜ื™ืœืจ. ื–ื”ื• ืฉืจืช RPC ื”ืžื•ืชืงืŸ ื‘ืชื•ืš ื”ืืฉื›ื•ืœ.
  • Tiller ืขืฆืžื• ื ื’ื™ืฉ ืœืžื™ืงืจื•-ืฉื™ืจื•ืชื™ื ื”ืฉื•ื›ื ื™ื ื‘ืืฉื›ื•ืœ ื•ืžืงื™ื™ืžื™ื ืื™ื ื˜ืจืืงืฆื™ื” ืขื ื”-Kube-apiserver.

Helm Security

ื‘ื•ืื• ื ื“ื•ืŸ ื‘ื›ืœ ื”ืชื—ื•ืžื™ื ื”ืืœื” ืœืคื™ ื”ืกื“ืจ.

RBAC

ืื™ืŸ ื˜ืขื ืœื“ื‘ืจ ืขืœ ืื‘ื˜ื—ื” ื›ืœืฉื”ื™ ืขื‘ื•ืจ Helm ืื• ื›ืœ ืฉื™ืจื•ืช ืื—ืจ ื‘ืชื•ืš ื”ืืฉื›ื•ืœ ืืœื ืื RBAC ืžื•ืคืขืœ.

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

Helm Security

https://rbac.dev/ - ืขื•ืจืš ื“ื™ืŸ ืืชืจ ืขื‘ื•ืจ RBAC. ื”ื•ื ืžื›ื™ืœ ื›ืžื•ืช ืขืฆื•ืžื” ืฉืœ ื—ื•ืžืจื™ื ืžืขื ื™ื™ื ื™ื ืฉื™ืขื–ืจื• ืœื›ื ืœื”ืงื™ื ืืช RBAC, ืœื”ืจืื•ืช ืœืžื” ื”ื•ื ื˜ื•ื‘ ื•ืื™ืš ื‘ืขืฆื ืœื—ื™ื•ืช ืื™ืชื• ื‘ื™ื™ืฆื•ืจ.

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

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

Helm Security

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

ื ืฉืืœืช ื”ืฉืืœื” - ืžื” ื”ื”ื‘ื“ืœ ื‘ื™ืŸ Role ืœ-ClusterRole? ื”ื”ื‘ื“ืœ ื”ื•ื ืฉ-ClusterRole ืคื•ืขืœ ืขื‘ื•ืจ ื›ืœ ืžืจื—ื‘ื™ ื”ืฉืžื•ืช, ื‘ื ื™ื’ื•ื“ ืœืชืคืงื™ื“ื™ื ืจื’ื™ืœื™ื ื•-RoleBindings, ืฉืคื•ืขืœื™ื ืจืง ืขื‘ื•ืจ ืžืจื—ื‘ ืฉืžื•ืช ืžื™ื•ื—ื“. ืืชื” ื™ื›ื•ืœ ืœื”ื’ื“ื™ืจ ืžื“ื™ื ื™ื•ืช ืขื‘ื•ืจ ื”ืืฉื›ื•ืœ ื›ื•ืœื• ื•ื›ืœ ืžืจื—ื‘ื™ ื”ืฉืžื•ืช, ืื• ืœื”ืชืื™ื ืื™ืฉื™ืช ืขื‘ื•ืจ ื›ืœ ืžืจื—ื‘ ืฉืžื•ืช ื‘ื ืคืจื“.

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

ืขื ื–ืืช, ื™ืฉ ื“ืจืš ืžืฆื•ื™ื ืช ื”ืžืืคืฉืจืช ืœืš ืœื”ืคืขื™ืœ ืืช Tiller ืžืกืคืจ ืคืขืžื™ื ื‘ืืฉื›ื•ืœ. ืื™ืŸ ื‘ืขื™ื” ืขื ื–ื”, ื ื™ืชืŸ ืœื”ืคืขื™ืœ ืืช Tiller ื‘ื›ืœ ืžืจื—ื‘ ืฉืžื•ืช. ืœืคื™ื›ืš, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘-RBAC, Kubeconfig ื›ื”ืงืฉืจ, ื•ืœื”ื’ื‘ื™ืœ ืืช ื”ื’ื™ืฉื” ืœ-Helm ืžื™ื•ื—ื“.

ื–ื” ื™ื™ืจืื” ื›ืš.

Helm Security

ืœื“ื•ื’ืžื”, ื™ืฉื ืŸ ืฉืชื™ ื”ื’ื“ืจื•ืช Kubeconfigs ืขื ื”ืงืฉืจ ืขื‘ื•ืจ ืฆื•ื•ืชื™ื ืฉื•ื ื™ื (ืฉื ื™ ืžืจื—ื‘ื™ ืฉืžื•ืช): X Team ืขื‘ื•ืจ ืฆื•ื•ืช ื”ืคื™ืชื•ื— ื•ืืฉื›ื•ืœ ื”ื ื™ื”ื•ืœ. ืœืืฉื›ื•ืœ ื”ื ื™ื”ื•ืœ ื™ืฉ Tiller ืจื—ื‘ ืžืฉืœื•, ื”ืžืžื•ืงื ื‘ืžืจื—ื‘ ื”ืฉืžื•ืช ืฉืœ ืžืขืจื›ืช Kube, ื—ืฉื‘ื•ืŸ ืฉื™ืจื•ืช ืžืชืงื“ื ื‘ื”ืชืื. ื•ืžืจื—ื‘ ืฉืžื•ืช ื ืคืจื“ ืœืฆื•ื•ืช ื”ืคื™ืชื•ื—, ื”ื ื™ื•ื›ืœื• ืœืคืจื•ืก ืืช ื”ืฉื™ืจื•ืชื™ื ืฉืœื”ื ืœืžืจื—ื‘ ืฉืžื•ืช ืžื™ื•ื—ื“.

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

ืืชื ืžื•ื–ืžื ื™ื ืœื”ื’ื“ื™ืจ ืืช Tiller ื‘ื ืคืจื“ ื•ืœืกืคืง ืœ-Kubeconfig ื”ืงืฉืจ ืขื‘ื•ืจ ื”ืฆื•ื•ืช, ืขื‘ื•ืจ ืžืคืชื— ืกืคืฆื™ืคื™ ืื• ืขื‘ื•ืจ ื”ืกื‘ื™ื‘ื”: Dev, Staging, Production (ืกืคืง ืื ื”ื›ืœ ื™ื”ื™ื” ืขืœ ืื•ืชื• ืืฉื›ื•ืœ, ืขื ื–ืืช, ื ื™ืชืŸ ืœืขืฉื•ืช ื–ืืช).

ื‘ื”ืžืฉืš ื”ืกื™ืคื•ืจ ืฉืœื ื•, ื‘ื•ืื• ื ืขื‘ื•ืจ ืž-RBAC ื•ื ื“ื‘ืจ ืขืœ ConfigMaps.

ConfigMaps

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

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

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

Helm Security

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

ืขื“ื™ืฃ ืœื”ืขื‘ื™ืจ ืืช ื”- Storage Helm ืœืกื•ื“ื•ืช, ื•ื”ื, ื‘ืชื•ืจื, ืžืื•ื‘ื˜ื—ื™ื ื‘ืื•ืคืŸ ืžืจื›ื–ื™.

ื›ืžื•ื‘ืŸ ืฉื–ื” ื™ื™ืฉืืจ ืžื’ื‘ืœืช ืื—ืกื•ืŸ ื ืชื•ื ื™ื ืฉืœ 1 MB. Helm ื›ืืŸ ืžืฉืชืžืฉ ื‘-etcd ื›ืื—ืกื•ืŸ ืžื‘ื•ื–ืจ ืขื‘ื•ืจ ConfigMaps. ื•ืฉื ืกื‘ืจื• ืฉื–ื”ื• ื ืชื— ื ืชื•ื ื™ื ืžืชืื™ื ืœืฉื›ืคื•ืœ ื•ื›ื•'. ื™ืฉ ื“ื™ื•ืŸ ืžืขื ื™ื™ืŸ ืขืœ ื–ื” ื‘- Reddit, ืื ื™ ืžืžืœื™ืฅ ืœืžืฆื•ื ืืช ื”ืงืจื™ืื” ื”ืžืฆื—ื™ืงื” ื”ื–ื• ืœืกื•ืฃ ื”ืฉื‘ื•ืข ืื• ืœืงืจื•ื ืืช ื”ืชืžืฆื™ืช ื›ืืŸ.

Repos ืฉืœ ืชืจืฉื™ื

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

ืืชื” ื‘ื”ื—ืœื˜ ืฆืจื™ืš ืœื—ืฉื•ืฃ ืืช Helm Repo ื‘ืืžืฆืขื•ืช HTTPS - ื–ื• ื”ืืคืฉืจื•ืช ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ื•ื”ื™ื ื–ื•ืœื”.

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

ื‘ื ื•ืกืฃ, Helm client ืชื•ืžืš ื‘-TLS (ืœื ื‘ืžื•ื‘ืŸ HTTP ื‘ืฆื“ ื”ืฉืจืช, ืืœื TLS ื”ื“ื“ื™). ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืžืคืชื—ื•ืช ืฉืจืช ื•ืœืงื•ื— ื›ื“ื™ ืœืชืงืฉืจ. ืœืžืขืŸ ื”ืืžืช, ืื ื™ ืœื ืžืฉืชืžืฉ ื‘ืžื ื’ื ื•ืŸ ื›ื–ื” ื›ื™ ืื ื™ ืœื ืื•ื”ื‘ ืชืขื•ื“ื•ืช ื”ื“ื“ื™ื•ืช. ื‘ืขื™ืงืจื•ืŸ, ืžื•ื–ื™ืื•ืŸ ืชืจืฉื™ื - ื”ื›ืœื™ ื”ืขื™ืงืจื™ ืœื”ื’ื“ืจืช Helm Repo ืขื‘ื•ืจ Helm 2 - ืชื•ืžืš ื’ื ื‘ื”ืจืฉืื” ื‘ืกื™ืกื™ืช. ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืื™ืฉื•ืจ ื‘ืกื™ืกื™ ืื ื–ื” ื ื•ื— ื•ืฉืงื˜ ื™ื•ืชืจ.

ื™ืฉ ื’ื ืชื•ืกืฃ helm-gcs, ื”ืžืืคืฉืจ ืœืš ืœืืจื— Repos ืฉืœ ืชืจืฉื™ื ื‘-Google Cloud Storage. ื–ื” ื“ื™ ื ื•ื—, ืขื•ื‘ื“ ื ื”ื“ืจ ื•ื”ื•ื ื‘ื˜ื•ื— ืœืžื“ื™, ื›ื™ ื›ืœ ื”ืžื ื’ื ื•ื ื™ื ื”ืžืชื•ืืจื™ื ืžืžื•ื—ื–ืจื™ื.

Helm Security

ืื ืชืคืขื™ืœื• HTTPS ืื• TLS, ืชืฉืชืžืฉื• ื‘-mTLS ื•ืชืคืขื™ืœื• ืื™ืžื•ืช ื‘ืกื™ืกื™ ื›ื“ื™ ืœื”ืคื—ื™ืช ืขื•ื“ ื™ื•ืชืจ ืกื™ื›ื•ื ื™ื, ืชืงื‘ืœื• ืขืจื•ืฅ ืชืงืฉื•ืจืช ืžืื•ื‘ื˜ื— ืขื Helm CLI ื•-Chart Repo.

API ืฉืœ gRPC

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

ื›ืคื™ ืฉื›ื‘ืจ ืืžืจืชื™, Tiller ื”ื•ื ืฉื™ืจื•ืช ืฉื—ื•ืฉืฃ gRPC, ืœืงื•ื— Helm ืžื’ื™ืข ืืœื™ื• ื“ืจืš gRPC. ื›ื‘ืจื™ืจืช ืžื—ื“ืœ, ื›ืžื•ื‘ืŸ, TLS ืžื•ืฉื‘ืช. ืžื“ื•ืข ื–ื” ื ืขืฉื” ื”ื™ื ืฉืืœื” ืฉื ื•ื™ื” ื‘ืžื—ืœื•ืงืช, ื ืจืื” ืœื™ ื›ื“ื™ ืœืคืฉื˜ ืืช ื”ื”ื’ื“ืจื” ื‘ื”ืชื—ืœื”.

ืœื”ืคืงื” ื•ืืคื™ืœื• ื‘ื™ืžื•ื™, ืื ื™ ืžืžืœื™ืฅ ืœื”ืคืขื™ืœ TLS ื‘-gRPC.

ืœื“ืขืชื™, ื‘ื ื™ื’ื•ื“ ืœ-mTLS ืœืชืจืฉื™ืžื™ื, ื–ื” ืžืชืื™ื ื›ืืŸ ื•ื ืขืฉื” ื‘ืคืฉื˜ื•ืช ืจื‘ื” - ื™ืฆื™ืจืช ืชืฉืชื™ืช PQI, ื™ืฆื™ืจืช ืื™ืฉื•ืจ, ื”ืคืขืœืช Tiller, ื”ืขื‘ืจืช ื”ืื™ืฉื•ืจ ื‘ื–ืžืŸ ื”ืืชื—ื•ืœ. ืœืื—ืจ ืžื›ืŸ, ืืชื” ื™ื›ื•ืœ ืœื‘ืฆืข ืืช ื›ืœ ืคืงื•ื“ื•ืช Helm, ืœื”ืฆื™ื’ ืœืขืฆืžืš ืืช ื”ืื™ืฉื•ืจ ืฉื ื•ืฆืจ ื•ืืช ื”ืžืคืชื— ื”ืคืจื˜ื™.

Helm Security

ื›ืš ืชื’ื ื• ืขืœ ืขืฆืžื›ื ืžื›ืœ ื”ื‘ืงืฉื•ืช ืœื˜ื™ืœืจ ืžื—ื•ืฅ ืœืืฉื›ื•ืœ.

ืื–, ืื‘ื˜ื—ื ื• ืืช ืขืจื•ืฅ ื”ื—ื™ื‘ื•ืจ ืœื˜ื™ืœืจ, ื›ื‘ืจ ื“ื™ื‘ืจื ื• ืขืœ RBAC ื•ื”ืชืืžื ื• ืืช ื”ื–ื›ื•ื™ื•ืช ืฉืœ ืฉืจืช ื”-Kubernetes, ืžื” ืฉืžืฆืžืฆื ืืช ื”ืชื—ื•ื ืื™ืชื• ื”ื•ื ื™ื›ื•ืœ ืœืงื™ื™ื ืื™ื ื˜ืจืืงืฆื™ื”.

ื”ื’ื” ืžื•ื’ืŸ

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

Helm Security

ื›ืขืช ื ื™ืชืŸ ืœืฆื™ื™ืจ ื‘ื‘ื˜ื—ื” ืืช ื›ืœ ื”ื—ื™ื‘ื•ืจื™ื ื‘ื™ืจื•ืง:

  • ืขื‘ื•ืจ Chart Repo ืื ื• ืžืฉืชืžืฉื™ื ื‘-TLS ืื• mTLS ื•ื‘ืื™ืฉื•ืจ ื‘ืกื™ืกื™;
  • mTLS ืขื‘ื•ืจ Tiller, ื•ื”ื•ื ื—ืฉื•ืฃ ื›ืฉื™ืจื•ืช gRPC ืขื TLS, ืื ื• ืžืฉืชืžืฉื™ื ื‘ืชืขื•ื“ื•ืช;
  • ื”ืืฉื›ื•ืœ ืžืฉืชืžืฉ ื‘ื—ืฉื‘ื•ืŸ ืฉื™ืจื•ืช ืžื™ื•ื—ื“ ืขื Role and RoleBinding. 

ืื™ื‘ื˜ื—ื ื• ืืช ื”ืืฉื›ื•ืœ ื‘ืฆื•ืจื” ืžืฉืžืขื•ืชื™ืช, ืื‘ืœ ืžื™ืฉื”ื• ื—ื›ื ืืžืจ:

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

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

ื‘ื•ื ื•ืก

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

ื‘ืžืื’ืจ github.com/helm/charts ื›ืขืช ื™ืฉ ื›-300 ืชืจืฉื™ืžื™ื ื•ืฉื ื™ ื–ืจืžื™ื: ื™ืฆื™ื‘ ื•ื—ืžืžื”. ื›ืœ ืžื™ ืฉืชื•ืจื ื™ื•ื“ืข ื”ื™ื˜ื‘ ื›ืžื” ืงืฉื” ืœื”ื’ื™ืข ืžืื™ื ืงื•ื‘ื˜ื•ืจ ืœืื•ืจื•ื•ื”, ื•ื›ืžื” ืงืœ ืœืขื•ืฃ ืžื”ืื•ืจื•ื•ื”. ืขื ื–ืืช, ื–ื” ืœื ื”ื›ืœื™ ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ ืœื—ื™ืคื•ืฉ ืชืจืฉื™ืžื™ื ืขื‘ื•ืจ ืคืจื•ืžืชืื•ืก ื•ื›ืœ ืžื” ืฉืชืจืฆื”, ืžืกื™ื‘ื” ืื—ืช ืคืฉื•ื˜ื” - ื–ื” ืœื ืคื•ืจื˜ืœ ืฉื‘ื• ืืชื” ื™ื›ื•ืœ ืœื—ืคืฉ ื‘ื ื•ื—ื•ืช ื—ื‘ื™ืœื•ืช.

ืื‘ืœ ื™ืฉ ืฉื™ืจื•ืช hub.helm.sh, ืžื” ืฉื”ื•ืคืš ืืช ื–ื” ืœื”ืจื‘ื” ื™ื•ืชืจ ื ื•ื— ืœืžืฆื•ื ืชืจืฉื™ืžื™ื. ื•ื”ื›ื™ ื—ืฉื•ื‘, ื™ืฉ ื”ืจื‘ื” ื™ื•ืชืจ ืžืื’ืจื™ื ื—ื™ืฆื•ื ื™ื™ื ื•ื›ืžืขื˜ 800 ืฆ'ืืจืžื™ื ื–ืžื™ื ื™ื. ื‘ื ื•ืกืฃ, ืืชื” ื™ื›ื•ืœ ืœื—ื‘ืจ ืืช ื”ืžืื’ืจ ืฉืœืš ืื ืžืกื™ื‘ื” ื›ืœืฉื”ื™ ืื™ื ืš ืจื•ืฆื” ืœืฉืœื•ื— ืืช ื”ืชืจืฉื™ืžื™ื ืฉืœืš ืœื™ืฆื™ื‘ื™ื.

ื ืกื” ืืช hub.helm.sh ื•ื‘ื•ืื• ืœืคืชื— ืื•ืชื• ื‘ื™ื—ื“. ืฉื™ืจื•ืช ื–ื” ื ืžืฆื ืชื—ืช ืคืจื•ื™ืงื˜ Helm, ื•ืืชื” ืืคื™ืœื• ื™ื›ื•ืœ ืœืชืจื•ื ืœืžืžืฉืง ื”ืžืฉืชืžืฉ ืฉืœื• ืื ืืชื” ืžืคืชื— ื—ื–ื™ืชื™ ื•ืจืง ืจื•ืฆื” ืœืฉืคืจ ืืช ื”ืžืจืื”.

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

Helm Security

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

ืื—ืจื™ื, ื›ืžื•ื ื• ื‘-Chainstack, ืžืฉืชืžืฉื™ื ื‘ืžืกื“ื™ ื ืชื•ื ื™ื ืžื ื•ื”ืœื™ื ื›ืžื• MySQL ืื• PostgreSQL ืขื‘ื•ืจ ื”ืฉืจืชื™ื ืฉืœื”ื. ืœื›ืŸ ืžืกื“ื™ ื”ื ืชื•ื ื™ื ืฉืœื ื• ืžืžื•ืงืžื™ื ืื™ืคืฉื”ื• ื‘ืขื ืŸ.

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

ื–ื” ืžืื•ื“ ืคืฉื•ื˜. ืืชื” ื™ื›ื•ืœ ืœื‘ืฆืข ืฉืื™ืœืชื•ืช, ืœืžืฉืœ, Managed MySQL ื‘-Azure ืขื ืฉื›ื‘ืช ื‘ืกื™ืก (ื ื™ืชืŸ ืœื”ื’ื“ื™ืจ ื–ืืช). ื‘ืืžืฆืขื•ืช ื”-API ืฉืœ Azure, ื‘ืกื™ืก ื”ื ืชื•ื ื™ื ื™ื™ื•ื•ืฆืจ ื•ื™ื”ื™ื” ืžื•ื›ืŸ ืœืฉื™ืžื•ืฉ. ืืชื” ืœื ืฆืจื™ืš ืœื”ืชืขืจื‘ ื‘ื–ื”, ื”ืชื•ืกืฃ ืื—ืจืื™ ืœื›ืš. ืœื“ื•ื’ืžื”, OSBA (ืชื•ืกืฃ Azure) ื™ื—ื–ื™ืจ ืื™ืฉื•ืจื™ื ืœืฉื™ืจื•ืช ื•ื™ืขื‘ื™ืจ ืื•ืชื• ืœื”ืœื. ืชื•ื›ืœ ืœื”ืฉืชืžืฉ ื‘ื•ื•ืจื“ืคืจืก ืขื MySQL ื‘ืขื ืŸ, ืœื ืœื”ืชืžื•ื“ื“ ืขื ืžืกื“ื™ ื ืชื•ื ื™ื ืžื ื•ื”ืœื™ื ื‘ื›ืœืœ ื•ืœื ืœื“ืื•ื’ ืœื’ื‘ื™ ืฉื™ืจื•ืชื™ื ืžืžืœื›ืชื™ื™ื ื‘ืคื ื™ื.

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

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

ืžืžืฆื ื ื•ืกืฃ ืฉื›ื‘ืจ ื”ื–ื›ืจืชื™ ื”ื•ื ืชื•ืกืฃ helm-gcs, ื”ืžืืคืฉืจ ืœืš ืœื”ืฉืชืžืฉ ื‘-Google-buckets (ืื—ืกื•ืŸ ืื•ื‘ื™ื™ืงื˜ื™ื) ืœืื—ืกื•ืŸ ืชืจืฉื™ืžื™ Helm.

Helm Security

ืืชื” ืฆืจื™ืš ืจืง ืืจื‘ืข ืคืงื•ื“ื•ืช ื›ื“ื™ ืœื”ืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘ื•:

  1. ื”ืชืงืŸ ืืช ื”ืชื•ืกืฃ;
  2. ืœื™ื–ื•ื ืืช ื–ื”;
  3. ื”ื’ื“ืจ ืืช ื”ื ืชื™ื‘ ืœื“ืœื™, ืฉื ืžืฆื ื‘-gcp;
  4. ืœืคืจืกื ืชืจืฉื™ืžื™ื ื‘ื“ืจืš ื”ืจื’ื™ืœื”.

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

ืืœื˜ืจื ื˜ื™ื‘ื•ืช

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

ืืœื” ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ืคืชืจื•ื ื•ืช ืžื™ื•ื—ื“ื™ื, ืœืžืฉืœ, Ksonnet ืื• Metaparticle. ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื›ืœื™ ื ื™ื”ื•ืœ ื”ืชืฉืชื™ืช ื”ืงืœืืกื™ื™ื ืฉืœืš (Ansible, Terraform, Chef ื•ื›ื•') ืœืื•ืชืŸ ืžื˜ืจื•ืช ืฉื“ื™ื‘ืจืชื™ ืขืœื™ื”ืŸ.

ืกื•ืฃ ืกื•ืฃ ื™ืฉ ืคืชืจื•ืŸ ืžืกื’ืจืช ืžืคืขื™ืœ, ืฉื”ืคื•ืคื•ืœืจื™ื•ืช ืฉืœื• ื”ื•ืœื›ืช ื•ื’ื•ื‘ืจืช.

Operator Framework ื”ื™ื ื—ืœื•ืคืช ื”ื”ื’ื” ื”ืžื•ื‘ื™ืœื” ืฉื™ืฉ ืœืฉืงื•ืœ.

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

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

ื”ื ื” ืชืจืฉื™ื ื•ื™ื–ื•ืืœื™ ืฉืœ ืื™ืคื” ื”ื›ืœ ื ืžืฆื.

Helm Security

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

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

ืžืจื—ื™ื‘ื™ื ืคืฉื•ื˜ ืžืฉืคืจื™ื ืžืขื˜ ืืช ื”ืฉืœื™ื˜ื”, ืžืฉืœื™ืžื™ื ืืช ื–ืจื™ืžืช ื”ืขื‘ื•ื“ื” ืื• ื—ื•ืชื›ื™ื ืคื™ื ื•ืช ื‘ืฆื™ื ื•ืจื•ืช CI/CD.

ื”ืขืชื™ื“ ืฉืœ ื”ืœื

ื”ื—ื“ืฉื•ืช ื”ื˜ื•ื‘ื•ืช ื”ืŸ ืฉ- Helm 3 ืžื’ื™ืข. ื’ืจืกืช ื”ืืœืคื ืฉืœ Helm 3.0.0-alpha.2 ื›ื‘ืจ ืฉื•ื—ืจืจื”, ืืชื” ื™ื›ื•ืœ ืœื ืกื•ืช ืื•ืชื”. ื–ื” ื“ื™ ื™ืฆื™ื‘, ืื‘ืœ ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ืขื“ื™ื™ืŸ ืžื•ื’ื‘ืœืช.

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

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

ื™ื•ืคื™ืข ืชืžื™ื›ื” ื‘ืžืื’ืจื™ OCI ืžืงื•ืจื™ื™ื (Open Container Initiative). ื–ื• ื™ื•ื–ืžื” ืขื ืงื™ืช, ื•ื”ืœื ืžืชืขื ื™ื™ืŸ ื‘ืขื™ืงืจ ื›ื“ื™ ืœืคืจืกื ืืช ื”ืชืจืฉื™ืžื™ื ืฉืœื”. ื–ื” ืžื’ื™ืข ืœื ืงื•ื“ื”, ืœืžืฉืœ, Docker Hub ืชื•ืžืš ื‘ืชืงื ื™ OCI ืจื‘ื™ื. ืื ื™ ืœื ืžื ื—ืฉ, ืื‘ืœ ืื•ืœื™ ืกืคืงื™ ืžืื’ืจ Docker ื”ืงืœืืกื™ื™ื ื™ืชื—ื™ืœื• ืœืชืช ืœืš ืืช ื”ื”ื–ื“ืžื ื•ืช ืœืืจื— ืืช ืชืจืฉื™ืžื™ Helm ืฉืœืš.

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

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

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

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

ืขื•ื“ ื—ื“ืฉื•ืช ื˜ื•ื‘ื•ืช ื”ืŸ DevOpsConf ืืœื›ืกื ื“ืจ ื—ื™ื™ืจื•ื‘ ื™ื’ื™ื“ ืœืš, ื”ืื ืžื›ื•ืœื•ืช ื™ื›ื•ืœื•ืช ืœื”ื™ื•ืช ืžืื•ื‘ื˜ื—ื•ืช? ื ื–ื›ื™ืจ ืœื›ื ืฉื”ื›ื ืก ื‘ื ื•ืฉื ืฉื™ืœื•ื‘ ืชื”ืœื™ื›ื™ ืคื™ืชื•ื—, ื‘ื“ื™ืงื” ื•ืชืคืขื•ืœ ื™ืชืงื™ื™ื ื‘ืžื•ืกืงื‘ื” 30 ื‘ืกืคื˜ืžื‘ืจ ื•-1 ื‘ืื•ืงื˜ื•ื‘ืจ. ืืชื” ืขื“ื™ื™ืŸ ื™ื›ื•ืœ ืœืขืฉื•ืช ืืช ื–ื” ืขื“ 20 ื‘ืื•ื’ื•ืกื˜ ื”ื’ืฉ ื“ื•"ื— ื•ืกืคืจื• ืœื ื• ืขืœ ื”ื ื™ืกื™ื•ืŸ ืฉืœื›ื ืขื ื”ืคืชืจื•ืŸ ืื—ื“ ืžื ื™ ืจื‘ื™ื ืžืฉื™ืžื•ืช ืฉืœ ื’ื™ืฉืช DevOps.

ืขืงื•ื‘ ืื—ืจ ืžื—ืกื•ืžื™ ื”ื•ื•ืขื™ื“ื” ื•ื”ื—ื“ืฉื•ืช ื‘ ื ื™ื•ื–ืœื˜ืจ ะธ ืขืจื•ืฅ ื˜ืœื’ืจื.

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

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