マイクロサービスは、コンテナ化しないと実現できないか?
DX・デジタルトランスフォーメーション、いわゆる2025年の崖に「DX実現に向けたITシステム構築におけるコスト・リスク低減のための対応策」に「刷新におけるマイクロサービス等の活用を実証」と重要とされているマイクロサービス。さてこのマイクロサービス、コンテナ化じゃなくても実現できないのか?をテーマに説明させていただきます
マイクロサービスに必要な3つの技術
- ベースは基本「コンテナ」または「仮想マシン」の2つ。
それぞれ構成が違いますが、アプリケーションコードとライブラリ、設定等を1つにしたもの。
- オーケストレーション
マイクロサービス化したアプリケーションのデプロイ・管理するためのプラットフォーム。
- アプリケーションデリバリコントローラ・ADC(ロードバランサ)
マイクロサービスが増えると、それらを管理してユーザからのリクエストを適切なマイクロサービスに振り分けていくために、アプリケーションのフロントエンドにアプリケーションデリバリコントローラ・ADC(ロードバランサ)が必要です。
仮想マシンでマイクロサービス
巷では、マイクロサービス=コンテナと言われていますが、仮想マシンでマイクロサービスで実現も可能です。
仮想マシンのメリット
- 1つの独立したサーバーとして機能するため、仮想マシンごとに異なるOSを動かせる。
- システム資源の負担が大きく可搬性は低いが、自由度が高い。
- 多くのユーザは、蓄積した仮想マシンでの資産を転用できる。
仮想マシンでマイクロサービスのデメリットをなくすArrayAVXシリーズ
巷では、実は仮想マシンでマイクロサービスを行うとデメリットがいくつかあります。しかしAVXをプラットフォームに用いることでコンテナを上回るメリットを提供します。
- 仮想マシンであれば、ホストOSとアプリケーションの間に、ゲストOSやハイパーバイザーなどが介在するるため、オーバーヘッドが大きく、環境構築にも手間がかかるが、AVXはすべてArrayOS上で実現。
- アプリケーションを動かすことだけも必ずゲストOSやミドルウェアのセットアップが必ずついて回るが、AVXはすべてArrayOS上で実現。
- マイクロサービス化でプロセスが増えるので、その手間がますます増えるが、AVXはすべてArrayOS上でグラフィカルに実現。
