PHP Conference Japan 2020
採択
2020/12/12 13:15〜
Track3
Regular session (25 mins)

PHP on Kubernetes

k_kinzal Kouta Ozaki k_kinzal

コンテナネイティブ時代に突入した昨今、PHPer の皆さんはコンテナ化は済ませましたか?
Chatwork 株式会社では2020年に PHP アプリケーションをコンテナオーケストレーションツールのデファクトスタンダードである Kubernetes に置き換えました。

そこで、これからコンテナ化を行おうと考えている PHPer の方々向けに

  • なぜ、PHP アプリケーションでコンテナを使用するのか
  • コンテナ化、Kubernetes 化では何をする必要があり、何に注意する必要があるのか
  • 開発環境でも Kubernetes を使うべきか

など、Chatwork の事例を元に解説します。

  1. そもそも Kubernetes とは? ~ 導入のメリット
  2. コンテナ化の流れ ~ PHP アプリケーションの Docker イメージ化
     - 設定を注入しよう (Env / File)
      - 環境差異を設定で吸収する方法
      - 整合性の検証方法
     - ログ管理を行おう
      - 標準出力 (stdout) の取り扱い
      - TIPS: decorate_workers_output/log_limit の取り扱い
     - 外部サービスと認証管理
  3. Kubernetes 化の流れ ~ コンテナのオーケストレーション
     - PHP アプリケーションにおける構成例
     - Pod のライフサイクル (Readiness / Liveness)
     - メトリクスの収集方法
     - ロードバランサーの配置
  4. 開発環境としての Kubernetes はどう評価できるか?
     - パフォーマンスと安定性
     - PHPStorm との連携はどうするか?
     - Kubernetes Manifest の複雑性
  5. まとめ

Track ID: Track3-2-B
Discord Channel: #track3-2-b-kubernetes