SHOEISHA iD

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

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

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

コンテナ・Kubernetesに対する開発者の苦手意識を解決! SpringとTanzuが実現するDevOpsへの第一歩

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

コンテナへの苦手意識を払拭する「Spring」などの技術の進化

 だが、そんな苦手意識のある開発者でも、コンテナを身近に感じられる技術が登場した。それが2014年にリリースされた「Spring Boot」である。Spring BootはSpringの機能を使いやすくするためのフレームワーク。これを使うことでアプリケーションサーバの構築が不要になり、作ったパッケージをそのまま単一で動かすことができる。

 このように改めて言語化すると気づく人もいるかもしれないが、Spring Bootはコンテナと似た技術というわけだ。「Spring Bootがリリースされたことで、Springで作ったものを容易にコンテナ化やクラウド化できるようになった」と佐藤氏は説明する。さらに特筆すべきは、Spring Boot 2.3から、Cloud Native Buildpacks(クラウドネイティブビルドパック)をサポートしたことだ。

 「開発者にとって馴染み深いMavenやGradleというビルドツール1つで、Dockerイメージの作成が可能になりました」(佐藤氏)

 しかもクラウドネイティブビルドパックは、使用言語は自動判定し、最適なDockerファイルを作成・コンテナ化してくれるのだ。

 Spring Bootだけではない。VMwareも「Tanzu Application Platform(以下、Tanzu)」という、Kubernetes上でクラウドネイティブアプリケーションの構築・デプロイを容易にするプラットフォームを迅速かつ安全にアプリケーションを構築、マルチクラウド上のKubernetesにデプロイするためのプラットフォームをリリース。このTanzuの中に含まれるTanzu Build Serviceに、クラウドネイティブビルドパックの機能が組み込まれている。つまり、Tanzu Application Platformを使えば、自動的にクラウドネイティブビルドパックが使えるようになるというわけだ。後はcf pushというコマンドを叩くだけで、すべての運用はTanzuに任せることができ、開発者はコンテナを一切意識することなく使えるようになるという。

VMware Tanzu
Tanzuを活用した開発のイメージ

 「このようにDockerやKubernetes周辺の技術が登場したことで、Dockerファイルを開発者自ら書く必要はもちろん、Dockerファイル自体を必要とすることなく、開発者にとって馴染みのあるコマンドに少し手を加えるだけで、ビルドからコンテナ化、配布まですべて行ってくれるような技術が登場しています。Dockerやコンテナ、Kubernetesに苦戦してきた開発者にとって、難しかったコンテナ関連の技術を隠ぺいして、簡単な操作で誰もが使えるようになってきたのです。とにかくコンテナを利用してみたい、コンテナのメリットを得たいという開発者にとって、スタートしやすい環境が整ってきたと思います」(佐藤氏)しかも素晴らしいのは、コンテナを使ううえで課題となるデータベースの接続や外部連携なども、プラットフォーム側が担保してくれる。「開発者は純粋に作りたいものを作れば、最終的にコンテナとしてできあがってくる。しかも1つのプラットフォーム、1つのコマンドで完結する。素晴らしい技術です」(佐藤氏)

 VMwareでは運用もBOSHというKubernetesの構成管理部分を補う機能を有償で用意。「マルチクラウドに対応しているので、デプロイ先となるパブリッククラウドの種類を意識することなく、運用を自動化してくれます。アプリケーションをよりリッチにできるのも魅力ですね」(佐藤氏)

 Spring BootやTanzuを使えば、インフラの知識のない開発者でもコンテナやKubernetesを扱える環境が整ってきたとはいえ、「勉強が不要というわけではない」と佐藤氏は釘を刺す。「Tanzuでどういうことができるのか、機能を勉強することは必要でしょう。特に意識してほしいのはインテグレーションの部分。どれを使えば自分の環境に最適なのか、選定にも関わってくるので、このあたりの知識については特に注力して身につけてほしいと思います」(佐藤氏)

 将来的に企業情報システムはマイクロサービス化されていく方向に進んでおり、その前段階として、コンテナに関する知識は、インフラエンジニアはもちろん、開発者にとっても不可欠とも言える。

Spring BootとTanzuがDevOpsの懸け橋に

 このようにコンテナやKubernetesを取り巻く技術は、日進月歩で進化している。これまでのようにインフラの知識を身につけなければ入れなかったコンテナの世界に、開発者も容易に入れるようになっている。これまでDevとOpsではスキルセットが異なっていたが、その懸け橋となる技術が登場したことで、DevとOpsが共通言語で話せるようになり、一気通貫のDevOpsの実現も見えてくる。

 「インフラやコンテナに苦手意識を持っている開発者はまだまだ多いと思います。ですが、Maven、Gradleという馴染みのあるコマンドで実行できるほど、コンテナは身近な存在になっています。コンテナの技術を使うことで、システム開発の迅速化が可能になり、開発するものもリッチになる。また環境依存のバグを減らすことができ、さらに運用はプラットフォームに任せることができる。その結果、品質の向上にもつながります。このようにコンテナ側から歩み寄ってくれているので、使わない手はありません。その入り口として、最適なのが今回紹介した技術だと思います。ぜひこれらを活用して、コンテナの世界への第一歩を踏み出してほしいですね」(佐藤氏)

関連情報

 SB C&Sは、VMware Tanzu をはじめとした DevOps の成功に必要なサービスを提供し、お客さまのDevOps 導入をトータルでサポートします。詳細はこちらから!

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

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

もっと読む

この記事の著者

中村 仁美(ナカムラ ヒトミ)

 大阪府出身。教育大学卒。大学時代は臨床心理学を専攻。大手化学メーカー、日経BP社、ITに特化したコンテンツサービス&プロモーション会社を経て、2002年、フリーランス編集&ライターとして独立。現在はIT、キャリアというテーマを中心に活動中。IT記者会所属。趣味は読書、ドライブ、城探訪(日本の城)。...

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

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

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

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

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

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

この記事をシェア

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

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング