狠狠撸

狠狠撸Share a Scribd company logo
システム開発における基盤環境の
継続的インテグレーション/継続的デリバリー(CI/CD)
- 第3回 -
株式会社シイエヌエス
基盤システム事業部
COPYRIGHT (C)CNS Co., Ltd. All rights reserved.
はじめに
? 今回は、以下の図の破線で囲った工程について記す。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 2
基本
設計
要件定義
詳細
設計
アプリ開発 コーディング
/ビルド
単体
試験
結合
試験
システム
試験
維持
サービス
イン
基本
設計
要件定義
詳細
設計
コーディング
/ビルド
単体
試験
結合
試験
システム
試験
維持
サービス
イン
追加アプリ
開発
開発工程で必要となる環境
開発工程(コーディング~単体試験)において必要となる環境について、
以下に記す。
① コーディング環境
② ビルド環境
③ 単体試験環境
④ ソースコード/ライブラリ管理環境
⑤ 結合試験
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 3
コーディング
ビルド
単体試験
ライブラリ登録
結合試験
結合試験
? 結合試験工程における範囲
? 開発を行った実行モジュールについての機能性試験を実施する。
? システム規模が大きくなると複数の実行モジュールが存在し、
試験期間内に並行して複数項目の試験を実施する必要も発生する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 4
結合試験環境
? 結合試験工程の作業環境
? 機能確認を行うため、実行に必要となるパッケージについてはスタブを
用いた代替品でなく、実際のものを使用する必要がある。
? 運用性、可用性、安定性に関する試験はシステム試験にて行うが、
複数台構成のサーバ間の通信が機能として存在する場合は、それだけの
台数に応じた構成が必要となる。
? 実行モジュール毎に見た場合、必要となるサーバ構成は異なるが、
全ての実行モジュールで見れば、商用のサーバ構成にほぼ等しくなる。
? 結合試験の段階で商用サービスにて提供する環境と同様の構成が
必要となる可能性が高い。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 5
結合試験環境
? 結合試験は関連する実行モジュールが揃った段階で実施可能と
なる。
? 依存性が少ない実行モジュールについては並行して結合試験が
実施可能である。
? ある実行モジュールが複数の機能からの関連性を持つ場合、
複数から依存する部分については、並行した結合試験を行うには
制限がある。
?正常系は並行実施可能であるが、正常系と異常系を並行実施できない。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 6
結合試験環境
? 機能単位に試験を行い、重複する実行モジュールで異なる目的の
試験を実施する場合は、試験日程をずらして実施する。
? 結合試験環境調整を行う必要がある。
? ずらして実施する分ため、その分全体の試験日程を確保しておく
必要がある。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 7
結合試験環境
? 試験実施者が結合試験を可能な限り容易に試験実施可能とする。
? 物理環境が並行実施分だけ存在することが望ましい。
しかし、システム開発において、それだけの環境を作るにはコストが
かかるためできない。
? 物理的な手段ではなく、仮想的な環境増幅を行うための手段を
用いる。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 8
試験環境の増幅方法
? 試験環境の増幅方法
① 仮想OSによる増幅
② コンテナによる増幅
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 9
試験環境の増幅方法(仮想OSによる増幅方法)
? ハイパーバイザ上に仮想OSを立てて構築する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 10
説明
メリット 独立した仮想OSを用意することができる。
異なるOSを構築することができる。
デメリット OSから含まれるイメージを用意する必要があるため、ディスク?メモリなどを大量に
消費する。
主なパッケージ VMWare vSphere
Windows Hyper-V
試験環境の増幅方法(コンテナによる増幅方法)
? コンテナアプリケーションによりアプリケーションを
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 11
説明
メリット 事前に用意したコンテナを元に独自の実行環境(namespace)としてプロセス起動する。
User modeプロセスによる環境分離を行っているが、元となるOSは1つであるため、
リソース消費を抑えることができる。
デメリット 増幅できる環境は、同じOSである。
主なパッケージ Docker、OpenVZ、LXC
試験環境の増幅方法
? 今回は、単体試験の実施環境を増幅することを考えるため、
LinuxやWindowsといった異なるOSの増幅は考慮しない。
? 仮想OSで構築する場合は、構築するたびにネットワーク設定を
変える必要がある。
? 一次的なタスクのために環境を用意するには、コンテナによる
増幅を行った方が容易にできる。
? 結合試験のように試験結果によっては何度も試験の再実施が
必要となる場合に、ベースとなる環境を保持しておく必要があり、
コンテナの利用を推奨する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 12
試験実施方法
? 試験で使用する各サーバにコンテナに組み込むための
アプリケーションやランタイムを用意しておく。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 13
サーバ1 サーバ2 サーバ3
namespace namespace namespace
サーバ1用
アプリケーション/
ランタイム
サーバ2用
アプリケーション/
ランタイム
サーバ3用
アプリケーション/
ランタイム
試験実施方法
? 試験で使用する各サーバでコンテナ(namespace)を稼働する。
? コンテナ内で事前準備したアプリケーションを実行する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 14
サーバ1 サーバ2 サーバ3
namespace namespace namespace
サーバ1用
アプリケーション/
ランタイム
サーバ2用
アプリケーション/
ランタイム
サーバ3用
アプリケーション/
ランタイム
試験実施方法
? 各実行環境に試験実施用の資材を配布する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 15
サーバ1 サーバ2 サーバ3
namespace namespace namespace
リリース管理
サーバ
リリース管理
ツール
業務アプリ資材 業務アプリ資材 業務アプリ資材
サーバ1用
アプリケーション/
ランタイム
サーバ2用
アプリケーション/
ランタイム
サーバ3用
アプリケーション/
ランタイム
サーバ2
namespace
プロセス
試験実施方法
? 実行環境にて試験に必要なプロセスを起動して、試験を実施する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 16
サーバ1 サーバ3
namespace コンテナ
プロセス プロセス プロセス
サーバ1用
アプリケーション/
ランタイム
サーバ2用
アプリケーション/
ランタイム
サーバ3用
アプリケーション/
ランタイム
試験実施方法
? 試験完了後に、実行環境を廃棄する。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 17
サーバ1 サーバ2 サーバ3
namespace namespace namespace
サーバ1用
アプリケーション/
ランタイム
サーバ2用
アプリケーション/
ランタイム
サーバ2用
アプリケーション/
ランタイム
コンテナに含めておく範囲
? コンテナの中に以下の内容を含めておく。
? アプリケーションバイナリやランタイム
? 基本設定
? 業務アプリケーションが必要となるものは、全て実行環境を
用意した後にリリースをかけるようにする。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 18
コンテナを利用による問題
? コンテナの仕組みを利用し、1OS上で複数の実行環境を用意して
実施するため、試験項目によっては意識しなければいけない
? 性能試験
? リソース確認
上記2試験は環境占有ができるのであれば、実行環境を1つだけにして
測定することで、近似値として確認は可能。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 19
次回
? 第4回は、システム試験および、環境維持について取り扱う。
COPYRIGHT (C)CNS Co., Ltd. All rights reserved. 20

More Related Content

Similar to システム开発における基盘环境の颁滨/颁顿について#3 (20)

Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~
Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~
Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~
Yasuharu Nishi
?
Cisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップ
Cisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップCisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップ
Cisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップ
シスコシステムズ合同会社
?
ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~
ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~
ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~
シスコシステムズ合同会社
?
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
?
Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)
Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)
Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)
シスコシステムズ合同会社
?
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
Yusuke Suzuki
?
どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~
どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~
どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~
Trainocate Japan, Ltd.
?
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
シスコシステムズ合同会社
?
鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法
Toshiyuki Hirata
?
窜补产产颈虫监视运用业务の自动化事例
窜补产产颈虫监视运用业务の自动化事例窜补产产颈虫监视运用业务の自动化事例
窜补产产颈虫监视运用业务の自动化事例
翱厂厂ラボ株式会社
?
厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?
厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?
厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?
Daiki Kawanuma
?
アプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なことアプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なこと
Atsushi Takayasu
?
搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿
搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿
搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿
YoshihiroKitamura4
?
コンテナーによるIT基盤変革 - IT infrastructure transformation -
コンテナーによるIT基盤変革 - IT infrastructure transformation -コンテナーによるIT基盤変革 - IT infrastructure transformation -
コンテナーによるIT基盤変革 - IT infrastructure transformation -
日本ヒューレット?パッカード株式会社
?
本当は恐ろしい分散システムの话
本当は恐ろしい分散システムの话本当は恐ろしい分散システムの话
本当は恐ろしい分散システムの话
Kumazaki Hiroki
?
vSphere 4の気になる機能を試してみた
vSphere 4の気になる機能を試してみたvSphere 4の気になる機能を試してみた
vSphere 4の気になる機能を試してみた
VirtualTech Japan Inc.
?
Cisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIE
Cisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIECisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIE
Cisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIE
シスコシステムズ合同会社
?
たった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とは
たった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とはたった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とは
たった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とは
Rina Owaki
?
はじめての CircleCI
はじめての CircleCIはじめての CircleCI
はじめての CircleCI
Yosuke Mizutani
?
ビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテストビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテスト
Tsutomu Chikuba
?
Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~
Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~
Tomorrow's software testing for embedded systems ~明日にでも訪れてしまう組込みシステムのテストの姿~
Yasuharu Nishi
?
Cisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップ
Cisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップCisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップ
Cisco Connect Japan 2014: シスコ ユニファイド コミュニケーションのサーバ構築ファースト ステップ
シスコシステムズ合同会社
?
ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~
ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~
ITPro Expo 2014: クラウド統合基盤 ソリューション ~?VMware/Cisco/EMC 統合基盤?VBlock ~
シスコシステムズ合同会社
?
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
?
Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)
Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)
Cisco Connect Japan 2014: 実践 Cisco ACI (Application Centric Infrastructure)
シスコシステムズ合同会社
?
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
Yusuke Suzuki
?
どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~
どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~
どう変わる? 新シスコ認定トレーニング ~CCNAとCCNP Enterprise~
Trainocate Japan, Ltd.
?
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
シスコシステムズ合同会社
?
鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法
Toshiyuki Hirata
?
窜补产产颈虫监视运用业务の自动化事例
窜补产产颈虫监视运用业务の自动化事例窜补产产颈虫监视运用业务の自动化事例
窜补产产颈虫监视运用业务の自动化事例
翱厂厂ラボ株式会社
?
厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?
厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?
厂滨现场のテスト自动化への挑戦?フルコンテナ构成の颁滨/颁顿环境?
Daiki Kawanuma
?
アプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なことアプリケーション性能を管理するのに必要なこと
アプリケーション性能を管理するのに必要なこと
Atsushi Takayasu
?
搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿
搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿
搁别肠办辞苍别谤サーヒ?ス绍介资料.辫诲蹿
YoshihiroKitamura4
?
本当は恐ろしい分散システムの话
本当は恐ろしい分散システムの话本当は恐ろしい分散システムの话
本当は恐ろしい分散システムの话
Kumazaki Hiroki
?
vSphere 4の気になる機能を試してみた
vSphere 4の気になる機能を試してみたvSphere 4の気になる機能を試してみた
vSphere 4の気になる機能を試してみた
VirtualTech Japan Inc.
?
Cisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIE
Cisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIECisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIE
Cisco Connect Japan 2014:シスコ技術者認定エキスパートレベル CCIE
シスコシステムズ合同会社
?
たった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とは
たった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とはたった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とは
たった1时间でシステム构筑!“激速”环境构筑を実现する“パターン技术”の秘密とは
Rina Owaki
?
ビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテストビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテスト
Tsutomu Chikuba
?

システム开発における基盘环境の颁滨/颁顿について#3