Kubernetesで高い開発者体験を作るには? ヤフーの開発環境の構築方法に学ぶ
【9-B-3】Kubernetesとカスタムコントローラーを活用したプラットフォーム開発・運用の勘所
アプリケーション開発は、これまではモノリシックなシステムでのウォーターフォール開発だったのが、今は開発からリリース、改善のサイクルを高頻度で回す手法が主流となった。以前よりも修正や機能強化を素早く提供できるようになったことで、品質・安定性の向上や市場ニーズへの柔軟な対応が実現。良いことばかりに見える一方、現場の開発者は責任範囲や習得すべきスキル/ツールが増加、開発に集中できない課題に悩まされている。そうした課題を解決し、開発体験を高めるアプローチとして注目されるのが、Platform Engineeringだ。ヤフー テクノロジーグループ システム統括本部 クラウドプラットフォーム本部の早川博氏は同社の事例をもとに、基本的な考え方やKubernetesのカスタムコントローラーを活用した開発環境の構築方法などを解説した。
開発者を「顧客」として捉え、生産性を向上させるPlatform Engineering
リリースと改善を高頻度で回す最近のITシステム開発。何かあってもすぐに修正できることで、品質と安定性を担保することへの精神的負担から少し解放され、場合によっては評価にもつながったハッピーな開発者も少なくないだろう。一方で、運用周りを考える必要が生じるなど責任範囲が広がり、ツールやスキルで習得すべきものも増加。開発そのものに集中しづらく、いろいろなことをカバーする必要があることからスーパーマン以外が活躍しづらいという課題も浮上している。
そこで登場したのが、Internal Developer Platform(IDP)だ。IDPは、開発者を「顧客」として捉え、開発により集中できる環境を整えることを目的とした基盤のことだ。IDPを運用開発するのは、専任チームだ。開発に関わる基本的な作業を自動化やセルフサービス化するなどにより、開発者が抱えるリアルな課題を解決する。一見するとユーザーとパブリッククラウドの関係のように見えるが、組織ごとの課題や要件に合わせて環境をカスタマイズできる点で大きく異なると、ヤフーのプライベートクラウド開発部門でKubernetesベースのコンピューティングプラットフォームの開発・運用に従事する早川博氏は述べる。
そのIDPを実現するための要素技術として重要な役割を担うのが、多様性のあるエコシステムが構築されたクラウドネイティブなテクノロジー群だ。特にKubernetesは、さまざまなワークロードを安定的に動かすための基本機能が充実するほか、組織固有の要件を実装するための拡張ポイントが多数用意されており、開発者が使い勝手に慣れている点も含めてIDP構築に最適と早川氏は述べる。実際、ヤフーではKubernetesの拡張ポイントのひとつであるカスタムコントローラーを使ってIDPを構築している。
この記事は参考になりましたか?
- Developers Summit 2023 セッションレポート連載記事一覧
- この記事の著者
-
谷崎 朋子(タニザキ トモコ)
エンタープライズIT向け雑誌の編集を経てフリーランスに。IT系ニュースサイトを中心に記事を執筆。セキュリティ、DevOpsあたりが最近は多めですが、基本は雑食。テクノロジーを楽しいエクスペリエンスに変えるような話が好きです。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
丸毛 透(マルモ トオル)
インタビュー(人物)、ポートレート、商品撮影、料理写真をWeb雑誌中心に活動。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営する開発者のための情報メディアです。日々の開発に取り組むエンジニアやテクノロジーを学びたい方に向けて、プログラミングやAI活用、開発ツール、エンジニアの学びとキャリアに関する記事をお届けしています。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
提供:ヤフー株式会社
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
