ืฆืขื•ื•ื™ืงืœืขืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืื•ื™ืฃ ืงื™ื™ืคืœ Kubernetes ืงืœืึทืกื˜ืขืจื– ืžื™ื˜ ื”ืขืœื

ื•ื•ื™ Dailymotion ื ื™ืฆื˜ Kubernetes: ืึทืคึผืคึผืœื™ืงืึทื˜ื™ืึธืŸ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜

ืžื™ืจ ื‘ื™ื™ Dailymotion ืกื˜ืึทืจื˜ืขื“ ื ื™ืฆืŸ Kubernetes ืื™ืŸ ืคึผืจืึธื“ื•ืงืฆื™ืข ืžื™ื˜ 3 ื™ืึธืจ ืฆื•ืจื™ืง. ืึธื‘ืขืจ ื“ื™ืคึผืœื•ื™ื™ื ื’ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืึทืจื™ื‘ืขืจ ืงื™ื™ืคืœ ืงืœืึทืกื˜ืขืจื– ืื™ื– ืฉืคึผืึทืก, ืึทื–ื•ื™ ืื™ืŸ ื“ื™ ืœืขืฆื˜ืข ื™ืึธืจืŸ ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขืคืจื•ื•ื•ื˜ ืฆื• ืคึฟืึทืจื‘ืขืกืขืจืŸ ืื•ื ื“ื–ืขืจ ืžื›ืฉื™ืจื™ื ืื•ืŸ ื•ื•ืึธืจืงืคืœืึธื•ื–.

ื•ื•ืื• ื”ืื˜ ืขืก ืื ื’ืขื”ื•ื™ื‘ืŸ

ื“ืึธ ืžื™ืจ ื•ื•ืขืœืŸ ื“ืขืงืŸ ื•ื•ื™ ืžื™ืจ ืฆืขื•ื•ื™ืงืœืขืŸ ืื•ื ื“ื–ืขืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืึทืจื™ื‘ืขืจ ืงื™ื™ืคืœ Kubernetes ืงืœืึทืกื˜ืขืจื– ืึทืจื•ื ื“ื™ ื•ื•ืขืœื˜.

ืฆื• ืฆืขื•ื•ื™ืงืœืขืŸ ืงื™ื™ืคืœ Kubernetes ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ ืึทืžืึธืœ, ืžื™ืจ ื ื•ืฆืŸ ืจื•ื“ืขืจ, ืื•ืŸ ืึทืœืข ืื•ื ื“ื–ืขืจ ื˜ืฉืึทืจืฅ ื–ืขื ืขืŸ ืกื˜ืึธืจื“ ืื™ืŸ ืื™ื™ืŸ ื’ื™ื˜ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™. ืฆื• ืฆืขื•ื•ื™ืงืœืขืŸ ืึท ืคื•ืœ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืึธื ืœื™ื™ื’ืŸ ืคื•ืŸ ืขื˜ืœืขื›ืข ื‘ืึทื“ื™ื ื•ื ื’ืก, ืžื™ืจ ื ื•ืฆืŸ ื“ื™ ืึทื–ื•ื™ ื’ืขืจื•ืคืขื ืข ืงื™ืฆืขืจ ื˜ืฉืึทืจื˜. ื™ืกืขื ืฉืึทืœื™, ื“ืึธืก ืื™ื– ืึท ื˜ืฉืึทืจื˜ ื•ื•ืึธืก ื“ืขืจืงืœืขืจื˜ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื– ืื•ืŸ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื™ื ื™ืฉืึทืœื™ื™ื– ื“ื™ API ืื•ืŸ ื–ื™ื™ึทืŸ ื‘ืึทื“ื™ื ื•ื ื’ืก ืžื™ื˜ ืื™ื™ืŸ ื‘ืึทืคึฟืขืœ.

ืžื™ืจ ืื•ื™ืš ื’ืขืฉืจื™ื‘ืŸ ืึท ืงืœื™ื™ืŸ ืคึผื™ื˜ื”ืึธืŸ ืฉืจื™ืคื˜ ืื•ื™ืฃ ืฉืคึผื™ืฅ ืคื•ืŸ ื”ืขืœื ืฆื• ื˜ืึธืŸ ื˜ืฉืขืงืก, ืฉืึทืคึฟืŸ ื˜ืฉืึทืจืฅ, ืœื™ื™ื’ืŸ ืกื™ืงืจื™ืฅ ืื•ืŸ ืฆืขื•ื•ื™ืงืœืขืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–. ืึทืœืข ื“ื™ ื˜ืึทืกืงืก ื–ืขื ืขืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืื•ื™ืฃ ืึท ื”ื•ื™ืคื˜ ืกื™ ืคึผืœืึทื˜ืคืึธืจืžืข ื ื™ืฆืŸ ืึท ื“ืึธืงืงืขืจ ื‘ื™ืœื“.

ื–ืืœ ืก ื‘ืึทืงื•ืžืขืŸ ืฆื• ื“ื™ ืคื•ื ื˜.

ื ืื˜ื™ืฅ. ื•ื•ืขืŸ ืื™ืจ ืœื™ื™ืขื ืขืŸ ื“ืขื, ื“ืขืจ ืขืจืฉื˜ืขืจ ืžืขืœื“ื•ื ื’ ืงืึทื ื“ื™ื“ืึทื˜ ืคึฟืึทืจ ื”ืขืœื 3 ืื™ื– ืฉื•ื™ืŸ ืžื•ื“ื™ืข. ื“ื™ ื”ื•ื™ืคึผื˜ ื•ื•ืขืจืกื™ืข ื›ึผื•ืœืœ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ ืฆื• ืึทื“ืจืขืก ืขื˜ืœืขื›ืข ืคื•ืŸ โ€‹โ€‹ื“ื™ ื™ืฉื•ื– ื•ื•ืึธืก ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขืคึผืœืึธื ื˜ืขืจื˜ ืื™ืŸ ื“ืขืจ ืคืึทืจื’ืึทื ื’ืขื ื”ื™ื™ื˜.

ื˜ืฉืึทืจื˜ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ื•ื•ืึธืจืงืคืœืึธื•ื•

ืžื™ืจ ื ื•ืฆืŸ ื‘ืจืึทื ื˜ืฉื™ื ื’ ืคึฟืึทืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–, ืื•ืŸ ืžื™ืจ ื‘ืึทืฉืœืึธืกืŸ ืฆื• ืฆื•ืœื™ื™ื’ืŸ ื“ื™ ื–ืขืœื‘ืข ืฆื•ื’ืึทื ื’ ืฆื• ื˜ืฉืึทืจืฅ.

  • ืฆื•ื•ื™ื™ึทื’ Dev ื’ืขื•ื•ื™ื™ื ื˜ ืฆื• ืฉืึทืคึฟืŸ ื˜ืฉืึทืจืฅ ื•ื•ืึธืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ื˜ืขืกื˜ืขื“ ืื•ื™ืฃ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืงืœืึทืกื˜ืขืจื–.
  • ื•ื•ืขืŸ ืึท ืฆื™ืขืŸ ื‘ืงืฉื” ืื™ื– ื“ืขืจืœืื ื’ื˜ ืฆื• ื‘ืึทืœืขื‘ืึธืก, ื–ื™ื™ ื–ืขื ืขืŸ ืึธืคึผื’ืขืฉื˜ืขืœื˜ ืื™ืŸ ืกื˜ืึทื’ื™ื ื’.
  • ืฆื•ื ืกื•ืฃ, ืžื™ืจ ืžืึทื›ืŸ ืึท ืฆื™ืขืŸ ื‘ืขื˜ืŸ ืฆื• ื™ื‘ืขืจื’ืขื‘ืŸ ื“ื™ ืขื ื“ืขืจื•ื ื’ืขืŸ ืฆื• ื“ื™ ืฆื•ื•ื™ื™ึทื’ ืฉื˜ืขื›ืŸ ืื•ืŸ ืฆื•ืœื™ื™ื’ืŸ ื–ื™ื™ ืื™ืŸ ืคึผืจืึธื“ื•ืงืฆื™ืข.

ื™ืขื“ืขืจ ืกื•ื•ื™ื•ื•ืข ื”ืื˜ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืข ืคึผืจื™ื•ื•ืึทื˜ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ ื•ื•ืึธืก ืกื˜ืึธืจื– ืื•ื ื“ื–ืขืจ ื˜ืฉืึทืจืฅ ืื•ืŸ ืžื™ืจ ื ื•ืฆืŸ ื˜ืฉืึทืจื˜ืžื•ื–ื™ื™ ืžื™ื˜ ื–ื™ื™ืขืจ ื ื•ืฆื™ืง ืึทืคึผื™ืก. ื“ืขื ื•ื•ืขื’ ืžื™ืจ ืขื ืฉื•ืจ ืฉื˜ืจืขื ื’ ืืคื’ืขื–ื•ื ื“ืขืจื˜ืงื™ื™ื˜ ืฆื•ื•ื™ืฉืŸ ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ืื•ืŸ ืคืึทืงื˜ื™ืฉ-ื•ื•ืขืœื˜ ื˜ืขืกื˜ื™ื ื’ ืคื•ืŸ ื˜ืฉืึทืจืฅ ืื™ื™ื“ืขืจ ื ื™ืฆืŸ ื–ื™ื™ ืื™ืŸ ืคึผืจืึธื“ื•ืงืฆื™ืข.

ื˜ืฉืึทืจื˜ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ื– ืื™ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ

ืขืก ืื™ื– ื›ื“ืื™ ืฆื• ื‘ืืžืขืจืงืŸ ืึทื– ื•ื•ืขืŸ ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ืฉื˜ื•ืคึผืŸ ืึท ื“ืขื•ื• ืฆื•ื•ื™ื™ึทื’, ืึท ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ื–ื™ื™ืขืจ ื˜ืฉืึทืจื˜ ืื™ื– ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืคึผื•ืฉื˜ ืฆื• ื“ื™ ื“ืขื•ื• ื˜ืฉืึทืจื˜ืžื•ื–ื™ื™. ืื–ื•ื™, ืึทืœืข ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื ื•ืฆืŸ ื“ื™ ื–ืขืœื‘ืข ื“ืขื•ื• ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™, ืื•ืŸ ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืงืขืจืคืึทืœื™ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ื™ืŸ ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ื™ ื˜ืฉืึทืจื˜ ืึทื–ื•ื™ ื ื™ืฉื˜ ืฆื• ืึทืงืกืึทื“ืขื ืึทืœื™ ื ื•ืฆืŸ ื“ื™ ืขื ื“ืขืจื•ื ื’ืขืŸ ืคื•ืŸ ืขืžืขืฆืขืจ ืึทื ื“ืขืจืฉ.

ื“ืขืจืฆื•, ืื•ื ื“ื–ืขืจ ืงืœื™ื™ืŸ ืคึผื™ื˜ื”ืึธืŸ ืฉืจื™ืคื˜ ื•ื•ืึทืœืึทื“ื™ื™ืฅ Kubernetes ืึทื‘ื“ื–ืฉืขืงืฅ ืงืขื’ืŸ ื“ื™ Kubernetes OpenAPI ืกืคึผืขืกืึทืคืึทืงื™ื™ืฉืึทื ื–. ืงื•ื‘ืขื•ื•ืึทืœ, ืื™ื™ื“ืขืจ ื–ื™ื™ ืึทืจื•ื™ืกื’ืขื‘ืŸ ืื•ื™ืฃ ื˜ืฉืึทืจื˜ืžื•ืกืขื.

ืึทืœื’ืขืžื™ื™ื ืข ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ื“ื™ ื•ื•ืึธืจืงืคืœืึธื•ื• ืคื•ืŸ ื“ื™ ื˜ืฉืึทืจื˜ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’

  1. ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ืจืขืจื  - ืœื™ื ื™ืข ื˜ืึทืกืงืก ืœื•ื™ื˜ ืฆื• ืกืคึผืขืกืึทืคืึทืงื™ื™ืฉืึทื ื– gazr.io ืคึฟืึทืจ ืงื•ื•ืึทืœื™ื˜ืขื˜ ืงืึธื ื˜ืจืึธืœ (ืœื™ื ื˜, ืึทืคึผืึทืจืึทื˜-ืคึผืจื•ื‘ื™ืจืŸ).
  2. ืคึผื•ืฉื™ื ื’ ืึท ื“ืึธืงืงืขืจ ื‘ื™ืœื“ ืžื™ื˜ ืคึผื™ื˜ื”ืึธืŸ ืžื›ืฉื™ืจื™ื ื•ื•ืึธืก ืฆืขื•ื•ื™ืงืœืขืŸ ืื•ื ื“ื–ืขืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–.
  3. ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ืกื•ื•ื™ื•ื•ืข ื“ื•ืจืš ืฆื•ื•ื™ื™ึทื’ ื ืึธืžืขืŸ.
  4. ื•ื•ืึทืœืึทื“ื™ื™ื˜ื™ื ื’ Kubernetes yaml ื˜ืขืงืขืก ืžื™ื˜ Kubeval.
  5. ืึธื˜ืึทืžืึทื˜ื™ืง ืคืึทืจื’ืจืขืกืขืจืŸ ื“ื™ ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ืึท ื˜ืฉืึทืจื˜ ืื•ืŸ ื–ื™ื™ืŸ ืคืึธื˜ืขืจ ื˜ืฉืึทืจืฅ (ื˜ืฉืึทืจื˜ื– ื•ื•ืึธืก ืึธืคืขื ื’ืขืŸ ืื•ื™ืฃ ื“ื™ ื˜ืฉืึทืจืฅ ื•ื•ืึธืก ืื™ื– ื˜ืฉื™ื™ื ื“ื–ืฉื“).
  6. ืคืึธืจืœื™ื™ื’ืŸ ืึท ื˜ืฉืึทืจื˜ ืฆื• ืึท ื˜ืฉืึทืจื˜ืžื•ื–ื™ื™ ื•ื•ืึธืก ื’ืœื™ื™ึทื›ืŸ ื–ื™ื™ืŸ ืกื•ื•ื™ื•ื•ืข

ืึธื ืคื™ืจื•ื ื’ ื“ื™ืคืขืจืึทื ืกื™ื– ืฆื•ื•ื™ืฉืŸ ืงืœืึทืกื˜ืขืจื–

ืคืขื“ืขืจื™ื™ืฉืึทืŸ ืคื•ืŸ ืงืœืึทืกื˜ืขืจื–

ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ืึท ืฆื™ื™ื˜ ื•ื•ืขืŸ ืžื™ืจ ื’ืขื•ื•ื™ื™ื ื˜ ืคืขื“ืขืจื™ื™ืฉืึทืŸ ืคื•ืŸ ืงื•ื‘ืขืจื ืขื˜ืขืก ืงืœืึทืกื˜ืขืจื–, ื•ื•ื• Kubernetes ืึทื‘ื“ื–ืฉืขืงืฅ ืงืขืŸ ื–ื™ื™ืŸ ื“ืขืจืงืœืขืจื˜ ืคึฟื•ืŸ ืึท ืื™ื™ืŸ ืึทืคึผื™ ืขื ื“ืคึผื•ื™ื ื˜. ืื‘ืขืจ ืคืจืื‘ืœืขืžืขืŸ ื”ืื‘ืŸ ื–ื™ืš ืื•ื™ืคื’ืขื”ื•ื™ื‘ืŸ. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืขื˜ืœืขื›ืข Kubernetes ืึทื‘ื“ื–ืฉืขืงืฅ ืงืขืŸ ื ื™ืฉื˜ ื–ื™ื™ืŸ ื‘ืืฉืืคืŸ ืื™ืŸ ื“ื™ ืคืขื“ืขืจื™ื™ืฉืึทืŸ ืขื ื“ืคึผื•ื™ื ื˜, ื•ื•ืึธืก ืžืื›ื˜ ืขืก ืฉื•ื•ืขืจ ืฆื• ื˜ื™ื™ึทื ืขืŸ ืคืขื“ืขืจื™ื™ื˜ื™ื“ ืึทื‘ื“ื–ืฉืขืงืฅ ืื•ืŸ ืื ื“ืขืจืข ืึทื‘ื“ื–ืฉืขืงืฅ ืคึฟืึทืจ ื™ื—ื™ื“ ืงืœืึทืกื˜ืขืจื–.

ืฆื• ืกืึธืœื•ื•ืข ื“ืขื ืคึผืจืึธื‘ืœืขื, ืžื™ืจ ืื ื’ืขื”ื•ื™ื‘ืŸ ืฆื• ืคื™ืจืŸ ื“ื™ ืงืœืึทืกื˜ืขืจื– ื™ื ื“ื™ืคึผืขื ื“ืึทื ื˜ืœื™, ื•ื•ืึธืก ื–ื™ื™ืขืจ ืกื™ืžืคึผืœืึทืคื™ื™ื“ ื“ืขื ืคึผืจืึธืฆืขืก (ืžื™ืจ ื’ืขื•ื•ื™ื™ื ื˜ ื“ื™ ืขืจืฉื˜ืขืจ ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ืคืขื“ืขืจื™ื™ืฉืึทืŸ, ืขืคึผืขืก ืงืขืŸ ื”ืึธื‘ืŸ ื’ืขื‘ื™ื˜ืŸ ืื™ืŸ ื“ื™ ืจื’ืข).

ื’ืขืึธ-ืคืึทืจืฉืคึผืจื™ื™ื˜ืŸ ืคึผืœืึทื˜ืคืึธืจืžืข

ืื•ื ื“ื–ืขืจ ืคึผืœืึทื˜ืคืึธืจืžืข ืื™ื– ื“ืขืจื•ื•ื™ื™ึทืœ ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื™ืŸ 6 ืžืงื•ืžื•ืช - 3 ืœืึธื•ืงืึทืœื™ ืื•ืŸ 3 ืื™ืŸ ื“ื™ ื•ื•ืึธืœืงืŸ.


ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜

ื’ืœืื‘ืืœืข ื”ืขืœื ื•ื•ืึทืœื•ืขืก

4 ื’ืœืื‘ืืœืข ื”ืขืœื ื•ื•ืึทืœื•ืขืก ืœืึธื–ืŸ ืื™ืจ ืฆื• ื™ื“ืขื ื˜ื™ืคื™ืฆื™ืจืŸ ื“ื™ืคืขืจืึทื ืกื™ื– ืฆื•ื•ื™ืฉืŸ ืงืœืึทืกื˜ืขืจื–. ืึทืœืข ืคื•ืŸ โ€‹โ€‹ืื•ื ื“ื–ืขืจ ื˜ืฉืึทืจืฅ ื”ืึธื‘ืŸ ืคืขืœื™ืงื™ื™ึทื˜ ืžื™ื ื™ืžื•ื ื•ื•ืึทืœื•ืขืก.

global:
  cloud: True
  env: staging
  region: us-central1
  clusterName: staging-us-central1

ื’ืœืื‘ืืœืข ื•ื•ืึทืœื•ืขืก

ื“ื™ ื•ื•ืึทืœื•ืขืก ื”ืขืœืคึฟืŸ ืฆื• ื“ืขืคื™ื ื™ืจืŸ ื“ืขื ืงืึธื ื˜ืขืงืกื˜ ืคึฟืึทืจ ืื•ื ื“ื–ืขืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืื•ืŸ ื–ืขื ืขืŸ ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ ืคืึทืจืฉื™ื“ืŸ ืฆื•ื•ืขืงืŸ: ืžืึธื ื™ื˜ืึธืจื™ื ื’, ื˜ืจื™ื™ืกื™ื ื’, ืœืึธื’ื™ื ื’, ืžืึทื›ืŸ ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืงืึทืœืœืก, ืกืงื™ื™ืœื™ื ื’, ืขื˜ืง.

  • "ื•ื•ืึธืœืงืŸ": ืžื™ืจ ื”ืึธื‘ืŸ ืึท ื›ื™ื™ื‘ืจื™ื“ ืงื•ื‘ืขืจื ืขื˜ืขืก ืคึผืœืึทื˜ืคืึธืจืžืข. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืื•ื ื“ื–ืขืจ ืึทืคึผื™ ืื™ื– ื“ื™ืคึผืœื•ื™ื“ ืื™ืŸ GCP ื–ืึธื ืขืก ืื•ืŸ ืื™ืŸ ืื•ื ื“ื–ืขืจ ื“ืึทื˜ืŸ ืกืขื ื˜ืขืจืก.
  • "env": ืขื˜ืœืขื›ืข ื•ื•ืึทืœื•ืขืก ืงืขืŸ ื˜ื•ื™ืฉืŸ ืคึฟืึทืจ ื ื™ื˜-ืคึผืจืึธื“ื•ืงืฆื™ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืžื™ื˜ืœ ื–ื•ืš ืื•ืŸ ืึทื•ื˜ืึธืกืงืึทืœื™ื ื’ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทื ื–.
  • "ื’ืขื’ื ื˜": ื“ื™ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื”ืขืœืคึผืก ืฆื• ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ืขื ืึธืจื˜ ืคื•ืŸ ื“ืขื ืงื ื•ื™ืœ ืื•ืŸ ืงืขื ืขืŸ ื•ื•ืขืจืŸ ื’ืขื ื•ืฆื˜ ืฆื• ื‘ืึทืฉื˜ื™ืžืขืŸ ื ื™ืจื‘ื™ื™ ืขื ื“ืคึผื•ื™ื ืฅ ืคึฟืึทืจ ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ื‘ืึทื“ื™ื ื•ื ื’ืก.
  • "clusterName": ืื•ื™ื‘ ืื•ืŸ ื•ื•ืขืŸ ืžื™ืจ ื•ื•ื™ืœืŸ ืฆื• ื“ืขืคื™ื ื™ืจืŸ ืึท ื•ื•ืขืจื˜ ืคึฟืึทืจ ืึท ื™ื—ื™ื“ ืงื ื•ื™ืœ.

ื“ืึธ ืก ืึท ืกืคึผืขืฆื™ืคื™ืฉ ื‘ื™ื™ึทืฉืคึผื™ืœ:

{{/* Returns Horizontal Pod Autoscaler replicas for GraphQL*/}}
{{- define "graphql.hpaReplicas" -}}
{{- if eq .Values.global.env "prod" }}
{{- if eq .Values.global.region "europe-west1" }}
minReplicas: 40
{{- else }}
minReplicas: 150
{{- end }}
maxReplicas: 1400
{{- else }}
minReplicas: 4
maxReplicas: 20
{{- end }}
{{- end -}}

ื”ืขืœื ืžื•ืกื˜ืขืจ ื‘ื™ื™ึทืฉืคึผื™ืœ

ื“ื™ ืœืึธื’ื™ืง ืื™ื– ื“ื™ืคื™ื™ื ื“ ืื™ืŸ ืึท ื”ืขืœืคึผืขืจ ืžื•ืกื˜ืขืจ ืฆื• ื•ื™ืกืžื™ื™ื“ืŸ ืงืœืึทื˜ืขืจื™ื ื’ Kubernetes YAML.

ืึทืคึผืคึผืœื™ืงืึทื˜ื™ืึธืŸ ืžืขืœื“ืŸ

ืื•ื ื“ื–ืขืจ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืžื›ืฉื™ืจื™ื ื–ืขื ืขืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ืงื™ื™ืคืœ YAML ื˜ืขืงืขืก. ื•ื ื˜ืขืจ ืื™ื– ืึท ื‘ื™ื™ืฉืคึผื™ืœ ืคื•ืŸ ื•ื•ื™ ืžื™ืจ ื“ืขืจืงืœืขืจืŸ ืึท ื“ื™ื ืกื˜ ืื•ืŸ ื–ื™ื™ึทืŸ ืกืงื™ื™ืœื™ื ื’ ื˜ืึทืคึผืึทืœืึทื“ื–ืฉื™ (ื ื•ืžืขืจ ืคื•ืŸ ืจืขืคึผืœืึทืงืึทื–) ืื™ืŸ ืึท ืงื ื•ื™ืœ.

releases:
  - foo.world

foo.world:                # Release name
  services:               # List of dailymotion's apps/projects
    foobar:
      chart_name: foo-foobar
      repo: [email protected]:dailymotion/foobar
      contexts:
        prod-europe-west1:
          deployments:
            - name: foo-bar-baz
              replicas: 18
            - name: another-deployment
              replicas: 3

ืกืขืจื•ื•ื™ืก ื“ืขืคึฟื™ื ื™ืฆื™ืข

ื“ืึธืก ืื™ื– ืึท ืึทื•ื˜ืœื™ื™ืŸ ืคื•ืŸ ืึทืœืข ื“ื™ ืกื˜ืขืคึผืก ื•ื•ืึธืก ื“ืขืคื™ื ื™ืจืŸ ืื•ื ื“ื–ืขืจ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ื•ื•ืึธืจืงืคืœืึธื•ื•. ื“ื™ ืœืขืฆื˜ืข ืฉืจื™ื˜ ื“ื™ืคึผืœื•ื™ื“ื– ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืฆื• ืงื™ื™ืคืœ ืึทืจื‘ืขื˜ ืงืœืึทืกื˜ืขืจื– ืกื™ื™ืžืึทืœื˜ื™ื™ื ื™ืึทืกืœื™.


Jenkins ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืกื˜ืขืคึผืก

ื•ื•ืึธืก ื•ื•ืขื’ืŸ ืกื•ื“ื•ืช?

ื•ื•ืขื’ืŸ ื–ื™ื›ืขืจื”ื™ื™ื˜, ืžื™ืจ ืฉืคึผื•ืจ ืึทืœืข ืกื™ืงืจื™ืฅ ืคื•ืŸ ืคืึทืจืฉื™ื“ืขื ืข ืขืจื˜ืขืจ ืื•ืŸ ืงืจืึธื ื–ื™ื™ ืื™ืŸ ืึท ื™ื™ื ืฆื™ืง ื•ื•ืึธืœื˜ Vault ืื™ืŸ ืคึผืึทืจื™ื–.

ืื•ื ื“ื–ืขืจ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืžื›ืฉื™ืจื™ื ืขืงืกื˜ืจืึทืงื˜ ืกื•ื“ ื•ื•ืึทืœื•ืขืก ืคื•ืŸ ื•ื•ืึธืœื˜ ืื•ืŸ, ื•ื•ืขืŸ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืฆื™ื™ื˜ ืงื•ืžื˜, ืึทืจื™ื™ึทื ืœื™ื™ื’ืŸ ื–ื™ื™ ืื™ืŸ ื”ืขืœื.

ืฆื• ื˜ืึธืŸ ื“ืึธืก, ืžื™ืจ ื“ื™ืคื™ื™ื ื“ ืึท ืžืึทืคึผื™ื ื’ ืฆื•ื•ื™ืฉืŸ ื“ื™ ืกื™ืงืจื™ืฅ ืื™ืŸ ื•ื•ืึธืœื˜ ืื•ืŸ ื“ื™ ืกื™ืงืจื™ืฅ ื•ื•ืึธืก ืื•ื ื“ื–ืขืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ื“ืึทืจืคึฟืŸ:

secrets:                                                                                                                                                                                                        
     - secret_id: "stack1-app1-password"                                                                                                                                                                                  
       contexts:                                                                                                                                                                                                   
         - name: "default"                                                                                                                                                                                         
           vaultPath: "/kv/dev/stack1/app1/test"                                                                                                                                                               
           vaultKey: "password"                                                                                                                                                                                    
         - name: "cluster1"                                                                                                                                                                           
           vaultPath: "/kv/dev/stack1/app1/test"                                                                                                                                                               
           vaultKey: "password"

  • ืžื™ืจ ื”ืึธื‘ืŸ ื“ื™ืคื™ื™ื ื“ ืึทืœื’ืขืžื™ื™ื ืข ื›ึผืœืœื™ื ืฆื• ื ืึธื›ืคืึธืœื’ืŸ ื•ื•ืขืŸ ืจืขืงืึธืจื“ื™ื ื’ ืกื™ืงืจื™ืฅ ืื™ืŸ ื•ื•ืึธืœื˜.
  • ืื•ื™ื‘ ื“ืขืจ ืกื•ื“ ืึทืคึผืœื™ื™ื– ืฆื• ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืงืึธื ื˜ืขืงืกื˜ ืึธื“ืขืจ ืงื ื•ื™ืœ, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืœื™ื™ื’ืŸ ืึท ืกืคึผืขืฆื™ืคื™ืฉ ืคึผืึธื–ื™ืฆื™ืข. (ื“ืึธ ื“ื™ ืงืึธื ื˜ืขืงืกื˜ cluster1 ื”ืื˜ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื•ื•ืขืจื˜ ืคึฟืึทืจ ื“ื™ ืกื•ื“ ืกื˜ืึทืง-ืึทืคึผ1-ืคึผืึทืจืึธืœ).
  • ืึทื ื“ืขืจืฉ ื“ื™ ื•ื•ืขืจื˜ ืื™ื– ื’ืขื ื™ืฆื˜ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜.
  • ืคึฟืึทืจ ื™ืขื“ืขืจ ื ื•ืžืขืจ ืื™ืŸ ื“ืขื ืจืฉื™ืžื” ืื™ืŸ ืงื•ื‘ืขืจื ืขื˜ืขืก ืกื•ื“ ืึท ืฉืœื™ืกืœ-ื•ื•ืขืจื˜ ืคึผืึธืจ ืื™ื– ื™ื ืกืขืจื˜ืึทื“. ื“ืขืจื™ื‘ืขืจ, ื“ืขืจ ืกื•ื“ ืžื•ืกื˜ืขืจ ืื™ืŸ ืื•ื ื“ื–ืขืจ ื˜ืฉืึทืจืฅ ืื™ื– ื–ื™ื™ืขืจ ืคึผืฉื•ื˜.

apiVersion: v1
data:
{{- range $key,$value := .Values.secrets }}
  {{ $key }}: {{ $value | b64enc | quote }}
{{ end }}
kind: Secret
metadata:
  name: "{{ .Chart.Name }}"
  labels:
    chartVersion: "{{ .Chart.Version }}"
    tillerVersion: "{{ .Capabilities.TillerVersion.SemVer }}"
type: Opaque

ืคึผืจืึธื‘ืœืขืžืก ืื•ืŸ ืœื™ืžื™ื˜ื™ื™ืฉืึทื ื–

ืึทืจื‘ืขื˜ ืžื™ื˜ ืขื˜ืœืขื›ืข ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ื–

ืื™ืฆื˜ ืžื™ืจ ืฆืขื˜ื™ื™ืœืŸ ื“ื™ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืคื•ืŸ ื˜ืฉืึทืจืฅ ืื•ืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–. ื“ืขื ืžื™ื˜ืœ ืึทื– ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื”ืึธื‘ืŸ ืฆื• ืึทืจื‘ืขื˜ืŸ ืื™ืŸ ืฆื•ื•ื™ื™ ื’ื™ื˜ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ื–: ืื™ื™ื ืขืจ ืคึฟืึทืจ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ, ืื•ืŸ ืื™ื™ื ืขืจ ืคึฟืึทืจ ื“ื™ืคื™ื™ื ื™ื ื’ ื–ื™ื™ึทืŸ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืฆื• Kubernetes. 2 ื’ื™ื˜ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ื– ืžื™ื™ื ืขืŸ 2 ื•ื•ืึธืจืงืคืœืึธื•ื–, ืื•ืŸ ืขืก ืื™ื– ื’ืจื™ื ื’ ืคึฟืึทืจ ืึท ื ืขื•ื•ื‘ื™ืข ืฆื• ืฆืขืžื™ืฉื˜.

ืึธื ืคื™ืจื•ื ื’ ื’ืขื ืขืจืึทืœื™ื–ืขื“ ื˜ืฉืึทืจืฅ ืื™ื– ืึท ื›ืึทืกืึทืœ

ื•ื•ื™ ืžื™ืจ ืฉื•ื™ืŸ ื’ืขื–ืื’ื˜, ื“ื–ืฉืึทื ืขืจื™ืง ื˜ืฉืึทืจืฅ ื–ืขื ืขืŸ ื–ื™ื™ืขืจ ื ื•ืฆื™ืง ืคึฟืึทืจ ื™ื“ืขื ื˜ื™ืคื™ืฆื™ืจืŸ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื– ืื•ืŸ ื’ืขืฉื•ื•ื™ื ื“ ื“ื™ืคึผืœื™ื™ื™ื ื’ ืงื™ื™ืคืœ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–. ืื‘ืขืจ ืžื™ืจ ื ื•ืฆืŸ --reuse-valuesืฆื• ื•ื™ืกืžื™ื™ื“ืŸ ื“ื•ืจื›ื’ื™ื™ืŸ ืึทืœืข ื“ื™ ื•ื•ืึทืœื•ืขืก ื™ืขื“ืขืจ ืžืึธืœ ืžื™ืจ ืฆืขื•ื•ื™ืงืœืขืŸ ืึท ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื•ื•ืึธืก ืื™ื– ืึท ื˜ื™ื™ืœ ืคื•ืŸ ื“ืขื ื’ืขื ืขืจืึทืœื™ื–ืขื“ ื˜ืฉืึทืจื˜.

ืื™ืŸ ืึท ืงืขืกื™ื™ื“ืขืจื“ื™ืง ืขืงืกืคึผืจืขืก ื•ื•ืึธืจืงืคืœืึธื•ื•, ืžื™ืจ ื”ืึธื‘ืŸ ื‘ืœื•ื™ื– ืฆื•ื•ื™ื™ ื•ื•ืึทืœื•ืขืก ื•ื•ืึธืก ื˜ื•ื™ืฉืŸ ืงืขืกื™ื™ื“ืขืจ: ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืจืขืคึผืœืึทืงืึทื– ืื•ืŸ ื“ื™ ื‘ื™ืœื“ ืงื•ื•ื™ื˜ืœ (ื•ื•ืขืจืกื™ืข). ืื ื“ืขืจืข, ืžืขืจ ืกื˜ืึทื‘ื™ืœ ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ื˜ืฉื™ื™ื ื“ื–ืฉื“ ืžืึทื ื™ื•ืึทืœื™, ืื•ืŸ ื“ืึธืก ืื™ื– ื’ืึทื ืฅ ืฉื•ื•ืขืจ. ื“ืขืจืฆื•, ืื™ื™ืŸ ื’ืจื™ื™ึทื– ืื™ืŸ ื“ื™ืคึผืœื•ื™ื™ื ื’ ืึท ื’ืขื ืขืจืึทืœื™ื–ืขื“ ื˜ืฉืึทืจื˜ ืงืขืŸ ืคื™ืจืŸ ืฆื• ืขืจื ืกื˜ ืคื™ื™ืœื™ืขืจื–, ื•ื•ื™ ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขื–ืขืŸ ืคึฟื•ืŸ ืื•ื ื“ื–ืขืจ ืื™ื™ื’ืขื ืข ื“ืขืจืคืึทืจื•ื ื’.

ืึทืคึผื“ื™ื™ื˜ื™ื ื’ ืงื™ื™ืคืœ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ื˜ืขืงืขืก

ื•ื•ืขืŸ ืึท ื“ืขื•ื•ืขืœืึธืคึผืขืจ ืœื™ื™ื’ื˜ ืึท ื ื™ื™ึทืข ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ, ืขืจ ืžื•ื–ืŸ ื˜ื•ื™ืฉืŸ ืขื˜ืœืขื›ืข ื˜ืขืงืขืก: ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื“ืขืงืœืึทืจืึทืฆื™ืข, ื“ื™ ืจืฉื™ืžื” ืคื•ืŸ ืกื™ืงืจื™ืฅ, ืึทื“ื™ื ื’ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื•ื•ื™ ืึท ื“ืขืคึผืขื ื“ืขื ืกื™ ืื•ื™ื‘ ืขืก ืื™ื– ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ื™ ื’ืขื ืขืจืึทืœื™ื–ืขื“ ื˜ืฉืึทืจื˜.

Jenkins ืคึผืขืจืžื™ืฉืึทื ื– ื–ืขื ืขืŸ ืื•ื™ืš ืขืงืกื˜ืขื ื“ืขื“ ืื™ืŸ ื•ื•ืึธืœื˜

ืื™ืฆื˜ ืžื™ืจ ื”ืึธื‘ืŸ ืื™ื™ืŸ ืึทืคึผืจืึธื•ืœ, ื•ื•ืึธืก ืœื™ื™ืขื ื˜ ืึทืœืข ื“ื™ ืกื™ืงืจื™ืฅ ืคื•ืŸ ื“ื™ ื•ื•ืึธืœื˜.

ื“ื™ ืจืึธื•ืœื‘ืึทืง ืคึผืจืึธืฆืขืก ืื™ื– ื ื™ืฉื˜ ืึธื˜ืึทืžื™ื™ื˜ื™ื“

ืฆื• ืฆื•ืจื™ืงืงืจื™ื’ืŸ, ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืœื•ื™ืคืŸ ื“ื™ ื‘ืึทืคึฟืขืœ ืื•ื™ืฃ ืขื˜ืœืขื›ืข ืงืœืึทืกื˜ืขืจื–, ืื•ืŸ ื“ืึธืก ืื™ื– ืคืจืึธื˜ ืžื™ื˜ ืขืจืจืึธืจืก. ืžื™ืจ ื“ื•ืจื›ืคื™ืจืŸ ื“ืขื ืึธืคึผืขืจืึทืฆื™ืข ืžืึทื ื™ื•ืึทืœื™ ืฆื• ืขื ืฉื•ืจ ืึทื– ื“ื™ ืจื™ื›ื˜ื™ืง ื•ื•ืขืจืกื™ืข ืฉื™ื™ึทืŸ ืื™ื– ืกืคึผืขืกื™ืคื™ืขื“.

ืžื™ืจ ืžืึทืš ืฆื• GitOps

ืื•ื ื“ื–ืขืจ ืฆื™ืœ

ืžื™ืจ ื•ื•ื™ืœืŸ ืฆื• ืฆื•ืจื™ืงืงื•ืžืขืŸ ื“ื™ ื˜ืฉืึทืจื˜ ืฆื• ื“ื™ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ ืคื•ืŸ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืขืก ื“ื™ืคึผืœื•ื™ื“ื–.

ื“ื™ ื•ื•ืึธืจืงืคืœืึธื•ื• ื•ื•ืขื˜ ื–ื™ื™ืŸ ื“ื™ ื–ืขืœื‘ืข ื•ื•ื™ ืคึฟืึทืจ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื•ื•ืขืŸ ืึท ืฆื•ื•ื™ื™ึทื’ ืื™ื– ืคึผื•ืฉื˜ ืฆื• ื‘ืขืœ, ื“ื™ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื˜ืจื™ื’ืขืจื“ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ. ื“ืขืจ ื”ื•ื™ืคึผื˜ ื—ื™ืœื•ืง ืฆื•ื•ื™ืฉืŸ ื“ืขื ืฆื•ื’ืึทื ื’ ืื•ืŸ ื“ื™ ืงืจืึทื ื˜ ื•ื•ืึธืจืงืคืœืึธื•ื• ื•ื•ืึธืœื˜ ื–ื™ื™ืŸ ืึทื– ืึทืœืฅ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื’ืขืจืื˜ืŸ ืื™ืŸ ื’ื™ื˜ (ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื–ื™ืš ืื•ืŸ ื“ื™ ื•ื•ืขื’ ืขืก ืื™ื– ื“ื™ืคึผืœื•ื™ื“ ืื™ืŸ Kubernetes).

ืขืก ื–ืขื ืขืŸ ืขื˜ืœืขื›ืข ืึทื“ื•ื•ืึทื ื˜ื™ื“ื–ืฉื™ื–:

  • ืคื™ืœ ืงืœื™ืจืขืจ ืคึฟืึทืจ ื“ื™ ื“ืขื•ื•ืขืœืึธืคึผืขืจ. ืขืก ืื™ื– ื’ืจื™ื ื’ืขืจ ืฆื• ืœืขืจื ืขืŸ ื•ื•ื™ ืฆื• ืฆื•ืœื™ื™ื’ืŸ ืขื ื“ืขืจื•ื ื’ืขืŸ ืื™ืŸ ืึท ื”ื™ื’ืข ื˜ืฉืึทืจื˜.
  • ื“ื™ ืกืขืจื•ื•ื™ืก ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ื“ืขืคึฟื™ื ื™ืฆื™ืข ืงืขื ืขืŸ ื–ื™ื™ืŸ ืกืคึผืขืกื™ืคื™ืขื“ ื–ืขืœื‘ื™ืงืขืจ ืึธืจื˜ ื•ื•ื™ ื“ื™ ืงืึธื“ ื“ื™ื ืกื˜.
  • ืึธื ืคื™ืจื•ื ื’ ื“ื™ ื‘ืึทื–ื™ื™ึทื˜ื™ืงื•ื ื’ ืคื•ืŸ ื’ืขื ืขืจืึทืœื™ื–ืขื“ ื˜ืฉืึทืจืฅ. ื“ืขืจ ื“ื™ื ืกื˜ ื•ื•ืขื˜ ื”ืึธื‘ืŸ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื”ืขืœื ืžืขืœื“ื•ื ื’. ื“ืึธืก ื•ื•ืขื˜ ืœืึธื–ืŸ ืื™ืจ ืฆื• ืคื™ืจืŸ ื“ื™ ืœื™ื™ืคืกื™ื™ืง ืคื•ืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ (ืจืึธืœืœื‘ืึทืง, ืึทืคึผื’ืจื™ื™ื“) ืื•ื™ืฃ ื“ืขืจ ืงืœืขื ืกื˜ืขืจ ืžื“ืจื’ื”, ืึทื–ื•ื™ ื ื™ืฉื˜ ืฆื• ื•ื•ื™ืจืงืŸ ืื ื“ืขืจืข ื‘ืึทื“ื™ื ื•ื ื’ืก.
  • Benefits ืคื•ืŸ ื’ื™ื˜ ืคึฟืึทืจ ื˜ืฉืึทืจื˜ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’: ื•ืคืžืึทื›ืŸ ืขื ื“ืขืจื•ื ื’ืขืŸ, ืงืึธื ื˜ืจืึธืœื™ืจืŸ ืงืœืึธืฅ, ืืื–"ื• ื•. ืื•ื™ื‘ ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ื•ืคืžืึทื›ืŸ ืึท ืขื ื“ืขืจื•ื ื’ ืฆื• ืึท ื˜ืฉืึทืจื˜, ืื™ืจ ืงืขื ืขืŸ ื˜ืึธืŸ ื“ืึธืก ืžื™ื˜ ื’ื™ื˜. ื“ื™ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืกื˜ืึทืจืฅ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ.
  • ืื™ืจ ืงืขืŸ ื‘ืึทื˜ืจืึทื›ื˜ืŸ ื™ืžืคึผืจื•ื•ื•ื™ื ื’ ื“ื™ื™ืŸ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ื•ื•ืึธืจืงืคืœืึธื•ื• ืžื™ื˜ ืžื›ืฉื™ืจื™ื ื•ื•ื™ Skaffold, ืžื™ื˜ ื•ื•ืึธืก ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ืงืขื ืขืŸ ืคึผืจื•ื‘ื™ืจืŸ ืขื ื“ืขืจื•ื ื’ืขืŸ ืื™ืŸ ืึท ืงืึธื ื˜ืขืงืกื˜ ื ืึธืขื ื˜ ืฆื• ืคึผืจืึธื“ื•ืงืฆื™ืข.

ืฆื•ื•ื™ื™-ืฉืจื™ื˜ ืžื™ื’ืจืึทื˜ื™ืึธืŸ

ืื•ื ื“ื–ืขืจ ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ื”ืึธื‘ืŸ ืฉื•ื™ืŸ ื ื™ืฆืŸ ื“ืขื ื•ื•ืึธืจืงืคืœืึธื•ื• ืคึฟืึทืจ 2 ื™ืึธืจ ืื™ืฆื˜, ืึทื–ื•ื™ ืžื™ืจ ื•ื•ืขืœืŸ ื“ื™ ืžื™ื’ืจืึทื˜ื™ืึธืŸ ืฆื• ื–ื™ื™ืŸ ื•ื•ื™ ืคึผื™ื™ื ืœืึทืก ื•ื•ื™ ืžืขื’ืœืขืš. ื“ืขืจื™ื‘ืขืจ, ืžื™ืจ ื‘ืึทืฉืœืึธืกืŸ ืฆื• ืœื™ื™ื’ืŸ ืึท ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ืฉืจื™ื˜ ืื•ื™ืฃ ื“ื™ ื•ื•ืขื’ ืฆื• ื“ืขื ืฆื™ืœ.
ื“ืขืจ ืขืจืฉื˜ืขืจ ื‘ื™ื ืข ืื™ื– ืคึผืฉื•ื˜:

  • ืžื™ืจ ื”ืึทืœื˜ืŸ ืึท ืขื ืœืขืš ืกื˜ืจื•ืงื˜ื•ืจ ืคึฟืึทืจ ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜, ืึธื‘ืขืจ ืื™ืŸ ืึท ืื™ื™ืŸ ื›ื™ื™ืคืขืฅ ื’ืขืจื•ืคืŸ DailymotionRelease.

apiVersion: "v1"
kind: "DailymotionRelease"
metadata:
  name: "app1.ns1"
  environment: "dev"
  branch: "mybranch"
spec:
  slack_channel: "#admin"
  chart_name: "app1"
  scaling:
    - context: "dev-us-central1-0"
      replicas:
        - name: "hermes"
          count: 2
    - context: "dev-europe-west1-0"
      replicas:
        - name: "app1-deploy"
          count: 2
  secrets:
    - secret_id: "app1"
      contexts:
        - name: "default"
          vaultPath: "/kv/dev/ns1/app1/test"
          vaultKey: "password"
        - name: "dev-europe-west1-0"
          vaultPath: "/kv/dev/ns1/app1/test"
          vaultKey: "password"

  • 1 ืžืขืœื“ื•ื ื’ ืคึผืขืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ (ืึธืŸ ื’ืขื ืขืจืึทืœื™ื–ืขื“ ื˜ืฉืึทืจืฅ).
  • ื˜ืฉืึทืจืฅ ืื™ืŸ ื“ื™ ื’ื™ื˜ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ ืคื•ืŸ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ.

ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขืจืขื“ื˜ ืžื™ื˜ ืึทืœืข ื“ืขื•ื•ืขืœืึธืคึผืขืจืก, ืึทื–ื•ื™ ื“ืขืจ ืžื™ื’ืจืึทื˜ื™ืึธืŸ ืคึผืจืึธืฆืขืก ื”ืื˜ ืฉื•ื™ืŸ ืื ื’ืขื”ื•ื™ื‘ืŸ. ื“ืขืจ ืขืจืฉื˜ืขืจ ื‘ื™ื ืข ืื™ื– ื ืึธืš ืงืึทื ื˜ืจืึธื•ืœื“ ืžื™ื˜ ื“ื™ ืกื™ ืคึผืœืึทื˜ืคืึธืจืžืข. ืื™ืš ื•ื•ืขืœ ื‘ืึทืœื“ ืฉืจื™ื™ึทื‘ืŸ ืืŸ ืื ื“ืขืจ ืคึผืึธืกื˜ืŸ ื•ื•ืขื’ืŸ ืคืึทืกืข ืฆื•ื•ื™ื™: ื•ื•ื™ ืžื™ืจ ืืจื™ื‘ืขืจื’ืขืคืืจืŸ ืฆื• ืึท GitOps ื•ื•ืึธืจืงืคืœืึธื•ื• ืžื™ื˜ ืคืœืึทืงืก. ืื™ืš ื•ื•ืขื˜ ื–ืึธื’ืŸ ืื™ืจ ื•ื•ื™ ืžื™ืจ ืฉื˜ืขืœืŸ ืึทืœืฅ ืื•ืŸ ื•ื•ืึธืก ืฉื•ื•ืขืจื™ืงื™ื™ื˜ืŸ ืžื™ืจ ื’ืขืคึผืœืึธื ื˜ืขืจื˜ (ืงื™ื™ืคืœ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ื–, ืกื™ืงืจื™ืฅ, ืืื–"ื• ื•). ื’ื™ื™ ื“ื™ ื ื™ื™ึทืขืก.

ื“ืึธ ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขืคืจื•ื•ื•ื˜ ืฆื• ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ืื•ื ื“ื–ืขืจ ืคึผืจืึธื’ืจืขืก ืื™ืŸ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ื•ื•ืึธืจืงืคืœืึธื•ื• ืื™ืŸ ื“ื™ ืœืขืฆื˜ืข ื™ืึธืจืŸ, ื•ื•ืึธืก ื’ืขืคึฟื™ืจื˜ ืฆื• ื’ืขื“ืื ืงืขืŸ ื•ื•ืขื’ืŸ ื“ื™ GitOps ืฆื•ื’ืึทื ื’. ืžื™ืจ ื”ืึธื‘ืŸ ื ืึธืš ื ื™ืฉื˜ ื“ืขืจื’ืจื™ื™ื›ื˜ ื“ืขื ืฆื™ืœ ืื•ืŸ ื•ื•ืขืœืŸ ื‘ืึทืจื™ื›ื˜ ื•ื•ืขื’ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ, ืึธื‘ืขืจ ืื™ืฆื˜ ืžื™ืจ ื–ืขื ืขืŸ ืงืึทื ื•ื•ื™ื ืกื˜ ืึทื– ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขื˜ืืŸ ื“ื™ ืจืขื›ื˜ ื–ืึทืš ื•ื•ืขืŸ ืžื™ืจ ื‘ืึทืฉืœืึธืกืŸ ืฆื• ืคืึทืจืคึผืึธืฉืขื˜ืขืจืŸ ืึทืœืฅ ืื•ืŸ ื‘ืจืขื ื’ืขืŸ ืขืก ื ืขืขื ื˜ืขืจ ืฆื• ื“ื™ ื’ืขื•ื•ื•ื™ื ื”ื™ื™ื˜ืŸ ืคื•ืŸ ื“ืขื•ื•ืขืœืึธืคึผืขืจืก.

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

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’