PR

開発したアプリをテストフェーズに回す「移送」の仕組みを整える必要がある。今後、開発・テスト環境はコンテナを活用して構築する手法が主流になってくる。クラウドが用意する運用機能の活用に際しては、インフラチームの役割を見直す必要がある。

 今回は、クラウド環境で稼働するアプリケーション開発の環境整備と、ハイブリッドクラウド環境における運用の勘所を説明する。

PaaS+GitHubで開発環境を整備

 開発環境の整備では、まず開発とテストをどうつなぐか考える。開発したアプリをテストするには、プログラムやミドルウエアの設定といったアプリ資源を、テスト担当者に対して移送する必要がある。クラウドの仮想マシン上で開発したアプリの移送は、オンプレミス(自社所有)環境と同じ方式だ。最近ではDevOpsの環境下で、資源リポジトリーやJenkinsなどのCI/CDツールを使い、自動で移送することで効率化を図ってきた。各クラウドベンダーもIaaSやその周辺のネットワークやストレージ、ミドルウエア構成などをインストールした独自の移送サービスを提供しているので、それらを利用することもある。

 一方、Microsoft AzureのWeb AppsやHerokuのようなPaaS系サービスのクラウドにアプリ資源を移送する場合、クラウドベンダーが提供するサービスではなく、パブリックなGitHubのリポジトリーと直接連携して移送する方式が使えるようになった(図1)。

図1●GitHubを中心としたアプリの移送
図1●GitHubを中心としたアプリの移送
[画像のクリックで拡大表示]

 PaaS系のプラットフォームを利用し、GitHubと連携した場合、クラウド利用者が独自のリソースを持つ必要がなく、全環境をクラウドが提供するサービスを組み合わせて構築できる。プログラム言語もNode.jsやJavaといった主要なものをサポートしているので、各プログラム言語で開発したモジュールを、それぞれの言語に合わせて独自に開発環境を構築する必要がなく、すぐに利用できるのがメリットだ。