97.5%の作業削減を実現したSalesforceのソフトウェア開発プラットフォームとは?


SalesforceはDevOpsをクラウドへ移行

世界トップクラスのSaaS企業として知られるSalesforceは、Salesforceベースのアプリケーションの構築に利用するプラットフォーム(Force.com)を提供しています。

Salesforceは、Force.comの開発プラットフォームのクラウド移行にあたり、コンテナやIaCを活用したスケーラブルなCI/CDプラットフォームをAWS上に再構築し、企業規模での大きなコスト削減や生産性向上を実現しました。


AWS上に効果的なCI/CD環境を再構築

CloudBees CIを活用し、Amazon EKS上でのCI/CDプラットフォームの構築を実現しました。

  • Amazon EKSへの移行をスムーズに実現
  • 開発者の生産性の向上
  • Kubernetesなどの新たなテクノロジー活用
  • DevOpsのスケーラビリティが向上

97.5%の作業削減を実現したソフトウェア開発プラットフォームとは?


20年以上前の創業以来、Salesforce(セールスフォース)は世界でもトップクラスのSaaS企業として台頭してきました。市場有数の顧客管理(CRM)プラットフォームで知られ、サンフランシスコに本社を置くSalesforceは、カスタマーサービス、マーケティングオートメーション、分析、アプリケーション開発を対象としたクラウドベースのソリューションへと、順調に提供サービスの幅を広げています。多数のソフトウェア開発者やビジネスユーザーがSalesforce Customer 360 Platformの一部をなすForce.comと呼ばれるプラットフォームを利用し、Salesforceベースの高機能なエンタープライズアプリケーションを構築しています。

SalesforceのIT部門は、ビジネステクノロジーグループを通じて開発プラットフォームの管理を支援しており、グループのDevOpsチームは開発プロセスで重要な役割を果たしています。「私たちは開発者が最新のテクノロジーとツールを利用できるようにします」とSalesforceのビジネステクノロジーグループのDevOpsエンジニアであるAaron Nassiry氏は言います。「私たちのゴールは、開発者がコアのスキルセットに集中し、必要なフィードバックをただちに受け取れるようにすることです」

Salesforceが抱えていた課題


Salesforceの重要なソフトウェア開発ツールの1つがJenkinsです。何年にもわたって、エンジニアたちはCloudBees Jenkins Enterpriseを利用してコードのインテグレーションとデリバリーを自動化し、高速化していました。当初、CloudBees Jenkins Enterpriseはグループのデータセンターにホストされ、約70の開発チームに利用されていました。

しかし、オンプレミスのデータセンター環境は理想的なものではありませんでした。サーバーのインフラは、主にPuppetで管理されるLinuxの仮想マシン(VM)で構成されており、すでに5年以上稼働していました。変更を行うのがだんだん難しくなっており、ときには変更に1ヶ月もかかっていました。「基本的に、正しく動かすために100個ものステップを踏む必要がありました」(DevOpsエンジニアであるVenkat Kothapalli氏)

容量を増やすのも困難でした。需要に対応するため、管理者たちはVM を追加する必要に迫られていましたが、これは管理負荷が増えることを意味していました。そのほかにもシステムのスケールアップを難しくする非効率性が存在しました。たとえば、開発チームは静的なJenkinsエージェントを実行するのに行き詰まりました。そのエージェントは常にメンテナンスが必要な上に継続的に実行されていたため、開発チームはかなりのエネルギーやその他のリソースを消費し、コストを上昇させていました。

AWSへの移行によりさまざまな開発課題を改善


Salesforceがオンプレミスの環境からパブリッククラウドに自社のIT 運用を移行する方向へ舵を切ったときから、状況は変わり始めました。「単純に、データセンターを維持し、アプリケーションのホストや何かをすべて自分たちでやるのは、私たちにとってもう意味がなかったのです」(Nassiry氏)

DevOpsチームは単にデータセンターをクラウドに積み替えるのではなく、クラウドネイティブなサービスとしてAmazon Elastic Kubernetes Service(EKS)を採用することにしました。Amazon EKS は、コンテナー化されたアプリケーションの大規模なデプロイおよび管理を容易にするマネージドサービスです。

CI/CDプラットフォームをAmazon EKS上へ移行することによって、CI/CDプラットフォームのアップグレードを大幅に短い時間で完了させることが可能となりました。さらに、コスト削減/生産性の向上/優秀な人材獲得/ビジネス継続性/予測可能性など、さまざまな開発課題の改善も実現しました。


アップグレードの作業時間

  97.5%削減

アップグレードの実施頻度

  1100%増加


  • 4人で3週間かかっていた作業が、1人でわずか2、3時間のうちに完了
  • 2年に1回のアップグレード頻度だったが、過去6か月間に3回のアップグレードを実施
  • 30~40ほどあったJenkinsエージェントの維持作業が不要に
  • Dockerコンテナの活用により予測可能性が向上

Salesforceがいかにクラウド移行を行い、どのように開発課題を改善したのか?
事例資料にて詳しくご紹介しています。ぜひダウンロードください。