WhaTap Blog

スタートアップのための最高のDEVOPSはNOOPS!

2019年10月7日

DEVOPS

NoOps(No Operations)はIT環境が自動化され抽象化される過程の中でインフラストラクチャーとアプリケーションの運営組織が存在しないプロセス又は業務環境を意味します。これらは一見、DevOpsの先頭に立っているように見えますが、運営者が存在しない初期のスタートアップ企業にとってのNoOpsは、もしかするとDevOpsになるための途中段階になってしまうかもしれません。

DEVOPSとNOOPS

DEVOPSとNOOPS

DevOpsはアプリケーション開発者とインフラストラクチャー運営者間の円滑なコミュニケーション及び共同作業を意味します。DevOpsはアプリケーションをより早く、円滑に配布するプロセスを作ることを目標にしている一方、NoOpsはインフラストラクチャーが既に充分に仮想化されている状況でのアプリケーションの配布、モニタリング、管理プロセスを改善し、自動化してアプリケーション開発者が直に開発と運営、ビジネスまで関与することを目標にしています。

初期スタートアップのチーム構成

Startup

多くのスタートアップ企業が初期メンバーとして開発者を交えて構成しますが、運営者は存在しません。また、初期アイディアに対する検証を終え、サービスを提供した後にも運営チームを作りません。サービス提供後、サービスが軌道に乗って利益が発生するまでは、多くの場合スタートアップ企業のサービスの安定性よりもプロダクトの価値を証明することに対して、より多くの努力を尽くす戦略を実行しています。

スタートアップ企業が運営チームを構成しない傾向は、最近のクラウドとDevOpsによってより一層広がっていますが、DevOpsの影響で多くの開発者たちがサービスコードの持続的な統合、配布に関する経験を積み、クラウド環境で開発者たちが直にサーバーを運営できるようになったからです。

スタートアップとITサービス運営

Management with Startup

今までのサーバーのモニタリングはどのように行っていたのか?メモリーの漏れが発生した場合はそれをチェックしているのか?最新のセキュリティーのパッチは適応済みなのか?

新しいリリースのためのテスト環境は整っているのか?マーケティング部署で大規模なFacebookのイベントを進行した場合には、そこに合わせてサービスの規模は自動的に拡張されるのか?

おそらく、大部分のスタートアップ企業はこの質問に慣れているはずです。多くのスタートアップ企業の開発者たちがこの仕事全部を直接、進行しています。そして、いつかサービスがより大きくなった場合には、しっかりとした運営チームができるかもしれませんが、その前に考えるべきことがあります。しっかりとした運営チームができる前に、開発者が運営を順調に行うべきです。

この問題を解決するための最も良い方法は開発者たちが直接に配布、モニタリング、管理プロセスを自動化して問題を把握し、解決することです。いつまで想像上の運営チームをただ待っているのか。まずは、開発者が自ら安定したサービスを構築することが良いでしょう。そのためにNoOpsに関してより一層調べてみましょう。

NOOPSについて

NoOps

NoOpsは2011年フォレスト・リサーチの首席アナリストであり副社長のMike Gualtieriが書いたブログに「私はDevOpsを求めていない。NoOpsを求めている。」から由来した単語です。このブログで「NoOpsはアプリケーション開発者が運営専門家とこれ以上話す必要はない。」という内容を投稿し、大規模な論難を招きました。

NoOps

DevOpsの一部は、NoOpsを妨害だと思っています。 NoOps is a DevOps Disaster wating to Happen – DevOps.com

しかしHerokuCloudFoundryのようなPaaSソリューションと AWS Lambdaのようなサーバーレス・コンピューティングはNoOpsの可能性を作り上げ、IBMのようなクラウド・ベンダーがNoOpsを目標として開発者向けのソリューションを開発しています。

スタートアップのNOOPSとモニタリングの自動化

automatic monitoring


DevOpsの影響で多くのスタートアップ企業の開発者たちが統合、配布そして管理の経験と知識を持っていますが、未だにモニタリングは極めて弱いです。今もなお、多くのスタートアップ企業はサービスの死活を手動で確認しており、顧客からの要請を受けてから、サービスの問題を確認する場合もあります。まず、スタートアップ企業にモニタリングを自動化すべきだということを伝えたいです。大概のクラウドベンダーはモニタリング・ツールを提供しています。このツールを利用し、基本的なアラームを設定してみると良いでしょう。もし最低限のアラーム機能が準備されているのでしたら、より細かな設定をしてみましょう。既にモニタリングのツールはSaaS型で提供されているため、SaaS基板のモニタリング・サービスを利用するのならば、簡単に自社のITサービスのissueを探し出すことができます。基本的なインフラに関するモニタリングはアラーム(警報)のみで可能ですが、アプリケーションは分析の領域なので多少異なることもあります。NoOpsでは開発者たちが直にモニタリングするため、アプリケーション性能分析サービスを使わなくても大丈夫だ、という思考は非常に危険な考えです。アプリケーションの性能の領域は実際の運営の領域であり、普段の開発環境では見えない状況に関する情報を教えてくれる領域です。この部分の設定まで行いましょう。

まとめ

スタートアップ企業にとってNoOpsはDevOpsの最終形態ではなくDevOpsの始まりです。まず、開発者が自ら良い開発環境と運営環境を作り出すということは、これからサービスが拡張し、運営が複雑になった際にも柔軟に対応することができるでしょう。そのような意味から、初期スタートアップ企業はNoOpsを通じてDevOpsを作っていくことを提案したします。

運営チームがなくても負担なしでモニタリングを始めたいなら?

無料で始める