スケーラブルなマルチリージョンSaaSソリューション

1。ディストリビューション,プロモーション,デプロイメントをSaaSへ

我们的可扩展多区域SaaS部署解决方案

吃我们自己的狗粮他の多くのプロダクションDevOpsエンジニアリングチームと同様に,私たちJFrogチームも20以上のクラウドリージョンにまたがるAWS, Azure, GCPに1日に数回,新しいバージョンリリースをデプロイしています。このプロセスは以前は何時間も要し,他のチームによるメンテナンスと並行して行われた場合は失敗する可能性さえありました。

2021年に進行中のクラウド改善の一環として,自社のSaaS環境,つまりエンドユーザーへのあらゆる種類のソフトウェアリリースのSaaS展開に対応するために使用しているシングルインスタンスの設定を変更することにしました。私たちは1つのメインサイトから大規模な地域にわたってソフトウェアを配布したいと考え,それには大規模な自動化が必要で,完全な証明とテスト,スケーラブルなインフラを使用する必要がありました。

私たちは”自分たちのドッグフードを食べる”ことに決め,シングルインスタンスのJFrog ArtifactoryをマルチインスタンスのJFrog平台

中文

以前はプロダクション環境で1つのJFrog Artifactoryインスタンスをプライベート码头工人および执掌レジストリとして使用することで多くのメリットを享受していました。そのおかげでバイナリアーティファクトを信頼できる唯一の情報源から,あらゆるJFrogクラウドリージョンに保存,共有,デプロイすることができたのです。

多个生产区域的单点故障複数プロダクションリージョンの単一障害点

このシングルインスタンス方式の最大のメリットは,そのシンプルさにあります。。シングルインスタンスの設定は需要が少ない環境では最も効率的な選択肢かもしれませんし,設定も比較的簡単です。しかし,同じ設定で静的コンテンツと動的コンテンツの両方を提供する場合,需要が大きくなり非効率的になります。また1つのインスタンスを使用することで,たった1つの不具合や故障が原因でシステム全体が動かなくなるという事態を招く可能性があり,潜在的なリスクを抱えています。

。新しいバージョンがリリースされるたびに運用チームが手作業でソフトウェアをアップデートしなければなりませんでした。★★★★★★★★★★★★★★

千万千万千万

JFrog平台は開発者のコードからプロダクション稼動までシームレスで安全なソフトウェアリリースの流れを可能にします。

【翻译汪汪,汪汪,汪汪HA冗長ネットワークアーキテクチャ。つまり,単一障害点がなく,Artifactory边缘のノードが1つでも稼働していれば,社内システムの運用を継続できます。。

.JFrog云は現在,当社のクラウドArtifactory边缘からプロダクション用ランタイムクラスターへの何百万ものダウンロードを処理しています。。

针对多个生产区域的多实例方法複数のプロダクションリージョンに対するマルチインスタンスアプローチ

Dev2Cloud:

社内ではクラウドプロダクションに新しいバージョンを提供する方法について,厳格なフォワードコントロールを実施しました。(2)、(2)、(3)。

  1. RnDのみが関連する製品のCIジョブを介して,エッジおよびクラウドステージングにバージョンをデプロイおよびプロモートします。
  2. CIジョブでクラウドプロダクション環境にプロモートまたはデモートするのはプロダクションデリバリーグループ…。

1.ソフトウェア配布- RnDデリバリーグループ

今日,私たちのすべてのデリバリーチームは信頼できる不変のリリース・バンドルを使用して,リリースをArtifactory边缘にプロモートする方法を知っています。これには社内のオフィシャルなJFrog平台リリースや图依存関係,外部のサードパーティ依存関係が含まれます。

从发布包到下载中心的发布工作流

?
JFrog Artifactory边缘ノードでホストされているパッケージは安全で不変のソフトウェアパッケージのコレクションであるリリースバンドルに含まれます。
(英译汉)1

2.ソフトウェアデリバリー——プロダクションデリバリーグループ

JFrog分布は大規模なデプロイメントと同時ダウンロードを高速化し,ハイレベルな同期ダウンロードをサポートします。

私たちはE2Eクラウドのプロビジョニング,デプロイメント,メンテナンスを担当する社内デプロイサービス(上記ソリューションセクションの図中のJFrog内部クライアントを参照)を開発しました。掌舵图船坞坞坞坞坞(基本的に私たちのワークロードをデプロイするもの)を含むリリースバンドルをDevCenterから取得します。

Docker掌舵图人工的、人工的、人工的。

【中文译文】

大規模なインフラのフットプリント,ユーザー,ダウンロードの急増に対応するため,ソフトウェアの更新を迅速にリリースするにはDNSソリューションが必要です。私たちのチームはスケーラブルなHAソリューションを確実にし,規模に応じたネットワーク使用率と耐障害性を向上させるために,多大な投資を行っています.DNSソリューションのためのいくつかの異なるオプションを検討した後,私たちはレイテンシールーティングポリシー(DNSソリューション)にAWS R53を使用することに決定しました。

私たちのユースケースではソフトウェアのリリースバンドル(码头工人イメージと执掌图表)のコレクションを用意し,異なる地域のクライアントが単一のエンドポイント(レイテンシールーティングポリシー)を介して利用可能なArtifactory云边缘のいずれかからダウンロードできるようにしています。

レイテンシーベースのレコードは関連するヘルスチェックを適用することで,トラフィックを最適なレイテンシーと往復時間の短いエッジにルーティングできるため,最適な選択肢となります。AWS R53をに使用することで,権威あるサーバーがDNS階層を横断して最終的な回答を取得するため,最終回答解決までの時間を短縮する别名レコードを使用する利点を得られます。
基于延迟的记录

結果

1 .。JFrog平台を利用することで大規模でインフラ非依存からあらゆるクラウドサーバーにアップデートをリリースする際に、デプロイのスピード、ガバナンス、ネットワークの利用率を向上させることができました。

JFrog平台
JFrog学院

齐声

私たちの経験ではマルチインスタンスアプローチは非常に好評なため,初期設定を多少増やしてもいいのであれば,最初からマルチインスタンスにすることをお勧めします。

。伊兰·尼桑,埃尔达·阿西斯,马坦·卡茨,阿萨夫·费德曼,罗尼·尼伯。さらにJFrog分布式*云機能,プロセス,設計上の決定についてサポートと支援をしてくれたCTO,クラウドプロダクション,DevOpsの各チームにも感謝します。

JFrog云のためにさらなる高度な機能を作り続ける私たちのチームからの興味深いアップデートにご期待ください。