ibm api connect クラスター環境導⼊ガイド...web b2b saas api connectの基本構成図...
TRANSCRIPT
©2017IBMCorporation
2018/1/29⽇本アイ・ビー・エム株式会社
IBM API Connect クラスター環境導⼊ガイド
© 2017 IBM Corporation2
Disclaimerq 当資料の位置づけ
¦ 当資料は、IBM API Connect での過去の冗⻑化機能の実装例を参考に構成⽅法および考慮点をまとめたものです。
¦ API Connect V5.0.7.2を前提としています。
q 注意事項¦ 当資料に含まれる情報は可能な限り正確を期しておりますが、当資料に記載された
内容に関して何ら保証するものではありません。ここでの記載内容はあくまでも⽀援情報であり、使⽤者の責任において取扱われるものとし、資料の内容によって受けたいかなる損害に関して⼀切の保証をいたしません。
¦ 製品の新しいリリース、修正などによって動作/仕様が変わる可能性がありますので、必ずマニュアル等で最新の情報をご確認ください。
© 2017 IBM Corporation3
⽬次
q API Connectの基本構成図q API Connectの冗⻑化構成と検討ポイント
管理サーバーn 1台 Active-Standby構成n 2台 Actice-Active構成
開発者ポータルn 1台 Active-Standby構成n 3台 Active-Active構成
IBM DataPower Gatewayn 3台 Active-Active構成
q API Connectの冗⻑化構成 トポロジーパターン¦ シングル構成¦ 全コンポーネント冗⻑化構成¦ 実案件での構成例
q API Connectの通信⽅向
© 2017 IBM Corporation4
⽬次
q API Connectの基本構成図q API Connectの冗⻑化構成と検討ポイント
管理サーバーn 1台 Active-Standby構成n 2台 Actice-Active構成
開発者ポータルn 1台 Active-Standby構成n 3台 Active-Active構成
IBM DataPower Gatewayn 3台 Active-Active構成
q API Connectの冗⻑化構成 トポロジーパターン¦ シングル構成¦ 全コンポーネント冗⻑化構成¦ 実案件での構成例
q API Connectの通信⽅向
© 2017 IBM Corporation5
IoT モバイル
Web
B2B
SaaS
API Connectの基本構成図
仮想アプライアンス
ReverseProxy
DMZ
API実⾏環境 等
WebSphere Liberty
ソフトウェア
バックエンドシステム
アプリケーション開発者
IBM DataPowerGateway
(物理/仮想アプライアンス)
SMTPServerソフトウェア
NTPServerソフトウェア管理サーバー
(仮想アプライアンス)
Cloud Manager
API Manager
開発者ポータル(仮想アプライアンス)
:今回のガイド範囲
APIAPI利⽤アプリ
外部 社内取引先
API Connect管理者
© 2017 IBM Corporation6
q 管理サーバーl API ManagerとCloud Managerを提供する
コンポーネントl API Connect全体の設定やAPIの
インターフェースやポリシーの設定と管理、APIの利⽤状況の分析機能を提供
q 開発者ポータルl API利⽤者向けのAPI仕様情報を提供するポータルl 公開されたAPIの仕様確認、アプリケーション
登録などが可能l ブラウザからAPIの呼び出しテストが可能
q IBM DataPower Gatewayl ポリシーに基づきAPIを⾼度に保護・制御するゲートウェイl 実際にAPI呼び出し時のリクエストが通過するコンポーネント
API Connectの各コンポーネントの概要
© 2017 IBM Corporation7
⽬次
q API Connectの基本構成図q API Connectの冗⻑化構成と検討ポイント
管理サーバーn 1台 Active-Standby構成n 2台 Actice-Active構成
開発者ポータルn 1台 Active-Standby構成n 3台 Active-Active構成
IBM DataPower Gatewayn 3台 Active-Active構成
q API Connectの冗⻑化構成 トポロジーパターン¦ シングル構成¦ 全コンポーネント冗⻑化構成¦ 実案件での構成例
q API Connectの通信⽅向
© 2017 IBM Corporation8
q 検討ポイント、制約事項(1/2)¦ 冗⻑化の⽅法
n 管理サーバーの冗⻑化構成にはVMware HA、vMotionを利⽤したActive-Standby構成と管理サーバーの製品機能を利⽤したActive-Active構成が存在する
¦ ロードバランシングn Active-Active構成をとる場合、管理サーバーを複数⽤意したうえで前段に
ロードバランサーが必要となるn Active-Standby構成の場合、負荷分散をする必要がないため前段へのロー
ドバランサーの配置は不要n 前段にロードバランサーの配置する場合、管理サーバーが提供するヘルス
チェックAPIを利⽤することができる参考:REST API 呼び出しによる管理サーバーのヘルス・チェック・データの取得https://www.ibm.com/support/knowledgecenter/ja/SSMNED_5.0.0/com.ibm.apic.install.doc/load_balancing_health_api.html
¦ ライセンスn Active-Standby構成の場合、Standby側のサーバーのライセンスは不要
冗⻑化構成と検討ポイント(管理サーバー)
© 2017 IBM Corporation9
q 検討ポイント、制約事項(2/2)¦ 障害時のダウンタイム
n Active-Standby構成の場合、障害発⽣時のダウンタイムが発⽣するn Active-Active構成の場合、ダウンタイムは発⽣しない
¦ 管理サーバーがダウンした際のサービスへの影響n 公開したAPI定義の情報はIBM DataPower Gateway上にキャッシュさ
れるため、API⾃体の呼び出しは可能DataPowerの再起動時、管理サーバーがダウンしているとDataPower上のキャッシュがクリアされるため、API呼び出しが不可となる
n API Manger、Cloud Managerへのアクセスが不可n Developer Portalへのサインイン不可n ダウンしている間の分析ログの⽣成が不可※ バージョン5.0.6.3および5.0.8以降では、管理サーバーダウン中もIBM
DataPower Gatewayが起動していれば以下に⽰す⼀定量のログはバッファーすることが可能。5.0.7.2ではバッファー不可。l データ・レコードが6,000レコードl データ・サイズが64,000KB
冗⻑化構成と検討ポイント(管理サーバー)
© 2017 IBM Corporation10
q Active-Standby構成
冗⻑化構成と検討ポイント(管理サーバー)
通常時 障害時
物理筐体物理筐体
APIManager
#1Active
API Connect管理者
物理筐体物理筐体
APIManager
#1Down
APIManager
#1Active
VMの機能によりテイクオーバー
API Connect管理者
© 2017 IBM Corporation11
q Active-Active構成
物理筐体物理筐体
APIManager
#1
Down
APIManager#2(Primary)
Active
物理筐体物理筐体
APIManager#1(Primary)
Active
APIManager
#2(Secondary)
Active
同期
冗⻑化構成と検討ポイント(管理サーバー)
通常時 障害時
LoadBalancer LoadBalancer
Secondaryにログインした場合でも構成情報の更新はPrimaryにされ、Secondaryに同期される
API Connect管理者 API Connect管理者
© 2017 IBM Corporation12
q 検討ポイント、制約事項(1/2)¦ 冗⻑化の⽅法
n 開発者ポータルの冗⻑化構成にはVMware HA、vMotionを利⽤したActive-Standby構成と開発者ポータルの製品機能を利⽤したActive-Active構成が存在する
n Active-Active構成の場合Split Brainの検出のために最低3台による冗⻑化構成が必須となる
参考:Knowledge Centerではサーバー稼働率が50%を超えないとサービスが稼働しないと記載ありhttps://www.ibm.com/support/knowledgecenter/ja/SSMNED_5.0.0/com.ibm.apic.install.doc/tapim_portal_setup_cluster.html
¦ ロードバランシングn Active-Active構成をとる場合、開発者ポータルを複数台⽤意したうえで前段にロード
バランサーが必要となるn Active-Standby構成の場合、負荷分散する必要がないため前段にロードバランサーの
配置は不要n 前段にロードバランサーを配置する場合、開発者ポータルが提供するヘルスチェック
APIを利⽤することができる参考:REST API 呼び出しによる開発者ポータルのヘルス・チェック・データの取得https://www.ibm.com/support/knowledgecenter/ja/SSMNED_5.0.0/com.ibm.apic.install.doc/tapim_portal_cluster_health_check.html
¦ ライセンスn Active-Standby構成の場合、Standby側のサーバーのライセンスは不要
冗⻑化構成と検討ポイント(開発者ポータル)
© 2017 IBM Corporation13
q 検討ポイント、制約事項(2/2)¦ 障害時のダウンタイム
n Active-Standby構成の場合、障害発⽣時のダウンタイムが発⽣するn Active-Active構成の場合、ダウンタイムは発⽣しない
¦ 開発者ポータルダウン時のサービスへ影響n IBM DataPower Gateway経由で公開しているAPI⾃体の呼び出しは可
能n 開発者ポータルへのアクセスが不可
¦ 冗⻑化構成を⾏わない場合の検討事項n 冗⻑化構成を⾏わない場合、ダウン時はロードバランサーの機能などに
よりSorryサーバーへの転送を⾏うことを検討する
冗⻑化構成と検討ポイント(開発者ポータル)
© 2017 IBM Corporation14
物理筐体物理筐体
DeveloperPortal
#1Active
物理筐体物理筐体
DeveloperPortal
#1Down
DeveloperPortal
#1Active
VMの機能によりテイクオーバー
q Active-Standby構成
冗⻑化構成と検討ポイント(開発者ポータル)
通常時 障害時
API Connect管理者アプリケーション開発者
API Connect管理者アプリケーション開発者
© 2017 IBM Corporation15
q Active-Active構成
物理筐体 物理筐体物理筐体
DeveloperPortal
#1
Down
DeveloperPortal
#2 (Primary)
Active
DeveloperPortal
#3 (Primary)
Active
同期同期
物理筐体 物理筐体物理筐体
DeveloperPortal
#1(Primary)
Active
DeveloperPortal
#2 (Primary)
Active
DeveloperPortal
#3 (Primary)
Active
同期 同期同期
冗⻑化構成と検討ポイント(開発者ポータル)
通常時 障害時
LoadBalancer LoadBalancer
※CLIは各サーバーに個別ログイン※CLIは各サーバーに個別ログイン
※Webアクセス ※Webアクセス
API Connect管理者アプリケーション開発者
API Connect管理者アプリケーション開発者
© 2017 IBM Corporation16
q 検討ポイント、制約事項¦ IBM DataPower Gatewayがダウンした際のサービスへ影響
n 公開しているAPIの呼び出しが不可となるn サービスへの影響が⼤きいため、Active-Activeによるクラスタリングを⾏
うことを推奨
¦ ロードバランサーの配置n IBM DataPower Gatawayにはセルフバランシング機能が含まれるため、
冗⻑化構成にした場合でもGatewayの前段にロードバランサーを配置しない構成が可能
n IBM DataPower GatewayにはヘルスチェックAPIの機能はないため、TCPレベルでの確認に留めるか、ヘルスチェックAPIで確認する場合は作り込みを⾏う必要がある
¦ OAuthによる認証認可を⾏う場合(トークン失効をDataPower Gatewayの機能で実現する場合)n トークン失効情報をGateway内に保持する場合、失効情報の共有のため最
低3台による冗⻑化構成が必須となる参考:Knowledge Centerではサーバー稼働率が50%を超えないとフェイルオーバーしないと記載ありhttps://www.ibm.com/support/knowledgecenter/ja/SS9H2Y_7.6.0/com.ibm.dp.doc/quotaenforcement_peergroup_failover.html
冗⻑化構成と検討ポイント(IBM DataPower Gateway)
© 2017 IBM Corporation17
q Active-Active構成
冗⻑化構成と検討ポイント(IBM DataPower Gateway)
物理筐体 物理筐体物理筐体
DataPowerGateway
#1
Down
DataPowerGateway
#2
Active
DataPowerGateway
#3
Active
同期同期
物理筐体 物理筐体物理筐体
DataPowerGateway
#1
Active
DataPowerGateway
#2
Active
DataPowerGateway
#3
Active
同期 同期同期
通常時 障害時
LoadBalancer LoadBalancer
※管理者は各サーバーに個別ログイン※管理者は各サーバーに個別ログイン
API 利⽤アプリ API 利⽤アプリ
© 2017 IBM Corporation18
⽬次
q API Connectの基本構成図q API Connectの冗⻑化構成と検討ポイント
管理サーバーn 1台 Active-Standby構成n 2台 Actice-Active構成
開発者ポータルn 1台 Active-Standby構成n 3台 Active-Active構成
IBM DataPower Gatewayn 3台 Active-Active構成
q API Connectの冗⻑化構成 トポロジーパターン¦ シングル構成¦ 全コンポーネント冗⻑化構成¦ 実案件での構成例
q API Connectの通信⽅向
© 2017 IBM Corporation19
q 最⼩構成
トポロジーパターン
開発者ポータル
管理サーバーReverseProxy
アプリケーション開発者
API実⾏環境 等
WebSphere Libertyソフトウェア
冗⻑化なし1台構成
冗⻑化なし1台構成
IBMDataPowerGateway
API利⽤アプリ
冗⻑化なし1台構成
© 2017 IBM Corporation20
q 全コンポーネント冗⻑化構成
トポロジーパターン
開発者ポータル
管理サーバー
IBMDataPowerGateway
ReverseProxyアプリケーション開発者
Active-Active3台構成
Active-Active2台構成
Active-Active3台構成
LoadBalancer
DataPowerのセルフバランシング機能により代替可能
LoadBalancer
LoadBalancer
API実⾏環境 等
WebSphere Libertyソフトウェア
API利⽤アプリ
ReverseProxyでロードバランスの機能を利⽤
© 2017 IBM Corporation21
q 実構成例
トポロジーパターン
ReverseProxy
アプリケーション開発者
管理サーバー
管理サーバー
VMHA
Active-Standby2台構成
IBMDataPowerGateway
Active-Active3台構成
LoadBalancer
DataPowerのセルフバランシング機能により代替可能
Active-Standby2台構成
VMHA
開発者ポータル
開発者ポータル
※外部公開している場合は、Active-Active構成も検討する
API実⾏環境 等
WebSphere Libertyソフトウェア
API利⽤アプリ
© 2017 IBM Corporation22
⽬次
q API Connectの基本構成図q API Connectの冗⻑化構成と検討ポイント
管理サーバーn 1台 Active-Standby構成n 2台 Actice-Active構成
開発者ポータルn 1台 Active-Standby構成n 3台 Active-Active構成
IBM DataPower Gatewayn 3台 Active-Active構成
q API Connectの冗⻑化構成 トポロジーパターン¦ シングル構成¦ 全コンポーネント冗⻑化構成¦ 実案件での構成例
q API Connectの通信⽅向
© 2017 IBM Corporation23
API Connectの通信⽅向外部 内部ゾーン
アプリ開発者
DMZ
API利用企業システム
1
開発者ポータル
Dev Portal
13
担当者・管理者・運用者・内部利用者
6
5
API管理
API管理
API Manager
Cloud Manager
12
910
負荷分散
SMTP
14 14
7
8
負荷分散
4
3
バックエンドシステム
2
DNS
NTP
Syslog
16
15
17
業務トランザクション
xxxx
xxxx
サーバー間通信
管理作業
API Connectコンポーネント
ノード
外部サーバー
DataPower Gateway
DataPower Gateway
11
IDG管理コンソール
DataPower Gateway
ReverseProxy
負荷分散
1615 17
1615 17
© 2017 IBM Corporation24
API Connectの通信⽅向No. 通信の内容 From 中継機器 To プロトコル ポート 備考
1 API要求 / 応答 API利⽤アプリ 負荷分散装置 DataPower Gateway HTTPS 443
2 API要求/応答 DataPower Gateway FW バックエンドシステム HTTPS 443
3,4 API Manager, Cloud ManagerAPI管理 CLIコンソール
担当者 負荷分散装置 API管理 HTTPSSSH
44322
5 IDG 管理IDG CLIコンソール
担当者 DataPower Gateway HTTPSSSH
909022
6 開発者ポータル開発者ポータル CLIコンソール
担当者 開発者ポータル HTTPSSSH
44322
7 構成のプル/分析のプッシュ DataPower Gateway FW API管理 HTTPS 2443/9443 ※1
8 構成のプッシュ API管理 FW DataPower Gateway HTTPS 443/5550 ※1
9 構成のプッシュ API管理 負荷分散装置 開発者ポータル HTTPSSSH
244322
10 構成のプル/API呼び出しの実⾏ 開発者ポータル 負荷分散装置 API管理 HTTPS 443/2443
11 DataPower Gateway 間通信 DataPower Gateway DataPower Gateway ハートビート 5550 ※2
※1:製品機能で負荷分散を実施可能※2:IPマルチキャスト通信
© 2017 IBM Corporation25
API Connectの通信⽅向No. 通信の内容 From 中継機器 To プロトコル ポート 備考
12 API Manager 間通信 API管理 API管理 構成データ同期分析データ複製トポロジー管理その他
11526/215269600443/90222443
13 開発者ポータル間通信 開発者ポータル 開発者ポータル クラスター通信
SSHWebトラフィックその他
3306/4567/4568/4444/3086522443/802443
14 SMTPサービス利⽤ API管理開発者ポータル
SMTPサーバー SMTP 25 ※3
15 DNSサービス利⽤ API管理開発者ポータルDataPower Gateway
DNSサーバー DNS 53
16 NTPサービス利⽤ API管理開発者ポータルDataPower Gateway
NTPサーバー NTP 123
17 syslog転送 API管理開発者ポータルDataPower Gateway
syslogサーバー UDP 514 ※4
※3:1つのIPアドレス/ホスト名しか登録できない※4:API管理は1つのIPアドレス/ホスト名しか登録できない
© 2017 IBM Corporation26
q API Connect Knowledge Centerhttps://www.ibm.com/support/knowledgecenter/ja/SSMNED
q DataPower Gateways Knowledge Centerhttps://www.ibm.com/support/knowledgecenter/ja/SS9H2Y
q API Connect システム要件https://www.ibm.com/support/knowledgecenter/ja/SSMNED_5.0.0/com.ibm.apic.install.doc/overview_apimgmt_requirements.html
参考情報