コンテンツに移動
リテール

アジリティとその先へ: Google Cloud サービスで Lowe's がアプリの開発とデプロイを進化させた方法

2022年4月8日
Google Cloud Japan Team

※この投稿は米国時間 2022 年 3 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。

編集者注: この記事では、ホームセンター大手が Google Cloud サービスを利用し、e コマースだけでなくすべてのソフトウェアのデプロイ方法を変革するエンジニアリング プラットフォームをどのように構築したのかについて、Lowe's の情報セキュリティ アーキテクチャ担当ディレクターである Kyle Amboyer 氏が説明しています。


洗濯乾燥機、フローリング材、パレット売りのレンガが必要な場合、Lowe’s のウェブサイトにアクセスするか、Lowe’s のモバイルアプリを起動すれば、オプションを確認し、価格を比較して必要なものを注文できます。商品を受け取りに行くか、自宅への送付を希望するか、トラックでの配達が必要か、Lowe's に伝えることもできます。しかし、この便利さを実現するために必要となるテクノロジーについて考えたことはあるでしょうか?

Lowe’s はこのことについて熟考を重ね、ついに成果を挙げることができました。2020 年の 111% の成長に加え、昨年 e コマースで 18% を超える売上増を記録しました。もちろん、簡単に達成できたわけではありません。私がノースカロライナ州の本社に勤務していた 6、7 年前に、オンライン ショッピングに関するお客様の要望と期待が、当社のパッケージ型 e コマース ソフトウェアの機能をすぐに超えることはわかっていました。何かしら手を打つ必要があったのです。

Google Cloud サービスを利用し、e コマースだけでなくすべてのソフトウェアのデプロイ方法を変革するエンジニアリング プラットフォームをどのように構築したのかについてご紹介します。

モノリスの購入か構築かという対比から徐々に離れることで新たなアプローチが生まれる

初めの頃、Lowe’s はソフトウェア ベンダーが提供する商用ソリューションを主に利用していました。購入か構築かという問題では、購入が一般的なアプローチであり、IT はビジネス価値に貢献するものとしてではなく、サポート機能として捉えられていました。そこで、パッケージ型 e コマース ソフトウェアの限界に対処しなければならないと考え、まず再構築に取り組みました。モノリスを徐々に削ぎ落とし、最終的には裏でできることはすべてやったというところまで到達したのですが、それでは不十分でした。

その頃に新しいリーダーが就任し、新しい技術スタックや、構築か購入かという考え方の発展など、変化への意欲が高まりました。リーダーたちによるサポートの下で、いち早く行動してソフトウェア開発のライフサイクルを短縮し、ビジネスの信頼性と予測可能性を高めるオペレーションを実現することを目標として設定しました。マイクロサービス ベースのアーキテクチャの採用を決断し、そのマイクロサービスをコンテナ化することにしたのです。大規模なコンテナ オーケストレーションを実行するために、Kubernetes を活用すればいいことはわかっていました。準備は整ったものの、こうした高い目標をビジネスに見合った期間でどのように達成するかということが問題となりました。

Google のオープンな API に対する姿勢でビジネス チャンスをつかむ

コンテナによるマイクロサービス アーキテクチャを計画し、ベロシティ、スピード、信頼性の向上を目標にする場合、パブリック クラウドはまさに理にかなっています。Google と話を始めたとき、アーキテクチャを変革し、新しい文化を築き、クラウドに移行するという Lowe's の計画を共有しました。Google はパートナーとして非常に頼もしく思えました。

まず、Google Cloud は他のどのプロバイダよりもオープンソースに投資していました。Google の多くのプロダクトやサービスがオープン API を採用しており、エンタープライズ ロックインについての懸念はそれほどありませんでした。また Google Cloud は、Lowe's が構築、デプロイ、運用化を行う必要がある何百ものマイクロサービスの処理に最適であり、モニタリングからロギングにいたるまで、あらゆるものを提供してくれました。また、Google Cloud サービスは単に技術を変革するだけでなく、DevOps への移行もサポートしてくれました。

開発から本番へのスムーズなパスを実現するための基礎作り

新しい「構築」アプローチの一環として、Lowe's の開発チームがコントロールしつつも、本番環境へのスムーズなパスを実現したいと考えました。そこから、複数のツールを統合し、CI / CD、セキュリティ、オペレーションのベスト プラクティスを推進するためのプラットフォーム レイヤが必要だ、という結論に達しました。ロギング、モニタリング、トレースをつなぎ合わせることで、マイクロサービスを構築する開発チームがビジネス ロジックとビジネス目標に集中しながらこのプラットフォームを使用できるようになります。

Google Cloud サービスや自社のセキュリティ チームと連携し、Carbon という社内プラットフォームの基礎を築きました。Google Kubernetes Engine(GKE)が Carbon の核であり、テレメトリーやロギング、CI / CD、デプロイ パイプライン管理などのために、他のオープンソース テクノロジーも統合しています。セキュリティとサービス メッシュの制御には、Istio および Hashicorp がオープンソースで提供している Consul と Vault を組み込み、診断には Google Cloud のオペレーション スイート(旧 Stackdriver)を組み込みました。

Infrastructure as Code に基づき、自動化を主な原動力として、Carbon を一から構築しました。Carbon チームは、組織、プロジェクト、ネットワーキング、権限に至るまで、Lowe's の Google Cloud テナントをブートストラップしましたが、その際に Terraform が重要な役割を果たしました。構築してからまもなく、小売業で最も過酷なテストに挑むこととなりました。あのブラック フライデーです。

ブラック フライデーでの 3 回の成功がソフトウェア デリバリーに大きく影響

Carbon でのブラック フライデー e コマースは 1 年目、2 年目、3 年目と成功を収め、記録的な売上やトラフィックとなりつつも、必要な安定性が確保されました。最初のブラック フライデーで、Carbon と Lowe’s の状況が変わりました。e コマースやモバイルアプリの開発とデプロイにかかる時間が数週間から数時間に減ったことで、社内に噂が広まりました。

他部署の社員が、「こんなアプリがあって、早くテストする必要がある」と私たちのところに言いに来たほどです。他にも、「このコードは数か月前から用意されたままになっていて、インフラを待っているところだ」と言いに来る社員もいました。彼らは Carbon を通じて開発環境に参加することがいかに簡単であるかわかっていたのです。そしてすぐに、マーチャンダイジング、マーケティング、サプライ チェーン、データ サイエンスなど、さまざまなチームから私たちの元へ集まってきました。

翌年には、Lowes.com のすべてを Google Cloud と Carbon プラットフォームの大部分で動作するように変換したのですが、それにより可用性と継続性を高める必要が生じました。マルチリージョンを採用し、現在では Carbon とそのすべてのワークロードを米国東部リージョンと米国中部リージョンで稼働させています。独自のデータセンターともう少し深く統合し、より多くのハイブリッド通信を橋渡しする必要がありました。最終的には、Carbon がソフトウェア デリバリーのエンタープライズ プラットフォームとなるまで規模を拡大しました。Carbon は現在、オンプレミス、店舗、Google Cloud で利用され、1,000 を超える独立したワークロードで Lowe’s のビジネスの全分野をサポートしています。

Carbon は見事なサクセス ストーリーです。DevOps に向けて社内文化を発展させる立役者となるだけでなく、技術的な変革を解き放つという点で、期待を上回る成長を遂げました。Lowe’s では、ワークロードを抱え、最も抵抗の少ないパスを探している全社員に Carbon が用意されています。マイクロサービスは、水のように最も抵抗の少ないところを通ります。このプラットフォームは、マイクロサービスが本番環境に向かって流れる際の抵抗の少ないパスを確立しました。そして Google Cloud は、Lowe’s の成功に欠かせない要素となりました。

- Lowe's 情報セキュリティ アーキテクチャ担当ディレクター Kyle Amboyer
投稿先