[和訳]ADP+DockerDatacenterでレガシーとマイクロサービスのアプリケーション両方に安全性とセキュリティをもたらす #docker
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
本稿は ADP + Docker Datacenter Delivers Security And Scale For Both Legacy And Microservices Applications(2016/7/3) の和訳記事です。
DockerCon 2016の2日目の一般セッションでは、企業内で稼働するDockerにかかわる製品や体験談を特集しました。インテグレーションされたセキュリティ機能を持つ製品のデモンストレーションから、デプロイのテンプレートまで、そしてADP社のCEOであるKeith Fultonを特集したセッションでは、どのように彼らがテクノロジー企業へと進化したのか、そしてどのようにDocker Datacenterがより速く、安全に、あらゆるサイズのアプリに対して大規模に伝達することができたのかを語りました。
ADP社は世界にクラウドベースの人的資源管理ソリューションを提供する、最大の企業です。ADP社には、100か国以上で3500万人以上のユーザーに広げる、63万以上のクライアントがいます。ADP社は給与計算に関するサービスのみでなく、人的資源管理のあらゆる範囲にソリューションを提供します。これらの各領域にいる顧客に、SMB、中規模マーケット、そして大企業に対しても、適切なサイズで提供しています。
この、過去60年間で発達したソリューションの広がりや深みは製品開発の複雑化を招きました。ADP社はこれを、サービス企業からテクノロジー企業への移行であると考えます。そして、Dockerが将来の急成長へのカギとなると判断しました。商品開発を急速化するということ、すなわち、より多くのコードをより速く書くということだけではなく、ADP社が最終成果を早く提供するということにも役立ちました。Dockerによって、開発部門とオペレーション部門が共通のフレームワークと、明確な引き継ぎ地点を持つことが可能になりました。
このことを実現するために、コンテナ化したアプリケーションを安全に、大規模でデプロイ・管理するプラットフォームとして、ADP社はDocker Datacenterを選びました。Docker Datacenterは、統合されたContainers as a Service [CaaS] ソリューションです。Docker Engineと、イメージ管理のためのTrusted Registry、そしてクラスターとアプリケーションコンテナを管理するUniversal Control Planeが一つになっています。ADP社は、Docker Datacenterであれば、安全性、大規模で異質なシステム、そしてマイクロサービスを実現するという、3つの独特な問題を解決できると考えたのです。
- 安全性
ADP社は機密情報を扱っているため、安全性は最優先事項です。アメリカ政府はADP社を「重要なインフラ」とみなしています。5500万以上の社会保障番号と給与支払いの処理といったデータを持っているためです。昨年はADP社のシステムを通して約1兆8000万ドルを動かしました。そうです。GNPのおよそ10%が、ADP社のシステムを通して4回も動いたのです。そして、今このブログを読んでいるあなた方の社会保障番号も、ほとんどはADP社のデータセンター上にあるのです。
このことを考慮すると、セキュリティや、特に「堅牢なコンテナ」という概念がADP社にとって重要となります。「堅牢」というのは、そのコンテナ内を機密情報が流れるためです。DockerによりADP社は、コンテナ内で何が実行されているか、そして、どこからそのコンテナが来たのかを知ることができるようになりました。これにより、オペレーション部門が、商用環境で何が実行されているのかを正確に知ることができます。
ADP社のインフラの興味深い側面のひとつとして、異なるセキュリティレベル間で異なる環境を持っているという点があります。三つ目の項目で、複数のDocker Trusted Registries [DTR]での、進歩的なトラストワークフローに言及しています。一つ目のDTRは“whatever goes(なんでもどうぞ)”というレジストリで、完全に開発者の独創性に任せています。二つ目は“we think we want to run this(これを実行してほしい)”レジストリで、完全に独立したものであり、チームがアプリケーションの内容を精査し、認証することができます。三つ目のDTRは商用環境でデプロイされるコンテナを管理します。ADP社は、Dockerを適切なタイミングと状況でデプロイすることができ、開発者の自由度と高い安全性の両方を実現しました。
- 異なったシステムでもスケール
“我々には120か国で提供する200~300の製品がある”-Keith Fulton, CTO, ADP
ADP社の製品の大規模なポートフォリオは、彼らのプライベートデータセンターから世界中にデリバリーされています。何百人ものクライアントの大部分にとっては、ADP社自身がクライアントにとってのクラウドです。これらのクラウドには、大規模で実行される多くの異なるサービスを持つ、大きなシステムがあります。そして、変化を考慮すると、それらの応答の仕方がリスクになりえます。Keithは、Docker Enginesを適用し、それらをクラスター化するという先進的なアプローチを発表しました。
最初は小さめに始めて、各アプリケーションが、一つにつき一つのswarmではなく、Docker Engineの数多くの小さなswarmで作られるようにします。そこから、swarmはマージしながら、時間をかけて大きくなり、最終的には各アプリケーションがそれぞれ自分のswarmを持つことができます。Keithが最後に述べたのは、swarmが「セキュリティチームを驚愕させる」可能性があるということです。swarmの適応範囲は、パブリックインフラ、プライベートインフラ、アプリケーションレイヤーに広がり、コンピューティングリソースとアプリケーションとの間を抽象化することが可能となります。そのような新しい世界では、誰がインフラを所有・ホストするかについては問題にならず、費用的な観点からリソースそのものを決定をするだけになるでしょう。
3.チキンナゲットとアイスクリーム
“マイクロサービスが素晴らしいということに反対する人はいない。一度実際のマイクロサービスを見たら、絶対に欲しくなる。チキンナゲットみたいなものだ。みんなチキンナゲットが大好きだからね“-Keith Fulton, CTO, ADP
ソフトウェアの説明に使う食べ物の比喩としては最高のものとしか言いようがないのですが、KeithはADP社でのアプリケーションの展望を、チキンナゲットとアイスクリームと表現しました。ADP社はその60年の歴史の中で、多くのアプリケーションを開発してきました。それらのアプリケーションは、何百万ものコードの列であったり、10年以上前のものであったりします。こういったシナリオはADP社に独特のものではなく、あらゆる規模の企業に共通するものです。目標と展望は、マイクロサービスを達成することですが、それを一晩で成し遂げることができる企業はありません。すべてのアプリケーションが同じ割合で書きなおされるわけではなく、プラットフォームは多様なアプリケーションアーキテクチャを利用するために柔軟でなければなりません。
Keithは、ADP社がDockerを用いて行っているのは、“アイスクリーム・スクープ・リファクター法”であると表現します。最初、アプリケーションは単一の大きなコンテナ(アイスクリームの容器のようなもの)に入っています。そして最も頻繁に変化する瞬間は「すくい出される」時と、コンテナ化される時でしょう。これにより、アプリケーションに対して容易に変更を加え、デプロイし、進化させることができます。このおかげで、ADP社はアプリケーションのより動的な部分をまず書きなおし、他の部分を後に残しておくことができます。Dockerによるコンテナ化は、ADP社がハイブリッドな戦略をとることを可能にしました。どんなアプリケーションでも、大規模、小規模のコンテナのミックスで、マイクロサービスを実現するための、進化の道を築くことができます。
Docker Datacenterは統合されたContainers as a Service [CaaS]ソリューションで、あらゆる規模の企業が、安全なソフトウェアサプライチェーンを構築し、開発部門とITオペレーション部門両方が製品のデリバリーを加速するのを助けます。Docker Datacenterは商用サポート[CS]のDocker Engine、イメージ管理のためのTrusted Registry、そしてクラスターとアプリケーション管理のためのUniversal Control Planeによって構成されており、 あらゆる場所で稼働する、あらゆるアプリケーションのためのDockerネイティブなソリューションです。
DockerとADPに関するその他の資料:
・DockerCon 二日目の一般セッションの完全版を見る
・Docker Datacenterの無料体験に申し込む、またはセールスに連絡する
・Docker Datacenterのデータシートをダウンロードする
・Docker Customerの体験談をもっと見る
Dockerに関してさらに学ぶには
・Docker初心者は、10分のオンラインチュートリアルをご覧ください。
・画像、自動構築などを無料のDocker Hubアカウントでシェアしてみましょう。
・Docker 1.12リリースノートを読んでみましょう。
・Docker Weeklyを購読してみましょう。
・次に予定されているDockerオンラインMeetupに登録してみましょう。
・次に予定されているDocker Meetupに参加してみましょう。
・DockerCon 2016に登録してみましょう。
・DockerCon EU 2015のビデオを見てみましょう。
・Dockerコミュニティへの貢献を始めましょう。