sales@mashape.com

KONGとは？
●
●
●
●
●
●

オープンソースのAPIゲートウェイソフトウェア ＋ ポータル、アナリティクスなど
2017年10月に旧Mashape社が「Kong」という社名に変更
500万ダウンロード 最も利用されているAPIゲートウェイ
低レイテンシー、スケーラブルなアーキテクチャ
ビルトインのクラスタリング機能で高い可用性
マイクロサービスアーキテクチャとの高い親和性

sales@mashape.com

複雑化する要求に対応するソフトウェア

sales@mashape.com

Step 1: 最初はモノリシックから始まる

アプリケーション
アプリケーション

クライアント

ロード
バランサー

商品

顧客

注文

請求

sales@mashape.com

Step 2: やがて分解が始まる
ロード
バランサー

商品

顧客
クライアント(または別なサービス )

ロード
バランサー

注文

請求

sales@mashape.com

Step 3: サービスごとに実装されるセキュリティ, ロギング など
ロードバランサー

商品

MORE
LOGIC

- セキュリティ- 認証など顧客
クライアント(または別なサービス )ロードバランサー

注文

請求

sales@mashape.com

Step 4: さらにサービスが分解される
ロード
バランサー

商品

ロード
バランサー

顧客

ロード
バランサー

注文

MORE
LOGIC

- セキュリティ- 認証などクライアント(または別なサービス )請求sales@mashape.com

Step 4: サービスごとに実装されるセキュリティ, ロギング など
ロード
バランサー

商品

MORE
LOGIC

- セキュリティ- 認証など

ロード
バランサー

顧客

MORE
LOGIC

- セキュリティ- 認証など

ロード
バランサー

注文

クライアント(または別サービス )請求sales@mashape.com

Final step: マイクロサービス化
ロード
バランサー

商品

MORE
LOGIC

ロード
バランサー

顧客

MORE
LOGIC

ロード
バランサー

注文

MORE
LOGIC

ロード
バランサー

請求

MORE
LOGIC

クライアント(または別サービス )sales@mashape.com

なぜAPIゲートウェイが必要か?
抽象化レイヤー商品
クライアント(または別サービス )API ゲートウェイ
認証

顧客

セキュリティ
ロギング変換注文

ロードバランシング
サーキットブレーカー.

請求sales@mashape.com

なぜAPIゲートウェイが必要か?
抽象化レイヤーKong

クライアント認証(または別サービス )

商品

顧客

プラグイン

セキュリティ
ロギング
変換

注文

ロードバランシング
サーキットブレーカー.

請求sales@mashape.com

マイクロサービスのスケーラビリティを高めるロードバランシング
抽象化レイヤーKong

クライアント認証(または別サービス )プラグイン

セキュリティ

マイクロサー
ビス
マイクロサー
ビス

ロギング
変換

マイクロサービス

ロードバランシング
サーキットブレーカー.

マイクロサービス

sales@mashape.com

マイクロサービスの可用性を高めるサーキットブレーカー
抽象化レイヤーKong

クライアント認証(または別サービス )プラグイン

セキュリティ

マイクロサー
ビス
マイクロサー
ビス

ロギング
変換

マイクロサービス

ロードバランシング
サーキットブレーカー.

マイクロサービス

sales@mashape.com

サーバーレスの統合
抽象化レイヤーKong

クライアント認証(または別サービス )プラグイン

セキュリティ

マイクロサー
ビス
マイクロサー
ビス

ロギング
変換

マイクロサービス

ロードバランシング
サーキットブレーカー.

LambdaOpenWhisk

sales@mashape.com

API ゲートウェイはミッションクリティカル
ビルトインのクラスタリング機能により高い可用性を実現

sales@mashape.com

API ゲートウェイはミッションクリティカル
NGINXによる高い性能と Cassandra or PostgreSQLによるバックエンド DBの可用性

sales@mashape.com

API ゲートウェイはミッションクリティカル
性能や可用性の要件にあわせて さまざまな環境で稼働

sales@mashape.com

Kong Community Edition (CE) と Kong Enterprise Edition (EE)
数百万の Community Edition のダウンロード
複数のプラットフォーム p■ 14,000+ Stars in GitHub■ 70+ Contributors■ 107 Meetups●

オープンソース●

500万以上 ダウンロード 2015年から●

NGINXがベース●

プラグインによる拡張 (60以上のプラグイン )●ミリ秒レベルの低いレイテンシー●

クラウドネイティブでプラットフォームを選ばない●

高速でスケーラブル、かつ、数分でインストール■ 10K Community Members

sales@mashape.com

Kong Enterpriseの概要
高いセキュリティやスケーラビリティが求められる大組織の要求に対応

管理 GUI
セキュリティ & 認証
開発者ポータル
アナリティクス
スケーラビリティ
サポート

sales@mashape.com

Kong Enterprise: 管理 GUI■

使いやすい GUI による操作
CEでのAPIベースの操作からGUIによる操作へ■

Kong クラスターの管理
ダッシュボード、チャートなど■

APIの追加、変更など
ワンクリックで操作■

プラグインの管理
ブラウザから操作可能.

… など.

sales@mashape.com

Kong : さまざまな認証方式にプラグインで対応
LDAP Auth
LDAP との連携●●

OpenID Connect

OAuth 2.0 Introspection

OpenIDでの接続

サードパーティの OAuth 2.0

キー認証、ベーシック認証、LDAPなどさまざまな認証方式に対応
さらに独自のプラグイン開発によって他の認証方式にも対応可能
sales@mashape.com

Kong Enterprise: セキュリティ (エンタープライズレベル認証)
LDAP Auth
LDAP との連携

OpenID Connect

OAuth 2.0 Introspection

OpenIDでの接続

サードパーティの OAuth 2.0

sales@mashape.com

OpenID Connect■

Consumerを認証・認可
既存のサードパーティ OIDC プロバイダ■

人気の高い OIDC クラウド プロバイダをサポート
Auth0, Okta, Google, Microsoft Live Connect, Microsoft Azure
AD, Yahoo!, Salesforce, Paypal, etc.

■

オンプレミスのプロバイダをサポート
Connect2id, PingFederate, IdentityServer4, OpenAM, Gluu,Keycloak, Dex, etc■

Enterprise Governance applied to Kong
組織内のユーザー管理と同様にConsumerを容易に管理提供機能:
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●

JWA / JWT / JWS
認証のフロー
イントロスペクション
Revocation
Token リクエスト
Token リフレッシュ
Discovery
User Info Endpoint Support
WebFinger
エンコードとデコード
Bearer Token のサポートProof-Key for Code Exchange (PKCE)
動的クライアント登録
Back-Channel Logout Support
Claims Verification

sales@mashape.com

OAuth 2.0 Introspection Endpoint■

サードパーティ のアクセストークンを検証

OAuth 2.0 Introspection Endpoint をサポート■

外部のOAuth 2.0認証サーバーでRFC7662 specification によって定義

クライアントは通常の手順でアクセストークンを取り出す

クライアント1

OAuth 2.0
認証サーバー

3
2

クライアント はアクセストークンを使ってAPIをリクエスト

Kong

Kong はサードパーティのOAuth 2.0 認証サーバーでアクセストークンを検証

4

API

トークンが正当なものであればリクエストが APIにプロキシーされる

sales@mashape.com

Kong Enterprise: ロールベースのアクセス管理 (RBAC)■

Admin 操作のセキュリティを高める■

クラスタ全体を保護できるようにAdminユーザーやグループを設定■

それぞれのチームがそれぞれのリソースにアクセスし、チーム外のアクセスはブロック

組織内での拡張■

複数のチームや部門をサポート.

Actions
apis:create
apis:read
apis:update
apis:delete
apis:*
plugins:create
plugins:readplugins:update
plugins:delete
plugins:*...

セルフサービスでのリソースプロビジョニング

Future developments
セキュリティのチェック, ログの監査, レポートなど

GroupsTeam1: [{actions:[plugins:create
plugins:read],targets: [“api_123”]}
]
...

Users
John: Team1
Luke: Team1
Bob: Team2
Joe: Team2...

sales@mashape.com

Kong Enterprise: 開発者ポータル■

対話式の API ドキュメンテーション
豊富な機能のリファレンスエディターと自動APIエクスプロー
ラー■

開発者の管理シームレスなオンボーディング■

柔軟なカスタマイズ
ポータルのカスタマイズ、ブランディングなど.

■

Swagger と OpenAPI Spec
よく使われる仕様をネイティブサポート… など.

sales@mashape.com

Kong Enterprise: アナリティクス■

リアルタイムモニタリング
APIのパフォーマンス分析■

API と Consumer のアナリティクス
API と Consumer のリクエストとエラーを表示■

リアルタイムでデータを可視化
リクエストとレスポンスを表示■

クオータのメータリング
クオータを超えたユーザーを監視… など.

sales@mashape.com

Kong Enterprise: スケーラビリティ■

エンタープライズレベルの流量制限機能
複数リージョンで一貫した設定と高い性能、 Redis HA Sentinel のサポート■

エッジ キャッシュ
エッジ位置でのキャッシュ応答によりレスポンスの高速化とネットワークを最適化■

バックアップKongのコンフィギュレーションのインポートとエクスポートおよび最新状態の保持とS3への保存■

高度なルーティング と 変換
正規表現による 動的な 変換 と 洗練されたルーティングの組み合わせ

sales@mashape.com

Kong Enterprise サブスクリプション
シンプルで予測しやすい年間サブスクリプションモデル

管理者によるライセンス
Kongを構成・管理するユーザーがサポートにアクセス可能

一定の年額料金
Access to ALL features, plugins, and products within Kong Enterprise.

商用サポート
企業向けのサポートを提供

大規模構成でも料金は一定
Kongの物理ノード数、APIリクエスト数、API数、開発者数などは料金に影響なし

sales@mashape.com

Community Edition と Enterprise Edition
グローバルな規模（日本、北米、ヨーロッパなど）で企業での導入が進む●

Fortune 10 のグローバル企業●

日本の最大級のネット通販会社●

カナダ、ヨーロッパの銀行●

北米、ヨーロッパの通信事業者●

オーストラリアの郵便局●

自動車メーカー

●

政府系機関

●

ファンドからの $30M+の投資
Andreessen HorowitzによるSeries B●

エンジニアチーム
Community と Enterprise 両方のエディションを強化するためのエンジニアの増員●

グローバルなサポート
EMEA, APAC, US でソリューションとサポートのエンジニアを増員しグローバルな顧客増加に対応

sales@mashape.com

Kong社と株式会社ブリスコラの緊密な連携

米Kong, Inc.
● Kongソフトウェア開発と提供● Kong EE(サポートあり)とCE(サポートなし)● サンフランシスコが本拠地● グローバルに拡張中● 技術サポート (英語)● コンサルティング (英語)

株式会社ブリスコラ● 日本初のKongパートナー(2016〜)● Kong EEとCEの両方をサポート● APIプラットフォーム構築● API開発● 技術サポート (日本語)● コンサルティング (日本語)ブリスコラのKongソリューション BAMs
Briscola API Management Stack●●

Kong CE + 独自開発GUI + サポート
日本語の画面API基盤構築事例 会津若松市の医療IoT●●会津若松スマートウェルネスシティ IoTヘルスケアプラットフォーム事業
医療機関のデータとスマートウォッチや機器からのデータを集約し活用ブリスコラの包括的なAPIソリューション
マイクロサービスアーキテクチャ
コンサルティング

Kongを中心とするAPI基盤の構築
・APIゲートウェイ
・開発者ポータル・アナリティクス

・MSA導入のための適合性分析とロードマップ

API化による既存データへのアクセス
・既存DBからWeb APIを自動生成
・CData API Server

補足資料 マイクロサービスアーキテクチャとは"マイクロサービスアーキテクチャ "とは、ソフトウェアアプリケーションを独立して配置可能なサービスの組み合わせ(suite)として設計する方法です。
（Martin Fowlerのブログ”Microservices”より。一方で彼は「正確な定義はない」としています。）
モノリシックアーキテクチャ

マイクロサービスアーキテクチャ
アプリケーション

注文

ブラウザ

Eメール

注文
処理

Web
サーバー

決済
処理

メール
処理

注文

データ
ストア

ブラウザ

Eメール

REST
API

Web
アプリ

REST
API

REST
API

注文
サービス

決済
サービス

メール
サービス

データ
ストア

データ
ストア

データ
ストア

マイクロサービス化の考え方の例： ECサイトのアプリケーションにおいて、「注文」「決済」「メール」を独立させてマイクロサービス化
3

補足資料 モノリシックアーキテクチャ"モノリシックアーキテクチャ "の、monolithic「モノリシック」は一枚板という意味で、アプリケーションは、全体が 1つのモジュールでできていて、分割されていないため、機能追加や変更が全体におよび、アプリケーションの変更が難しくなります。また新しいプログラム言語やフレームワーク、処理に応じたハードウェアの選択もしにくくなります。
ひとつの開発チーム

モノリシックアーキテクチャ
開発チーム

全体がひとつのモジュール
アプリケーション
注文
処理

ひとつの言語

決済
処理

メール
処理

小さな修正も全体におよぶひとつのデータベース
データストア

全体のためのハードウェアバグは全体におよぶ

デプロイに時間がかかる
3

補足資料 マイクロサービスアーキテクチャ"マイクロサービスアーキテクチャ "では、独立して配置可能なサービスの組み合わせでアプリケーションを実現するた
め、サービスごとに柔軟な変更や追加ができるようになり、デプロイも迅速です。また新しいプログラム言語やフレームワーク、処理に応じたハードウェアの選択といった部分最適が可能になり柔軟性の高いシステムが実現します。
マイクロサービスアーキテクチャ

サービスごとの開発チーム

開発チーム

アプリはサービスの組み合わせ
REST
API

注文
サービス

データストア

開発チーム

サービスごとのデータベース
REST
API

複数の言語

決済
サービス

データストア

開発チーム
REST
API

修正は全体におよばない

メール
サービス

データ
ストア

サービスごとのハードウェアバグは全体におよばない

迅速なデプロイ
3

補足資料 マイクロサービス化のメリット・デメリット
マイクロサービスアーキテクチャにはメリットがある一方で、デメリットとなる点も存在するため、どのアプリケーションに、いつ、どのように適用していくのがよいか考える必要があります。。
メリットデメリット• 「変化に強い」システムを実現しやすい• 全般的に冗長なシステムになりやすい• サービスごとに柔軟な追加、変更が可能• 全体を見渡しにくい• サービスの追加、変更の影響は全体に及ばない• 全体のテストやデバッグがしにくい• 個々のサービスの障害が全体に及ばない• 障害の影響を予想しにくい• サービスごとに最適なテクノロジーを採用できる• テクノロジーの標準を定めにくい• サービスごとに独自運用ができる• 運用標準を定めにくく総じて運用負荷は大きくなる• サービスごとに異なる言語やフレームワーク• 開発標準を定めにくい• サービスごとに性能をスケールすることができる• 全体性能の保証をしにくい• データや処理の性質に対して最適化が可能• トランザクションや整合性を保つしくみがない• サービスごとに柔軟な設計• 全体設計の難度が高くなる• サービスごとに障害対策がとれる• 障害解析の難度が高くなる• 全般的に柔軟な開発、運用ができる• 全般的にオーバーヘッドが多い• 最新テクノロジーがとりいれやすい• DevOpsやインフラ運用の自動化などが前提
3

メディア業界における事例

補足資料 欧米メディア業界MSA導入状況©Briscola 2017. All Rights Reserved. Cloud FrontiEra. Open Innovation.

3マイクロサービスを動かすのは混雑した市街を走るようなもの

sales@mashape.com

sales@mashape.com