
話題の「クラウドネイティブ」とは何か?
こんにちは。フィックスポイントの冨です。
年も明けて2020年になりました。
年末年始はいかがお過ごしでしたでしょうか。
システム運用の人の中には、世の中が長期休暇の時期にはシステムメンテナンスのチャンスとばかり、いろいろと作業をされていた方もおられるかと思います。
さて、最近、勉強会やセミナーなどで改めて「クラウドネイティブ」という言葉を耳にするようになりました。
ただ、いろいろな文脈や解釈で使われているようなので、改めて原典にあたってみます。
「クラウドネイティブ」なアプリケーションのためのオープンソースソフトウェアの開発を進めている団体 「Cloud Native Computing Foundation」(CNCF)による「クラウドネイティブ」の定義として
「CNCF Cloud Native Definition v
- 0」という文書を公開しています。
https://github.com/cncf/toc/blob/master/DEFINITION.md
この定義では、「回復力」「管理性」「可観測性」「疎結合」「自動化」により、 「インパクトのある変更を最小限の労力で頻繁かつ予測通りに行う事が出来る」 といった点が挙げられています。
「クラウドネイティブ」なアプリ開発にアプローチするための技術としては、 コンテナ、サービスメッシュなどが挙げられていますが、
ある技術を採用すると「クラウドネイティブ」という訳ではなく、
上記の様な運用が出来るような構成設計、自動化などを含めた、
クラウド環境を利用する方法論として理解するのが良さそうです。
アプリケーションの運用に際して、「人がやる」という発想から、
出来る限り何も関与しなくて済むような仕組み作りを考えていく方針への考え方を変える必要が出てきます。
オンプレのサーバーをクラウドの仮想サーバーに置き替えたというのは、
「クラウドネイティブ」と呼ぶには苦しくて、
それらをいかに手放し運転が出来るようにするのかが、 これからのシステム運用の課題の一つと言っていいでしょう。


