Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

IT技術 (Technology)

クラウドネイティブとは?(コンテナ、サービスメッシュ、マイクロサービス、イミュータブルインフラストラクチャ等)

投稿日:2021年6月22日 更新日:

<目次>

(1) クラウドネイティブとは?(コンテナ、サービスメッシュ、マイクロサービス、イミュータブルインフラストラクチャ等)
 (1-1) コンテナ
 (1-2) サービスメッシュ
 (1-3) マイクロサービス
 (1-4) イミュータブルインフラストラクチャ

(1) クラウドネイティブとは?(コンテナ、サービスメッシュ、マイクロサービス、イミュータブルインフラストラクチャ等)

クラウド技術を用いて、より「短時間」で、より「スケーラビリティ」があり「疎結合」で「可観測性の高い」システム構築をするための手法を「クラウドネイティブ」と呼びます。いうなれば「変化に強い」システムを通るためのアプローチとも言えます。

(1-1) コンテナ

「コンテナ」はアプリケーションが載る基盤に関わらず、「環境間の移行を素早く」かつ「安定的に稼働」させるためのソリューションです。VMと似ているように思えますが、大きな違いとしてVMはハードウェアレベルで仮想化しているのに対して、コンテナはOSレベルでの仮想化をしています。OS上で複数のコンテナが稼働するため、OS全体の起動と比較して速く、かつメモリの消費も少ないという利点があります。

目次にもどる

(1-2) サービスメッシュ

「サービスメッシュ」はマイクロサービスにおける各サービス同士の通信を円滑にしつつ、信頼性やセキュリティや可観測性を向上させる目的で使われる「ソフトウェアアーキテクチャのパターンです。各マイクロサービスに対して「サイドカーProxy」を持ち、サービス同士の通信はこのサイドカーProxyを通じて行う事で、高負荷のネットワーク間のサービス間の通信を処理する事が可能です。「サービスメッシュ」の機能を提供する代表的な製品では「Istio」などがあります。

目次にもどる

(1-3) マイクロサービス

「マイクロサービス」はシステムのアーキテクチャの一種で、アプリケーションを構成する際に、以下のような条件を満たすサービスの集合体として形成する事です。

・可用性が高くテストが用意
・各サービス同士が疎結合である
・各サービスは独立してデプロイが可能
・少ない人員でもメンテが可能である(小規模である)
 
このような概念の誕生の背景としては、近年は「アジャイル」(小単位で実装・テストを繰り返す手法)や「DevOps」(開発者と運用者が連携する開発手法)がより盛んになっている状況とも密接に関連しています。
 

(1-4) イミュータブルインフラストラクチャ

「イミュータブルインフラストラクチャ」はシステムインフラの新しい枠組みで、文字通り一度構築したら「immutable」(不変)なシステムを指します(正確には都度、新しいものに置き換わる)。

逆に、今までのシステム開発では「mutable」(可変)なサーバ構成という事になります。サーバのOSやパッケージはSSHやリモートデスクトップでサーバにログインして、パッチ適用等で定期的にアップデートされ、中のconfigファイルやアプリケーションは随時改修が入り、新しいものに置き換わっていきます。そうした点から「可変」なサーバ構成と呼んでいます。

なので「イミュータブルインフラストラクチャ」では、一度デプロイしたら変更が入る事はなく、もし更新が必要な場合は、共通のテンプレートから必要な設定を加えた新しいものを作り、全体を置き換えます(リプレース)。

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-IT技術 (Technology)

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

CelonisとSlackを連携する方法(例と設定手順のご紹介)

  <目次> (1) CelonisとSlackを連携する方法(例と設定手順のご紹介)  (1-1) 連携の概要  (1-2) STEP1:Slackコネクションの設定  (1-3) STE …

SSLCertVerificationError [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificateエラーが出る原因と対処

  <目次> (1) SSLCertVerificationError [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: …

シーケンス図の書き方やサンプルのご紹介(内部設計)

  <目次> (1) シーケンス図の書き方やサンプルのご紹介(内部設計)  (1-1) シーケンス図を作る目的  (1-2) シーケンス図の書き方  (1-3) ご参考:縦軸の単位について …

公開鍵基盤(PKI)の仕組みと証明書の役割について

  <目次> (1) 公開鍵基盤(PKI)の仕組みと証明書の役割について  記事の「目的」と「前提」  (1-0) STEP0:全体像  (1-1) STEP1:証明書の正当性チェック  ( …

no image

Kerasでロジスティクス回帰を実装した例をご紹介

  <目次> (1) Kerasでロジスティクス回帰を実装した例をご紹介  (1-1) 実装のフローとポイント  (1-2) 実装例 (1) Kerasでロジスティクス回帰を実装した例をご紹 …

  • English (United States)
  • 日本語
Top