LaunchDarkly ケース スタディー #02 : IBM 社

アジャイルなソフトウェア開発を支援する機能管理プラットフォーム、LaunchDarkly。今回は、IBM Cloud™ Kubernetes Service チームが、LaunchDarkly を活用してデプロイメントの頻度と速度を劇的に向上させた事例をご紹介します。週2回のデプロイから1日100回以上へ。その驚くべき変革の軌跡をご覧ください。

週 2 回のデプロイから 1 日 100回以上のデプロイへ

IBM Cloud™ Kubernetes Service について

IBM Cloud™ Kubernetes Service は、IBM Watson® やブロック チェーンなどの高度なサービスにバインドできるアプリケーションの迅速な配信のためのマネージド コンテナ サービスです。認定 K8s プロバイダーとして、IBM Cloud Kubernetes Service は、インテリジェントなスケジューリング、自己修復、水平スケーリング、サービス ディスカバリーとロード バランシング、自動ロールアウトとロールバック、シークレットと構成管理を提供します。この Kubernetes サービスには、簡素化されたクラスター管理、コンテナ セキュリティと分離ポリシー、独自のクラスターを設計する機能、およびデプロイメントの一貫性のための統合運用ツールに関する高度な機能も備わっています。

抱えていた問題

課題 

  • 週に 2 回のデプロイ 
  • デプロイに 4 時間を要した

解決後 

  • 1 日に  100回以上のデプロイ 
  • デプロイに 1 分しかかからない 

発展を妨げていた課題

IBM Kubernetes Service チームは、長くて面倒なデプロイプロセスを抱えていました。火曜日には、チームは 3〜4 時間を費やして、さまざまなマイクロ サービスとコンポーネントを構築し、さまざまなクラスターにデプロイするための一連の複雑な  Jenkins ジョブを実行していました。 

残念ながら、デプロイメントを1つの大きなモノリシックなコード ブロックとして扱うことは、彼らにとってスケーラブルではありませんでした。場合によっては、数百または数千もの変更が単一のデプロイメントに組み込まれることがありました。機能フラグ サービスの代わりに、彼らは環境変数をデプロイメントにハード コードしていました。それを変更するには、システムにアクセスし、環境変数を更新して、アプリケーションを再起動する必要がありました。これは、置き換えようとしていた長くて複雑なプロセスでした。 

スタックとシステムを更新するにあたり、可視性の向上、サービスの分散と疎結合、そしてプロセスの簡素化という3つの重要なイニシアチブに焦点を当てたいと考えていました。

LaunchDarkly による解決 

IBM は、2 つのユース ケースに対応するために LaunchDarkly の機能管理プラットフォームを選択しました。1 つは、信頼度が高まるにつれて、ますます多くの視聴者に向けて機能を段階的にローンチするという、おなじみの機能ベースのデリバリーです。

2 つ目は、プロセスの簡素化という彼らの要件に固有の、むしろユニークなものです。彼らは、デプロイメントを管理するために機能フラグを使用することで、本質的にデプロイメント用の軽量サービス メッシュを作成しました。彼らは環境内の各コンポーネントに機能フラグを立て、デプロイメントを制御するために機能フラグを使用し始めて以来、チームはすべてのマイクロ サービスを独自の独立したエンティティとして考えるようになりました。現在、これらをすべて個別にロールアウトおよびデプロイしており、もはやモノリスに対処する必要はありません。 

その後の影響と発展

IBM は、急速に成長する Kubernetes コミュニティのペースに合わせたデプロイメントスケジュールが必要でした。LaunchDarkly を実装する前は、Kubernetes の新バージョンに追加された機能をデリバリーするのに 3〜6 か月かかっていました。現在、これらの機能を、Kubernetes プロジェクトの最新の安定ビルドで最終決定される前に、IBM Kubernetes クラウド ユーザーにデリバリーできます。新しい機能を機能フラグで管理することで、数か月ではなく数週間でデリバリーしています。

現在、IBM は 60 秒で 1 つ、60 個、または1,000 個の Kubernetes クラスターにアップデートをロールアウトできます。LaunchDarkly の前は、彼らのリリース プロセスはデプロイメント プロセスに結び付けられていました。現在、LaunchDarkly の機能管理プラットフォームを活用することで、これら 2 つのアクションを分離できます。リリース速度を月に数回のデプロイから1日に数百回のデプロイに向上させました。また、コードは機能フラグによって制御されるため、リスクが軽減され、安定性が向上しています。

より多くのものをより速くデリバリーすることに加えて、チームは LaunchDarkly プラットフォームを使用して本番環境でテストすることに大きな価値を見出しました。現在、チームは IBM 社内のチームまたは顧客が、一般公開する前に新機能を安全に試用できるようにすることができます。また、リーダーシップは、チームが以前よりも自律的に活動していることを発見しました。実際に本番環境にデプロイするコードへの関心が高まっています。 

数年前には考えられなかったペースで新機能をロールアウトできるようになりました。 

Michael McKay 
プリンシパル ソフトウェア エンジニア、IBM 

LaunchDarkly の導入

お問い合わせ、お見積り

エクセルソフト株式会社は、LaunchDarkly の正式代理店として、日本のお客様の導入と活用を強力にサポートしております。

ご紹介したケーススタディーのように、LaunchDarkly は企業のソフトウェア開発体制を大きく変革する可能性を秘めています。もし、お客様の環境での具体的な活用方法にご興味をお持ちでしたら、個別のワークショップも随時承っております。導入にあたっての技術的なご支援はもちろん、お客様の課題やご要望に合わせた最適なプランのご提案、そしてスムーズな導入のお手伝いをさせていただきますのでご安心ください。

お見積りは無料です。どうぞお気軽にお問い合わせください。

また、LaunchDarkly のすべての機能をご体験いただける体験版のご登録も代行いたします。まずはその効果を実感していただくことが、導入への第一歩だと考えております。LaunchDarkly の導入をご検討の際は、ぜひエクセルソフト株式会社にお任せください。お客様のビジネス成長に貢献できるよう、全力でサポートさせていただきます。

LaunchDarkly に関する情報、お問い合わせはこちらから

出典
IBM goes from deploying twice a week to 100+ times a day. | LaunchDarkly
IBM Cloud™ Kubernetes Service is a managed container service for the rapid delivery of applications that can bind to adv...

本記事は LaunchDarkly 社より許可を得て翻訳および掲載しております。

タイトルとURLをコピーしました