オーケストレーション()は、複雑なコンピュータシステム、ミドルウェア、サービスの配備、設定、管理の自動化を指す用語。
何らかの知的制御や自律制御として議論されることが多いが、技術的解説と言うよりも大部分は単なるアナロジーである。実際には、オーケストレーションは制御理論の要素としてオートメーションやシステムの考え方を持ち込んだものと言える。
このようなコンピュータシステムの「オーケストレーション」という用語は、仮想化やプロビジョニングの文脈で語られることが多く、バズワード的要素が強い。
若干異なる用法として、Webサービスインタフェースを通して情報交換する過程(サービス指向アーキテクチャ)を指すこともある。
オーケストレーションの例 Apache ODE (Orchestration Director Engine) は、WS-BEPL 1.1 および 2.0 準拠のビジネスプロセス管理 (BPM) エンジンであり、2つの通信層をサポートする。1つは Axis2 (Webサービスでの HTTP転送)、もう1つは(ServiceMix を使った)JBI標準に基づく。ホットデプロイメントが可能で、プロセス、インスタンス、メッセージの管理インタフェースを備える。 Oracle BPEL Process Manager は、BPEL 標準に基づくプロセス群の設計/展開/監視/管理を容易にするフレームワークを提供する。Oracle SOA スイートのオーケストレーション・ソリューションとされる。 Intervoice Media Exchange には、メディア・インタラクションの起動と管理向けに設計されたオーケストレーション・エンジンが含まれる。State Chart eXtensible Markup Language(SCXML)を複雑な相互作用の構築フレームワークとして初めて商用製品で採用した。 TIBCO BusinessWorks は、BPEL、Webサービスなどのオーケストレーションツール Microsoft BizTalk Server は、BPM用オーケストレーション・エンジンを含む。 NetBeans Enterprise Pack はBPELの視覚化設計が可能で、WebサービスやBPELプロセスの実行/テスト/デバッグのオーケストレーションを可能とするオープンソースのSOAツール。 OpenText Process Suite はSOAに基づいたインテグレーションを行い、様々な業務モデル(プロセスモデル、ケースモデル、ルール、BAM)を組み合わせ、シングルプラットフォーム上で運用・監視を提供する。 なお、仮想化やプロビジョニングに限定されるものの、国外で有名なツールには、Ansible、Puppet、Salt、 Terraform、AWS CloudFormationなど、サーバーの構成と管理を自動化するためのツールが多数あり、 Container OrchestrationとしてKubernetesソフトウェアなどのさまざまなソリューションやまたはAWS EKS、AWS ECS、Amazon Fargateなどのマネージドサービスがある。
関連項目 企業アプリケーション統合
脚注