Help us understand the problem. What is going on with this article?

サービスメッシュとGoogle Cloudサービスメッシュの紹介

Microservices マイクロサービスとは

皆さんは既にマイクロサービスアーキテクチャ知識を持ってるかもしれませんが、簡単にマイクロサービスの特徴をまとめます。

  • ビジネス機能に 沿って複数小さい「マイクロサービス」に分割し、 それらを連携してアプリケーションを構築する
  • 各サービス、独立したプロセスで動作する
  • 各サービス、よく定義されたオープンなインタフェースを備える (REST(JSON/HTTPS), gRPC 等)

マイクロサービスのメリット

  • 複数技術で対応可能
  • 障害耐性・保守性が高い
  • スケール・冗長化が容易
  • 開発チームを小さくできる
  • サービス一つ一つが小さいため把握が容易
  • サービスの再利用性が高くなる

マイクロサービスの課題*

  • サービスディスカバリ: サービスや存在関係の発見
  • セキュリティ: 安全に接続する
  • トラフィック制御: レートリミットやリトライ設定
  • 負荷分散:複数サービスインスタンスにルーティング
  • 可観測性:全体がどように連携しているかわかりにくい
  • 分散トレース: サービス間、内部動作把握が困難
  • 高度なデプロイ:安全に効率よくデプロイする

ServiceMesh サービスメッシュとは

サービスメッシュはマイクロサービスが抱える問題解決のための1つのアップローチです。

サービスメッシュの主な機能は:

  • サービス認証
  • 負荷分散
  • タイムアウト、リトライサーキットブレーカー
  • コネクションプールサイズ管理
  • きめ細かいルーティング
  • テレメトリ
  • リクエスト追跡
  • 意図的なエラー実施

サービスメッシュ機能を提供する製品はたくさんありますが、代表的なソフトウエアはIstio、 Linkerd、Consul。次に一番人気のIstioを紹介します。

Istioとは

Istio」は、IBMやGoogle、Red Hatなどが力を入れている取り組みであり、クラウド上のさまざまなシステムをまたがったマイクロサービス群をサービスメッシュという単位で管理できるようにするものだ。

about-architecture.png

Istio では、Envoy ベースのサイドカーから成るデータ プレーンが提供されます。 これらのインテリジェント プロキシは、メッシュ化されたアプリとワークロードの内外のすべてのネットワーク トラフィックを制御します。
コントロール プレーンは、次のコンポーネントを使用して、構成、ポリシー、およびテレメトリを管理します。

  • Mixer - アクセス制御と使用ポリシーを適用します。 Prometheus にプッシュされたプロキシからテレメトリを収集します。
  • Pilot - プロキシのサービス検出やトラフィック管理のポリシー/構成を提供します。
  • Citadel - サービス間の mTLS を可能にする ID とセキュリティの機能を提供します。
  • Galley - コンポーネントに対する構成の抽象化と提供を行います。

Google CloudのAnthos Service Mesh (ASM)

Anthos Service Mesh(ASM)は、Google Cloudの複雑なマイクロサービス アーキテクチャ向けのフルマネージド サービス メッシュです。マイクロサービスの複雑な環境を管理し、それらが保証するメリットをすべて享受できるようにするための、フルマネージド サービス メッシュです。このプラットフォームにより、トラフィック管理やメッシュ テレメトリ、サービス間の通信保護に至るまで、全体的なサービス運用をシンプルにして、運用チームや開発チームの負担を大幅に軽減します。

次の記事、Anthos Service Mesh利用してマイクロサービス実装と運用のデモを紹介する予定ですので、少々お待ち下さい。

nagasada
長定心は15年システム開発経験、現在DevSamurai株式会社でシステム開発と運用(DevOps)担当しております。 DevSamuraiはITシステム開発のプロフェッショナル集団です。ITプロセスおよびビジネスプロセスを自動化するソリューションを提供しております。システム開発ライフサイクルで活用する最新技術や製品、ベストプラクティスなどの導入を支援致します。
https://www.devsamurai.com
dev-samurai
GCPクラウド技術を中心に取り扱う技術者集団
https://www.devsamurai.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした