2021/12/10 に公開 1156 views

このエピソードについて

フロントエンドエンジニアが Kubernetes を身につけることについて、@spring_raining が @ta7uw と @yuji.kurihara 双方の立場から聞いてみました。

ゲスト紹介

  • @ta7uw
    • LINEバイト サーバサイドエンジニア
  • @yuji.kurihara
    • LINE LIVE/LIVEBUY フロントエンドエンジニア

フロントエンドエンジニアがKubernetesに触れるきっかけ

  • UIT INSIDEでは、先日Herokuライクな社内デプロイツールからPIPE Runtime (マネージドKubernetesクラスタ) に移行

    PIPE: 開発者体験を改善するための CI/CD + Runtime: https://linedevday.linecorp.com/2021/ja/sessions/43

  • はたしてフロントエンドはどこまでk8sの運用に立ち入るべきか?

    アプリケーション開発者は Amazon ECS あるいは Kubernetes をどこまで知るべきか: https://speakerdeck.com/toricls/you-build-it-you-run-it

  • LINEはオンプレミス中心という点も特徴
  • UIT SRE TFの活動

Kubernetesクラスタへのデプロイ・運用例

  • GitOpsが一般的
  • LINEバイトの例
    • フロントエンドのコンテナの監視やスケールアウト・スケールインはバックエンドエンジニアが担当
  • フロントエンドエンジニアとの責任分界点をどこに設定するか?

Kubernetesクラスタ運用者側の意見

  • フロントエンドが用意した構成を運用する上で、どのような点が考慮されているとうれしいか?
    • フロントエンド特有、というよりはコンテナ上のアプリケーション全般で通用する注意点を意識する
      • Statelessなコンテナにする (コンテナ内で状態を持たない)
      • ログ出力 (ファイルにログを書き込まない)
      • 設定値を外部から設定できるようにする
      • ヘルスチェックのエンドポイントを用意する
  • ビルドされるコンテナのTagについて
  • メトリクスの集計への対応

    Prometheus Exporter: https://prometheus.io/docs/instrumenting/exporters/

  • フロントエンドエンジニアがKubernetesの運用を学ぶためには?
    • 見えないだけで、フロントエンドエンジニアがデプロイしたものは誰かが運営している

Refs