クラウドネイティブな開発を可能に
理想的な「クラウドで開発/テスト、オンプレミスで本番運用」をどう実現する?(2/2 ページ)
「クラウドで開発/テスト、オンプレミスで本番運用」を実現するツール
ゼロから始める場合、ソフトウェアのリリースパイプラインを完全に自動化するツールチェーン(順番に組み合わせて使われる一連のツール)の利用を考えよう。
ソース管理
最も広く使われているソース管理ツールである「Git」は、分散バージョン管理システムを提供する。多くの継続的テストおよびインテグレーションツールは、Gitと簡単に連係する。WebベースのGitリポジトリホスティングサービスである「GitHub」も、多くの企業で使われている。アプリケーションチームは、パブリックおよびプライベートソースコードリポジトリをセットアップし、コードベースの作成を社内外の人と協力して進めることができる。コードベースはテスト環境や本番環境で引き続き使用される。
継続的インテグレーション
クラウドのテスト環境へのコードデプロイの自動化に関しては、継続的インテグレーション(CI)サーバを試すとよい。CIサーバは、ソース管理リポジトリにコミット(アプリケーションコードの変更)がないかポーリングし、最新の変更に基づいて一連のステージをトリガーするようにセットアップできる。
例えば、オープンソースのCIサーバ「Jenkins」(あるいはそのライバルの「TeamCity」「Travis CI」「CircleCI」「Codeship」)を使って、GitHubリポジトリにアプリケーションコードの変更がないかポーリングができる。変更がコミットされていたら、Jenkinsはそのコードをビルドし、単体テストを行い、CloudFormationテンプレートを起動して、テスト環境のデプロイをトリガーする。テスト環境が立ち上がったら、別のジョブがアプリケーションをテスト環境内のサーバにデプロイする。こうした仕組みによって、アプリケーションコードは全てのテストに合格するまで、本番サーバにデプロイされないようになっているが、アプリケーションコードが全てのテストに合格したら、運用チームは、手動でサーバにデプロイするか、サーバへのデプロイを自動実行するタスクを起動することができる。
パフォーマンス、ロード、ユーザーインタフェーステスト
パフォーマンスやユーザーインタフェース(UI)のテストでは、アプリケーションが本番稼働時に予想されるユーザーロードを処理でき、スケーリングしても、適切に機能することが確認される。オンプレミスとクラウドベースの両方のリソースでロードテストとパフォーマンステストを行えるツールでは、ApicaとBlazeMeterの製品が、人気がある。また、「Ghost Inspector」は、Webサイトのバグやその他のUIの問題を検出するための優れたツールだ。
クラウドネイティブなDevOpsツール
AmazonとMicrosoftは、シンプルでクラウドネイティブなソフトウェアライフサイクル管理ツールを開発済みだ。これらのツールは、オンプレミスインフラと、パブリッククラウドを使用するハイブリッドインフラで、アプリケーションを柔軟に管理することを目的としている。
「AWS CodeDeploy」は、「Amazon Elastic Compute Cloud」(Amazon EC2)インスタンスや、自社所有サーバへのアプリケーションコードのデプロイを自動化する。「AWS CodePipeline」は、統合された継続的デリバリ(CD)パイプラインを、クラウド上に構築する。このパイプラインは、ソース管理リポジトリに変更がないかポーリングし、CIサーバでビルドやテストを実行させ、クラウド上の開発インスタンスに、あるいはCodeDeployエージェントが動作するプライベートサーバにコードをデプロイする。
Microsoftのクラウドベースの「Visual Studio Team Services」も、こうしたAWSのDevOpsツールセットと機能的に似ている。Release Management機能によってIT部門は、アプリケーションチームが任意のサーバにコードをデプロイできるように、自動化されたリリースパイプラインを構築できる。
CIサーバは、オンプレミスでもクラウドでも動作する。また、クラウドサーバは、1つのクラウドのサーバでなくても構わないが、オンプレミスサーバは、開発およびテストサーバとは異なるクラウドプラットフォームでも使用できる。例えば、AWS CodeDeployエージェントをAzure VMで動作させることも可能だ。
全てを実際に機能させる
今では、開発とテストをパブリッククラウドで行い、本番アプリケーションをオンプレミスで運用するハイブリッドアプローチを実行するための技術はそろっている。だが、最大の問題の1つは、その環境の複雑さだろう。
そのため、担当者が職務を遂行するには、一定のリソースが必要になる。その中には、パブリッククラウドプラットフォームや、アプリケーションのパイプラインを形成する特定のCI/CDツールに関する研修やトレーニングが含まれるだろう。
また、IT部門の全てのチームがハイブリッドクラウドのアプローチに取り組む必要がある。例えば、オンプレミスのネットワークチームやセキュリティチームが、規制や社内セキュリティポリシーの順守のために、オンプレミスからクラウドへのデータの流れを理解しなければならない場合があるかもしれない。目的が何であれ、DevOpsチームと他チームの仕事上の連係を促進することが、パブリッククラウドからオンプレミス本番サーバへの継続的なデプロイの成功を確実なものにする。全てのチームが大きな目標の達成に貢献できるが、そのためには協力し合わなければならない。一丸となってこの仕事に取り組むことが重要だ。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
5
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
6
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
7
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
-
10
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー