仮想化技術の比較

サーバーの仮想化
  • 1台の物理サーバ上に複数のOSを動作させる技術
  • ハイパーバイザ型・VMware型・コンテナ型
ストレージの仮想化
  • 複数のストレージを仮想的に統合して1つの大きなストレージプールを構成する技術
  • ブロックレベル仮想化・ファイルレベル仮想化
ネットワークの仮想化
  • 新たな仮想ネットワークの構築や制御をソフトウェアにより動的に実施する技術
  • SDN・VLAN

 

デスクトップの仮想化
  • サーバ上においたPC環境のデスクトップ画面を遠隔地にある接続端末に転送する技術
  • 仮想PC方式・ブレードPC方式
  • AWS Workspaces

 

仮想化のメリット

仮想化技術を利用することでインフラ利用の効率性や柔軟性が向上する

  • サーバスペースの削減
  • 効率的なサーバーの利用によるコスト削減
  • 調達の迅速化
  • 構成変更や メンテナンス対応の柔軟性
  • セキュリティの向上

 

仮想化ソフトウェアとコンテナの違い

Udemy「これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)」より引用

 

  • 仮想化ソフトウェアにはハイパーバイザ型とVMware型がある。
  • コンテナ(Docker)はゲストOSを利用しないのが特徴。
  • Dockerはミドルウェアのインストールや各種設定をコード化して管理してくれる。
  • Dockerエンジンがゲストの代わりをしてくれる。

 

そもそもDockerとは?

Udemy「これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)」より引用

 

CI/CD(CICD)とは?

CIとは継続的インテグレーションのこと

継続的インテグレーション(Continuous Integration)。

ソフトウェア開発において、ビルドやテストを自動化し、短期間で品質管理を行う手法のこと。

 

CDとは継続的デリバリー(継続的デプロイ)

継続的デリバリー(Continuous Delivery)または継続的デプロイ(Continuous Deployment(継続的デプロイ)のこと。

継続的デリバリーは開発者によるアプリケーションへの変更に対して、バグがないか自動的にテストし、リポジトリにアップロードする。

継続的デプロイメントは、開発者による変更をリポジトリから本番環境に自動的にリリースし、顧客が使用できるようにするというもの。

 

CI/CDを実現するミドルウェア

オンプレ型アプリ

 

クラウド側アプリ

 

 

参考ページ

CI/CDとは何か?

CI/CDのエキスパートが解説:CI/CDとは何か? なぜ今、必要とされるのか?