2023.03.16

継続的デリバリー/継続的デプロイメント - DevOps用語集 2023年版

日本仮想化技術株式会社
このエントリーをはてなブックマークに追加

はじめに

本記事では日本仮想化技術がDevOpsに関連する用語解説をわかりやすくお伝えいたします。今回は「継続的デリバリー/継続的デプロイメント」について解説していきたいと思います。

本論1

CI/CDにおけるCDという略語は、継続的デリバリーと継続的デプロイメントの二つの意味で使われています。これらの違いは、継続的デリバリーがリリースの準備までを自動で行いデプロイは手動で行うのに対し、継続的デプロイメントは本番環境へのデプロイまでを自動で一気に行うというものです。継続的デリバリーと継続的デプロイメントのいずれを選択するかは、そのアプリケーションの性質や開発チームの方針によって異なります。

どちらの場合でも、動くアプリケーションをデプロイ可能な状態にまでする継続的デリバリーのプロセスは必要です。例えばコンテナ上で稼働するアプリケーションの場合、コードをインストールしたコンテナイメージをビルドする必要があります。そしてビルドしたコンテナイメージは、コンテナリポジトリに登録することで、はじめてデプロイ可能な状態になります。

継続的デリバリーのプロセスは、CIプロセスの一環として行われることも一般的です。開発者がコードをコミットすると、自動的にCICDが実行され、テスト済みの動作するコードを含んだコンテナイメージが、リリース可能な状態でリポジトリに準備されるといった具合です。 

さらに継続的デプロイメントの場合は、これらのプロセスに加えて本番環境へのデプロイまでを自動化して実行します。これにより、開発者が行なった変更が既存のコードにマージされると、その変更が自動的に本番環境にまで反映されることになります。これを実現するためには、リリースの可否を自動で判定する仕組みも必要となります。E2Eテストや受け入れテストなど、従来テストチームが手動で行っていたようなテストを自動化する必要もあるでしょう。これはCIにおける単体テストの自動化とは異なり、ユーザー目線でのテストとなるため、自動化にはより高度な知識と技術が求められます。 

デプロイプロセスが自動化されることのメリットは、デプロイに人間が介入する必要がなくなることです。これによって、人為的ミスや属人性を排すことができ、誰が何度実行しても、同じ結果が得られるようになります。デプロイの信頼性が高まれば、デプロイに対しての心理的負荷が下がり、日に幾度とデプロイすることが可能になります。

06用語集継続的デリバリー.png

DevOpsはソフトウェアを迅速に、かつ、高い頻度でリリースします。このため、デプロイ作業には繰り返し可能で信頼性の高さが求められています。デプロイの自動化を行うことで、DevOpsをさらに高速に回すことが可能になります。 

関連リンク(任意)

かんたんDevOps | 日本仮想化技術株式会社
https://virtualtech.jp/devops/

とことんDevOps  | DevOpsに取り組みたい皆さんのための技術情報メディア
https://devops-blog.virtualtech.jp/

この記事の著者:日本仮想化技術株式会社

日本仮想化技術はベンダーニュートラルな独立系仮想化技術のエキスパート集団です。日本仮想化技術ではこれからDevOpsを始めたいと考えるプロジェクトに対して、DevOpsの導入、実践を支援する「DevOpsサポートサービス」というサービスを提供しています。


DevOps Hubのアカウントをフォローして
更新情報を受け取る

  • Like on Feedly
    follow us in feedly

関連記事

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

お問い合わせ

DevOpsに関することなら
お気軽にご相談ください。

Facebook、TwitterでDevOpsに関する
情報配信を行っています。