古賀政純「Dockerがもたらすビジネス変革」

HPEの開発部門におけるDocker基盤導入の検討 - (page 2)

古賀政純(日本ヒューレットパッカード)

2017-11-20 07:15

DevOpsを実現するCI/CDモデルの検討

 筆者が所属するHewlett Packard Enterprise(HPE)は、最新鋭のハードウェア製品や自社さまざまなソフトウェア製品の開発環境において、CI/CD(継続的インテグレーション・継続的デリバリ)を全社的に実践しています。継続的インテグレーション(Continuous Integration、通称、CI)とは、変更が発生したコードをリポジトリ(コードの保管庫)サーバに定期的にアップロードし、ビルド作業とテスト作業の繰り返しを自動的に行うソフトウェア開発の手法です。

 バグの早期発見、品質の向上、属人化の防止、ソフトウェアの検証からリリースまでの時間短縮などが期待できます。また、継続的デリバリ(Continuous Delivery、通称、CD)は、継続的インテグレーションによって得られたソフトウェアのコードをテスト環境、及び、本番環境へ自動的に繰り返しリリースするソフトウェア開発手法です。

 開発部門の他のメンバーの成果物が出来上がるのを待つといった遅延を低減し、メンバー間の作業の効率化が期待できます。このCI/CDを行うことで、顧客の要求の優先順位の高い機能を短期間で開発し、安定的にリリースすることができるようになります。一般に、開発部門と運用部門が協調し、開発、品質保証、運用を行う上でのベストプラクティスのことをDevOps(Development and Operations)といいます。事業部門、開発部門、運用部門がスムーズに連携することで、コラボレーション、自動化、監視能力が向上し、アプリケーションの品質とリリース速度が向上します。


継続的インテグレーション、継続的デリバリー、継続的な運用

 HPEの開発部門では、DevOpsのワークロードを常に最適化する仕組みと商用版のDockerエンジン(Docker Enterprise Edition)を組み込んだCI/CD環境を社内で展開しています。上記の3つの概念図で示されるDevOpsを実現するCI/CDモデルをうまく稼働させることができれば、新しいソフトウェア駆動型の魅力的な機能をより迅速にソフトウェア製品に反映できます。

 ただし、CI/CDモデルを採用した開発プロジェクトにおいては、開発チームに対して、従来の仮想化基盤とは異なるため、OS環境(OSテンプレートのDockerイメージ)の準備といった運用面の刷新、開発環境の利用手順、開発手法の変更や禁止事項などで合意を得なければなりません。

 また、ソフトウェアの開発(コーディング)、ソフトウェアのビルド、機能テストなどの各ステップの自動化や、開発メンバー間でのビルドにおける待ち時間の短縮、さらに、ソフトウェア開発作業の効率化を促進する開発用のOS環境の構築・運用の自動化の仕組みも組み込む必要があります。そのためには、簡素で使いやすく、さまざまな環境の開発環境をいくつも同時に利用できる必要があります。このような環境には、まさに、コンテナ管理ソフトウェアのDockerが有用です。


DevOpsを実現するCI/CDモデルの検討

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]