SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

モダンアプリケーションへ舵を切れ(PR)

開発者がKubernetesを敬遠するのはなぜ? 苦手意識を乗り越えDevOpsを実現するために、VMwareが示す新たな視点

  • このエントリーをはてなブックマークに追加

 コンテナやKubernetesが年々普及しつつある。アプリケーションのモダナイズやクラウドネイティブ化のためには避けて通れなさそうだが、アプリケーション開発者からすると「できれば下のレイヤにはあまり関わりたくない」と敬遠したいのが本音ではないだろうか。アプリケーション開発者がKubernetesに苦手意識を持つ理由から、Kubernetesを意識しなくてもいいプラットフォームについてVMware デベロッパーアドボケイト柳原伸弥氏が解説する。

  • このエントリーをはてなブックマークに追加

ヴイエムウェア株式会社 ソリューション技術本部 ディベロッパーアドボケイト 柳原伸弥氏
ヴイエムウェア株式会社 ソリューション技術本部 デベロッパーアドボケイト 柳原伸弥氏

開発者にも浸透し始めたKubernetes、成り立ちに見る難しさの原因

 普段アプリケーションを開発しているエンジニアにとってコンテナは少し遠いインフラの世界の話題に感じられるのではないだろうか。しかし現実は、アプリケーション開発者にとってコンテナは身近に迫ってきている。Java開発者を対象にした調査(2022 Java Developer Productivity Report)では、使用しているプラットフォームは上位からDocker(41%)、Kubernetes(26%)、VMware(16%)。上位2つがコンテナで、半数以上を占めている。

 さらにVMwareの調査(State of Spring 2021)によると、Kubernetes上でコンテナ化したSpringアプリケーションを稼働している組織は前年の44%から57%へと上昇した。インフラエンジニアだけではなくアプリケーション開発者にとっても、もはやKubernetesは無視できない存在になりつつある。

 とはいえアプリケーション開発者にとってコンテナは敬遠したいところではないだろうか。基盤がコンテナで運用されることでスケーラブルになったり、環境を素早く柔軟に構築できたりするのはいいが、コンテナ、特にKubernetesに関与せざるをえないとなると腰が引ける。「インフラエンジニアに任せて、アプリケーション開発に専念したい」のが本音ではないだろうか。アプリケーション開発者の内心にKubernetesへの壁や苦手意識らしきものが潜んでいるかのようだ。

 その謎をVMware デベロッパーアドボケイト 柳原伸弥氏がするりと解く。なお柳原氏はもともとアプリケーション開発者でJavaやSpringに詳しい。トラディショナルな開発とクラウドネイティブ開発の両方を経験し、アプリケーションのモダナイゼーションの専門家でもある。

 まずはコンテナとKubernetesを分けて考えること。柳原氏は「例えばSpringにはフレームワークにコンテナを作り込む機能があります。開発者はコンテナを意識しなくて良いため、コンテナ自体はそう難しくないと感じるのでは」と話す。

 「一方でKubernetesに難しさの根源があります」と柳原氏。もともとKubernetesはGoogleの基盤に源流がある。周知の通り、Googleは24時間365日止まることなく、世界中にGmailやGoogle マップなどのサービスを提供している。もはや社会インフラだ。そのサービスを支えるインフラストラクチャとしてGoogleが開発したものがBorgと呼ばれるクラスタマネージャーである。

 このBorgを誰でも使えるようにオープンソース化したのがCloud Foundry BOSHとKubernetes。どちらも源流はGoogleのBorgであり、巨大サービス基盤を想定しているため「Google(の基盤)を自分たちで作ろうとするようなものだから、難しくて当然なのです」と柳原氏は断言する。

 Kubernetesを通じてダイナミックなインフラを作りあげていくところに醍醐味はあるものの、Googleに匹敵する巨大インフラを必要とする企業はそう多くはない。大規模サービスに関わるインフラエンジニアやSREエンジニアなら話は別だが、アプリケーション開発者がKubernetesを敬遠してしまいがちなのも無理もないというわけだ。

次のページ
開発プラットフォームを基盤ではなくプロダクトとして捉えてみる

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
モダンアプリケーションへ舵を切れ連載記事一覧

もっと読む

この記事の著者

加山 恵美(カヤマ エミ)

フリーランスライター。茨城大学理学部卒。金融機関のシステム子会社でシステムエンジニアを経験した後にIT系のライターとして独立。エンジニア視点で記事を提供していきたい。EnterpriseZine/DB Onlineの取材・記事や、EnterpriseZine/Security Onlineキュレーターも担当しています。 Webサイト:http://emiekayama.net

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

篠部 雅貴(シノベ マサタカ)

 フリーカメラマン 1975年生まれ。 学生時代、大学を休学しオーストラリアをバイクで放浪。旅の途中で撮影の面白さに惹かれ写真の道へ。 卒業後、都内の商業スタジオにカメラマンとして14年間勤務。2014年に独立し、シノベ写真事務所を設立。雑誌・広告・WEBなど、ポートレートをメインに、料理や商品まで幅広く撮影。旅を愛する出張カメラマンとして奮闘中。 Corporate website Portfolio website

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/15811 2022/05/17 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング