OAMとは?
おーえーえむ
クラウドネイティブなアプリケーションをコンポーネント単位で定義するためのオープンな仕様です。
OAM(Open Application Model)とは、Kubernetesなどのクラウド基盤上で動くアプリケーションを、開発者と運用者の役割を分離しながら宣言的に定義するためのオープンな仕様です。もともとMicrosoftとAlibaba Cloudが中心となって提唱し、クラウドネイティブ関連のオープンソースコミュニティの中で発展してきました。
OAMの特徴は、アプリケーションをコンポーネントと特性(Trait)、そしてそれらをまとめるアプリケーション設定といった要素に分解して定義する点にあります。開発者はビジネスロジックを持つコンポーネントの実装に集中し、運用者はスケーリングやルーティング、監視といった運用上の特性を後から付与できるため、複雑な設定を直接書かずに済み、責任範囲を明確に分けられます。
代表的な実装としては、OAMの考え方を採用したオープンソースツールKubeVelaが知られており、マルチクラウドやマルチクラスタ環境でのアプリケーション配備を統一的な仕様で管理できます。
このようにOAMは、Kubernetesの複雑さを抽象化し、開発と運用の分業を進めるための設計モデルとして、クラウドネイティブ開発の分野で注目されています。
使い方・例文
Kubernetesのマニフェストの代わりにOAMの仕様に沿って記述することで、アプリケーション定義と運用ポリシーを分離して管理できる。
この用語をシェア
最終更新: