昨年末にアマゾンのクラウドサービスが日本でも開始され、これまで手の届かなかったクラウドコンピューティングが一気に身近になりました。クラウド技術や大規模ソフトウェアシステムの設計に携わってきたアーキテクトとして、今年は日本におけるクラウド元年と言えるのではないでしょうか。クラウド時代におけるアーキテクチャの方向性を問うとすれば、これからのソフトウェアアーキテクチャのあり方について、次のような観点から新たな鍵となる要素や制約を紹介したいと思います:
1.クラウドネイティブアーキテクチャ
クラウドサービスがソフトウェアのアーキテクチャ設計にこれほど大きな影響を与えたことはかつてありませんでした。既存のクラウドサービスをより弾力的に利用するためにソフトウェアをどのように設計できるかは、すべてのアーキテクトにとって新たな命題です。Amazon AWSでは、CloudFront、EC2、EBS、S3、DynamoDBがすでにCDN、コンピュート、ファイルシステム、ストレージ、Webサイトのデータベースをカバーしており、中規模から大規模のインターネットサイトには十分すぎるほどです。アーキテクトは、組織がこれらのインフラサービスを活用して、より安価で、よりスケーラブルで、より信頼性の高い大規模なソフトウェアシステムを構築するのを支援できるはずです。
2.PaaS
PaaSテクノロジーは、ソフトウェア・アーキテクチャと開発にますます深く入り込んできています。CloudFoundryやOpenShiftといった従来のツールに加え、Dockerが昨年登場し、広く認知されるようになりました。Dockerをベースとした軽量CI製品であるDrone.ioのように、コンテナ技術の分離性、カスタマイズ性、軽量性は、仮想マシンやシステムプロセスよりも多くの利点を与えています。アーキテクトは、アーキテクチャの選択や開発アプローチにおいて、これらのオープンソースPaaS技術をより積極的に取り入れるべきです。
3.デブオプス
従来のO&Mはバージョン1.0ですが、未来のO&Mは何千台もの機械を管理する必要があります。従来のO&Mは受動的に変更を実行するだけですが、未来のO&Mは積極的に変更を提案する必要があります。企業の運用と保守のプロセスと要件を組み合わせ、開発マインドセットを使って運用と保守の効率を向上させるにはどうすればよいでしょうか。開発とアーキテクチャの両方において、O&Mの観点からソフトウェアのアーキテクチャと設計をどのように改善できるか。両者のより良いコラボレーションによってのみ、ソフトウェア組織は真に力を発揮することができるのです。アーキテクトにとっては、NetflixのオープンソースChaosMonkeyのように、システムのユーザビリティを保証するために、システムのMTTRを考慮することが特に重要です。
もちろん、2014年のクラウド・コンピューティングが建築にもたらす革新は、上記の側面をはるかに超えるものになると思います。クラウド・コンピューティングは決して****の目標ではなく、CapEX、OpEXを削減し、生産性を向上させることが究極の目標です。クラウド・コンピューティングの背後にある考え方をよりよく理解し、習得し、オープンソースのクラウド・コンピューティング製品をより多く利用して、ソフトウェア提供のスケーラビリティ、信頼性、および効率性を向上させること、これがすべてのアーキテクトの使命であり責任です。 2014年 アーキテクチャのゆくえ、「クラウドへの羊飼いの尾」!".




