Weitere ähnliche Inhalte
Ähnlich wie 堅牢な国内システムへの導入でも安心!実践的Mulesoft設計テクニック(NTTデータ テクノロジーカンファレンス 2020 発表資料) (20)
Mehr von NTT DATA Technology & Innovation (20)
堅牢な国内システムへの導入でも安心!実践的Mulesoft設計テクニック(NTTデータ テクノロジーカンファレンス 2020 発表資料)
- 1. © 2020 NTT DATA Corporation
NTTデータ テクノロジーカンファレンス 2020
堅牢な国内システムへの導入でも安心!
実践的MuleSoft設計テクニック
2020年10月15日
株式会社NTTデータ 鐘ヶ江 越
- 2. 2
© 2020 NTT DATA Corporation
自己紹介
鐘ヶ江 越
2児の父
入社以来、オープン系システムのAP方式設計/開発に従事
現在はiPaaS製品の国内システム導入に関するR&D/導入支援を担当
- 3. 3
© 2020 NTT DATA Corporation
はじめに
本日お話する内容
• iPaaS導入時の課題の対処方法・設計内容をMuleSoftを用いて説明
本日お話しない内容
• iPaaS自体の詳細な説明
→ 別の資料をご参照ください。
NTTDATA INSIGHT: https://www.nttdata.com/jp/ja/data-insight/2020/0306/
Salesforce Live: https://digital.nttdata.com/crm-salesforce/common/images/pickup/pickup10/pdf-01.pdf
• MuleSoft製品の営業
→ 他製品と比較したMuleSoftの利点・差別化要素は説明しません。
- 4. 4
© 2020 NTT DATA Corporation
注意点
本日資料は2020年10月15日時点のMuleSoftの製品仕様を元に作成しております。
本製品はクラウドサービスであり、頻繁にバージョンアップが行われます。
今後の機能追加により現在の制約がなくなる可能性がある旨ご了承ください。
- 5. 5
© 2020 NTT DATA Corporation
iPaaSとは
あらゆるシステムのハブとなり、 APIベースで統制の取れた
システム間連携を実現するプラットフォーム。
- 6. 6
© 2020 NTT DATA Corporation
iPaaSのアーキテクチャ
管理者
開発者
実行環境
(Runtime)
連携先システム
クライアント
API-Gateway
・監視
・モニタリング
・ローコード開発
・テスト
・デプロイ
Cloud
Cloud
管理環境
(Webコンソール)
クラウドサービスとして提供される統一的なプラットフォームで
APIの開発・テスト、デプロイ、運用、管理が可能。
・連携
・変換
・セキュリティ
- 7. 7
© 2020 NTT DATA Corporation
iPaaSのメリット
iPaaS利用
iPaaSなし
(オンプレ・スクラッチ)
・高アジリティ
・高生産性
・高拡張性
:スモールスタートで迅速にプロト開発に着手可能
:システム間連携に最適化された開発環境
要件
定義
設計 試験 運用
技術
検証
API開発
基盤構築
プロト開発
基盤
拡張
要件
定義
設計 試験 運用
API開発
基盤構築
:基盤リソースは処理量に応じて自動スケーリング
- 8. 8
© 2020 NTT DATA Corporation
MuleSoftとは
API部品の共有・再利用を促進する
アーキテクチャによる開発コスト削減
稼働環境の柔軟な選択
(クラウド/オンプレ/ハイブリッド)
グローバル企業における標準化
を支える豊富な実績
SFDCエコシステムでの最適化
(2018年にSalesforce社が買収)
- 9. 9
© 2020 NTT DATA Corporation
MuleSoftが提供する実行環境
MuleSoftでは3つの実行環境が存在する。
今回はマネージド環境(PaaS)のCloudHubにフォーカスする。
Runtime Fabric
Docker, Kubernetes ベースのコンテ
ナサービスクラスタ基盤
02
スタンドアロン
物理サーバや IaaS インスタンス等
OS 単位で動かす実行基盤
03
OS
Runtime
API3 API4
API1 API2
Worker Node
worker
Runtime
API1
worker
Runtime
API2
Worker Node
worker
Runtime
API3
worker
Runtime
API4
Controller Node
特長
• 自社完全管理環境下で運用可能
• ライセンスドコアの割当効率が高い
特長
• 自社管理する環境下で運用可能
• 各 API が独立稼働するため、
• 安全且つ運用効率に優れている
CloudHub
MuleSoft が提供する iPaaS 環境
01
特長
• MuleSoft のマネージド環境
• 各 API が独立稼働するため、
安全且つ運用効率に優れている
worker worker worker worker
Runtime
API1
Runtime
API2
Runtime
API3
Runtime
API4
- 10. 10
© 2020 NTT DATA Corporation
MuleSoft導入を妨げる課題
オンプレ環境と安全につなぎたいんだけど...
開発環境と本番環境って
分離できないんでしょ? 本当にコストメリット出せるの?
バージョンアップ時の
対応稼働がかかるのはちょっと...
実行環境が日本リージョンにおけないと
リージョン跨りの通信オーバーヘッドが…
ソースコードをインター
ネット上で管理したくない
iPaaSはクラウドサービスであるがゆえに導入時のノックアウトファクタを
多く抱えていると思われがちです。
内部犯の脅威が...
業務データが公衆網に出るのはちょっと...
- 11. 11
© 2020 NTT DATA Corporation
バージョンアップ時の
対応稼働がかかるのはちょっと...
本当にコストメリット出せるの?
MuleSoft導入を妨げる課題
サービスが落ちたら自力で
復旧できないわけでしょ?
iPaaSはクラウドサービスであるがゆえに導入時のノックアウトファクタを
多く抱えていると思われがちです。
開発環境と本番環境って
分離できないんでしょ?
ソースコードをインター
ネット上で管理したくない
本日はセキュリティ課題を
解消するための設計例を
幾つかご紹介します。
オンプレ環境と安全につなぎたいんだけど...
内部犯の脅威が...
業務データが公衆網に出るのはちょっと...
セキュリティ
- 12. 12
© 2020 NTT DATA Corporation
オンプレミス環境と連携時のアーキテクチャ
実行環境
API
連携先システム
閉域網(オンプレミス)
連携先
他システム
インターネット
・
・
・ 管理環境
- 13. 13
© 2020 NTT DATA Corporation
開発・試験を含めた全体アーキテクチャ
実行環境(本番用)
API
API
本番環境
試験環境
開発環境
本番デプロイ
環境
閉域網(オンプレミス)
連携先
システム
インターネット
実行環境(試験用)
管理環境
- 14. 14
© 2020 NTT DATA Corporation
実行環境(本番用)
API
API
本番環境
試験環境
開発環境
本番デプロイ
環境
閉域網(オンプレミス)
連携先
システム
インターネット
実行環境(試験用)
管理環境
課題①
オンプレミス環境へのイン
バウンド通信は禁止したい
課題②
本番環境と開発環境の
分離をしたい。
MuleSoft導入時のよくある課題
- 15. 15
© 2020 NTT DATA Corporation
Runtime Plane
Control Plane
本番環境
開発環境
本番デプロイ
環境
インターネット
実行環境(本番用)
API
課題① オンプレミス環境へのインバウンド通信は禁止したい
②本番環境と開発環境
分離をしたい。
• クラウド上の連携先 ⇒ オンプレミスサーバ方向のデータ連携を行いたい。
• システム制約によりオンプレミス環境へのインバウンド通信は許可できない。
• リアルタイムデータ連携を実現したい。
要件・制約
閉域網(オンプレミス)
連携先
システム
15
© 2020 NTT DATA Corporation
- 16. 16
© 2020 NTT DATA Corporation
課題① 設計例 ポーリング方式
API API
MQ
インターネット 閉域網(オンプレミス)
4
データ送信
MQにデータを格納
オンプレミスサーバから
短い間隔でポーリング
(REST API Call)
MQからデータを取り出
し、クライアントに返却
1
2
3
4
データ連携の方向
1
2
オンプレミスサーバからのアウトバウンド通信のみで
インターネット上の連携先とのデータ連携を行う
連携先
システム
アウトバウンド通信のみ
3
- 17. 17
© 2020 NTT DATA Corporation
課題① 設計例 アーキテクチャ
API API
インターネット 閉域網(オンプレミス)
VPN
データ連携の方向
Managed MQ
VPC
API Gatewayによる
認証・認可やIPフィルタリング
CloudHubの
FW設定
CloudHubはVPN敷設可能
iPaaSベンダ管理のMQを利用することで
可用性の担保された状態で構築可能
連携先
システム
- 18. 18
© 2020 NTT DATA Corporation
試験環境
Runtime Plane
実行環境(試験
管理環境
API
API
本番環境
試験環境
開発環境
本番デプロイ
環境
課題② 開発環境と本番環境の分離
• 開発ユーザは本番環境の資材/設定/環境へのアクセスを禁止したい。
• リリース作業のオペミス(開発中資材の本番環境へのデプロイ)を予防したい。
• MuleSoftの管理環境はID/PASSによるログイン認証機能しか持たない。
APIデプロイは必ず管理環境
を経由する必要がある
要件・制約
- 19. 19
© 2020 NTT DATA Corporation
課題② 設計例(1)
管理環境
開発環境
本番デプロイ
環境
API
API
インターネット 閉域網(オンプレミス)
本番環境
試験環境
開発ユーザ
本番ユーザ
認証プロバイダ
認証プロバイダ側で
多要素認証や接続
元IP制限を行う。
ユーザに与える権限は
環境ごとに分ける。
Ex) kanegae_prd_edit
kanegae_dev_read
ユーザに与える権限は
環境×操作権ごととする
Ex) kanegae_prd_edit
kanegae_dev_edit
2020.11資料改訂
2020.10月下旬の製品アップデートで、多
要素認証機能が追加されたため、本認
証をプロバイダ側で実装する必要はなくな
りました。
- 20. 20
© 2020 NTT DATA Corporation
課題② 設計例(1)
管理環境
開発環境
本番デプロイ
環境
API
API
インターネット 閉域網(オンプレミス)
×
×
本番環境
試験環境
開発ユーザ
本番ユーザ
ユーザへの権限制御で
別環境への接続を制御
×
×
ユーザは各環境用操作端末か
らのみアクセス可能
認証プロバイダ
- 21. 21
© 2020 NTT DATA Corporation
課題②③ 設計例(おまけ) MuleSoft組織分離
管理環境
(本番用組織)
開発環境
本番デプロイ
環境
API
API
管理環境
(開発用組織)
インターネット 閉域網(オンプレミス)
×
×
開発資材は外部組織である本番組織に
アクセス権を付与して共有
または
(推奨はしませんが昔ながらの)
本番環境
試験環境
×
×
組織(テナント)を分割(※)することで別
環境へ接続不可
※基本ライセンス料金が別途かかります。
開発資材は外部組織である本番組織に
アクセス権を付与して共有
または
踏み台サーバや他媒体経由での
オンプレ環境間での資材受け渡し
○
認証プロバイダ
- 22. 22
© 2020 NTT DATA Corporation
最後に
多くのメリットを持ち、今後、国内における
急速な導入が期待されるiPaaS
ただし、セキュリティ制約の多い国内エンタープライズシステムにおいては
クラウドサービスという理由で導入を躊躇われるケースも珍しくありません
本日は国内システム導入向けのアーキテクチャ設計の一例を紹介しました
この技術領域でお困りの点がありましたら、NTTデータまでご相談ください
Hinweis der Redaktion
- 考慮すべき点がいくつかあります。
- 実行環境も本番と開発で分かれる。
連携先も同様
- このように、従前から存在するオンプレミス環境は閉域網であることも多く、多くのNW制約が残っています。
その時点で、クラウド環境に存在するSaaSや、インターネットを介してしか通信できない連携先とのデータ連携を
諦めてしまうケースも多々あると思います。
ただ、例えば、完全閉域網でないのであれば、つまり、オンプレミス環境からのアウトバウンド通信は許容されるのであれば
方式設計を行うことで制約をクリアしつつ、データ連携自体は実現可能となります。
- 簡単に実現できる
- 管理環境を分けることができないので。
課題②③
- MuleSoftは連携先プロバイダを1つしか選択できないのも制約であり、ポイント