IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

コラム

Amazon EKSの魅力を探る

CTC 教育サービス

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes 

第1回 コンテナとKubernetesを使用するメリット (土屋 大輔) 2023年7月

本コラムでは、Amazon EKSの魅力や機能について数回にわたって紹介します。第1回目では、コンテナとKubernetesを使用するメリットについて触れていきます。

近年、インターネット向けの不特定多数のユーザにサービスを提供するシステムにおける課題解決のため、「マイクロサービス」と「コンテナ」が注目されています。まず、これらについて見ていきましょう。

マイクロサービスとは

システムのアプリケーションの作成形態の一つです。従来のモノリシックな形式のようにシステムに必要な機能を一つの大きなアプリケーションに詰め込むのではなく、機能ごとに個別のアプリケーションとして作成することを特徴としています。インターネット向けの不特定多数のユーザにサービスを提供しているシステムでは、マイクロサービス化によりアプリケーションへの機能追加が迅速に行え、競合他社に先んじて機能追加を行うことで利用者を引き付け、売上向上などを実現することが可能となります。

fig01
図1 モノリシックとマイクロサービス
マイクロサービスの課題とコンテナの有用性

複数のアプリケーションが1つのサーバで動作する場合、それらのアプリケーションは同じライブラリやランタイムを共有することになります。そのため、あるアプリケーションがライブラリやランタイムのバージョンを更新すると、他のアプリケーションの動作に影響が出る可能性があり、アプリケーションの可用性の低下に繋がります。

この課題解決に有用なソリューションとして「アプリケーションのコンテナ化」があります。コンテナはOS上に作成できるアプリケーションの実行環境で、アプリケーションとアプリケーションが必要なライブラリ・ランタイム・ファイルなどを格納し、独立して実行することができます。

fig02
図2 アプリケーションのコンテナ化

コンテナを使用することで、各アプリケーションが使用するライブラリやランタイムを分離することができるため、あるアプリケーションがライブラリやランタイムのバージョンを更新しても、他のアプリケーションの動作に影響を与えることがありません。その結果、アプリケーションの可用性が向上します。

さらに以下のメリットも享受できます。

  1. アプリケーションへの機能追加の迅速化
  2. ハイブリッド環境やマルチクラウド環境でのアプリケーションの移植の迅速化
  3. アプリケーションの迅速なスケーリング

これらのメリットにより、迅速な機能追加による利用者数の向上やアクセス急増時でもスムーズにスケーリングすることができ、システムの可用性の向上が実現できます。そのため、インターネット向けの不特定多数のユーザに対してサービスを提供するシステムと非常に親和性が高いソリューションとなっています。

アプリケーションのコンテナ化の課題とKubernetes

コンテナの課題解決において、Kubernetesは重要な役割を果たしています。利用者数が多いシステムのアプリケーションをコンテナ化した場合、以下のような課題が生じます。

  • コンテナの作成数の増加によるコンテナ作成の煩雑化
  • コンテナの運用管理の煩雑化(死活監視・スケーリング)

Kubernetesを使用すると、複数のサーバをKubernetesクラスタとして抽象化し、クラスタにコンテナを作成することができます。多数のコンテナでも容易に作成することができるだけでなく、コンテナの自動的な死活監視やスケーリングも行えるため、利用者数が多い場合でもシステムの可用性を向上することができます。

fig03
図3 Kubernetes を使用したコンテナのデプロイ

Kubernetesがコンテナへのリソースの割り当てやスケジューリング、自動スケーリングを行うさまが、オーケストラの指揮者が演奏者へのパートの割り当てや音楽のダイナミクスに応じての演奏者への音量の指示を行うのと似ているため、「コンテナのオーケストレーションツール」と呼ばれています。

今回はAmazon EKSの前提として把握する必要がある「マイクロサービス」・「アプリケーションのコンテナ化」・「Kubernetes」について触れました。次回はAmazon EKSの概要について紹介します。

 


 

Amazon EKSをもっと学ぶ

AWS認定トレーニング
Running Containers on Amazon Elastic Kubernetes Service (Amazon EKS)

Amazon EKS を使用すると、Kubernetes コントロールプレーンをインストール、運用、保守することなく、AWS で Kubernetes を簡単に実行できます。このコースでは、Amazon EKS を使用した Kubernetes のコンテナ管理とオーケストレーションについて学習します。

コースの詳細・開催スケジュール
CTC教育サービスは、AWS認定トレーニングパートナー(ATP)です。

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes