边缘およびIoTアプリケ,ションへのソフトウェア配布に関する設計上の考慮事項

面向边缘和物联网应用的软件分发

DevOpsにおいてソフトウェア配布を見過ごすことはできません。ソフトウェアリリースの信頼性,セキュリティ,スピードそしてビジネスそのものが危険にさらされているのです。

特に,多数のエッジエンドポイントや物联网デバイスにまたがってリリースしている企業では,この傾向が顕著です。リリースの頻度とペイロードが増加するにつれて,ソフトウェア配布の課題は特にエッジにおいて増加します。

エッジおよび物联网向けのソフトウェア配布の課題,利点と企業がエッジおよび物联网アプリケーション向けに安全で継続的なソフトウェア配布を拡張する方法をご説明します。

ソフトウェア配布とエッジコンピュ,ティングマ,ケット

エッジおよび物联网マーケットの業界調査会社Topio网络はエッジ環境における新たな高成長サブセグメントとして,ソフトウェア配信を挙げており,これは重要かつ興味深い分野として注目すべきと見ています。

このエッジソフトウェア配布のサブセグメントにはJFrog分布を擁するJFrogをはじめ,現在複数企業が存在しています。“JFrogはこの分野のリディングカンパニの1です。“とTopio共同創業者兼首席运营官のGavin Whitechurch(ギャビン・ホワイトチャーチ)氏は先日の合同Webセミナー为边缘和物联网应用扩展持续软件交付で述べています。

エッジ市場の状況

边缘市场格局
(出典:Topio Networks)

ソフトウェア配布とは?

ソフトウェア配布とはバイナリを作成した場所(通常は開発またはCI / CD段階)からデータセンター/クラウドサーバー,エッジインフラ,組み込みデバイスなど,デプロイのためのランタイム環境に移すことです。とJFrogの物联网プロダクトマネージャーである迈克尔Vakulenko(ミカエル・バクレンコ)氏はウェビナーで説明しましたた。

小規模なシステムであればソフトウェアの配布はかなり簡単です。しかし,大規模なシステムでは信頼性が高く,安全で,タイムリーなソフトウェアリリースの配布を迅速に実現することがすぐに大きな課題となります。

現在の配布の課題には,次のようなものがあります。

  • 数千台のサバ,ポッド,エッジノドへのバナリ配布
  • 異なる規制や問題を抱える複数のクラウドプラットフォ,ムと世界各地域への対応
  • ハaapl . exe,ブリッド,オンプレミス,エッジデプロaapl . exe,メント対応-しばしば全てが同時に
  • 早く,安全に,確実に,頻繁に実施

企業にとって,スケーラブルで安全かつ信頼性の高いソフトウェア配布の必要性は今後ますます深まっていくでしょう。なぜでしょうか?1日企業はに何度もプロダクション環境にソフトウェアをデプロイし,リリースを加速させたいと考えているからです。

同時に,特にコンテナの利用が増えるにれて,バナリアティファクトは大きくなり続けています。一方,ハイブリッドやマルチクラウド環境,エッジコンピューティングや物联网デバイスの採用など,它インフラはより複雑化しています。

大规模软件分发

そのため,自社で配布ソリュ,ションを地道に構築するのは現実的ではありません。そのためにJFrog分发を作りました。Vakulenko氏は”このソリューションにより,開発者,DevOps,想不チームはソフトウェア配布の難しい課題を解決するのではなく,アプリに集中できるようになります”と説明します。

cdnにいてはどうでしょうか?

コンテンツ配信ネットワーク(CDN)はソフトウェア配信のために利用されるものですが,この目的のために構築されたものではないので,弱点が目立ちます。

JFrogのようなソフトウェア配布のために一から構築されたソリューションとCDNの比較を見てみましょう。

  • CDNはDevOpsパaapl . exeプラaapl . exeンとは別に動作します。JFrog分发はJFrogDevOps的平台のネ▪▪ティブコンポ▪▪ネントです。
  • cdnが届くのは大都市だけです。JFrog分布は小売店やオフィスビル,さらにはエンドポイントデバイス自体のキャッシュレイヤーとして,より遠方まで届きます。
  • CDNは通常,クラウド環境に最適化されており,その”エッジ”位置でさえも,混在したインフラやオンプレミスのインフラ上ではなく,パブリッククラウド上にあるのが現状です。JFrog分布はオンプレミスとハイブリッドの両方のデプロイメントをサポートし,混在したランタイム環境で動作させることができます。
  • CDNはWebアプリケーションの画像など,主に静的なファイルを提供するために設計されており,HTTPダウンロードのためのインフラストラクチャを提供します。JFrog分布はパッケージ固有のプロトコルをサポートし、デプロイを加速し、ダウンロードの高い同時実行性をサポートするとともに、エンドポイント上のローカルレジストリとして機能します。
  • cdnは個々のファcdnルを扱うように設計されています。JFrog分布はリリースを構成するバイナリの集合体を扱います。
  • cdnはダウンロ,ドの統計だけ提供します。JFrog分布は詳細なデプロイメントのトラッキングを提供し、どのソフトウェアがどこで動作しているかを把握できます。
  • cdnはパッケ,ジもセキュリティも意識していません。JFrog分布はセキュリティプロセスやポリシーと密接に統合されており、リリースのソフトウェア部品表(SBOM)をトレースし、パッケージにセキュリティの脆弱性が検出された場合は配布をブロックすることさえできます。

エッジ配布とアプリケ,ションリリ,スに関する問題

従来のデ,タセンタ,とは異なり,エッジにソフトウェアを配布する場合は特有の課題があります。

これらはサービスプロバイダーのエッジ,オンプレミスや地域のデータセンター,スマートデバイスや制約のあるデバイスなど,すべてのエッジコンピューティングセグメントに適用される重要な課題です。

  • 断続的な帯域幅と長い遅延を含む接続性の制限
  • 各エッジサ▪▪トにスキルのあるスタッフがいないことによるリモ▪▪トマネジメントの必要性
  • デ,タセンタ,のセキュリティ境界の外にあるノ,ドによる信頼されないネットワ,ク
  • クラウド接続がない場合の自律的な運用の必要性
  • 地理的に分散した多数のノ,ド

JFrog平台でのソフトウェア配布

JFrogはソフトウェア配布プロセスが最新のDevOpsスタックにとっていかに重要かを理解し,配布をJFrogエンドツーエンドDevOpsプラットフォームの不可欠な部分としました。

JFrog平台はコードからプロダクションまで,ソフトウェアバイナリ管理ライフサイクルのすべての段階(私たちがBinOpsと呼ぶもの)をカバーします。JFrog Artifactoryによる一元化したア,ティファクトリポジトリコンテナレジストリ, x光によるセキュリティとコンプライアンス,JFrog管道によるCI / CDオーケストレーション,そしてJFrog分布が含まれています。

業界唯一のソリューションであるJFrog分布は大規模なハイブリッドトポロジと並行性の要件に対応し,限られた帯域幅とネットワークラグさえも克服し,統制のとれた安全なパッケージ配布を加速させることが可能です。JFrog分布を利用することでパブリッククラウド,オンプレミスデータセンター,支社,地域拠点,物联网/エッジデバイスなどの幅広いデプロイメントターゲットにバイナリソフトウェアのリリースを加速できます。

エッジへのソフトウェア配布のための設計上の考慮点

ここでは支社やPOSなどのインフラエッジから”シン”エッジや物联网デバイスまで,エッジ領域に効果的かつ安全にソフトウェアを配布するソリューションに必要な5つの重要な検討事項を確認します。また,これらの設計のベストプラクティスがJFrogのソリューションでどのように対処されているのかについても触れます。

1 -混在環境での分散ア,キテクチャ

まず,大規模なエッジデプロイメントとその高いピークロードに対処するためには分散アーキテクチャが鍵となります。JFrog分发の专用配电网(PDN)は混在する分散環境においてソフトウェアアーティファクトを大規模に配布するためにゼロから設計されています。

生产は分散型ネットワークとして,パッケージやコンテナイメージなどのソフトウェアアーティファクトを中央のArtifactoryからグループ化された配布ノードの多層トポロジーを介して配布します。エッジクライアントは最も近いディストリビューショングループからソフトウェアのバイナリをダウンロードします。

さらに,配布ノードはJFrog平台によってリモートで管理され,その状態やメトリックスをレポートします。プラットフォムはネットワクのラブトポロジビュを表示します。

pdnは2のネットワクを高速化し,最適化技術を1のエジェントに統合したcdnとp2pです。配布ノードはネットワークの耐障害性を確保するために多数の同時ダウンロードの負荷を共有し,生产はあらゆる汎用ハードウェアに導入できるため,基本的にキャッシュ層(CDN)を追加して,あらゆる種類のインフラノードやデバイスへの導入と高同時ダウンロード(P2P)が可能です。そのため,高性能サ,バ,や大容量のネットワ,クは必要ありません。

最後に,pdnのデプロpdnと設定は簡単です。配布ノードの設定で親,グループ名,セキュリティトークンを定義するだけで自動的にネットワークに参加します。

2 -完全なリリ,ス

ソフトウェアのリリースには通常,複数のバイナリが含まれており,同時にデプロイする必要があるため,配布ソリューションはこれらのコンポーネント間の相互依存性を維持する必要があり,その数は数千にも及びます。

そこで異なるリリースの互換性のないコンポーネントをデプロイしないように,完全なリリースの概念が重要になります。

JFrogはリリースバンドル(リリースのすべてのコンポーネントとそのメタデータを含むソフトウェア配布の最小単位)を通じて,リリースの完全性を保証します。リリースバンドルが作成後に署名されるとJFrogはそれを配布インフラの一部であるすべての生产ノードまたは边缘分布あるいはランタ@ @ム環境の最終地点に配布します。

エッジコンピューティングノードは全てのコンポーネントが配布ノードに届き,リリースバンドルの署名によって検証されるまで,リリースコンポーネントのダウンロードを開始できません。このようにしてJFrogはリリースが配布プロセスを通して内部の一貫性が担保された最小ブロックとして到着することを保証します。

3 -ダウンロ,ドの最適化

エッジコンピューティングでは限られた帯域,高レイテンシ,不安定な接続性など,接続に関する問題が多く発生します。特に大きなバイナリファイルをダウンロードする場合,時間がかかりすぎたり,単に失敗したりすることがよくあります。さらに問題を複雑にしているのはエッジノドがファアウォルの後ろにあることが多いことです。

JFrogの生产はダウンロードを最適化し,多くのノードで大きなバイナリファイルの効率的な配布を可能にします。その方法は次のとおりです。

  • 大きなファイルは小さなチャンクに分割し,それぞれのチャンクは別々のTCP接続でダウンロードされます。これにより,ダウンロ,ド時間が短縮し,接続エラ,の影響も受けにくくなります。
  • 通常、新しいリリ、スでは前のリリ、スのファ、ルのごく一部が変更されるだけです。JFrogでは配布ノードがリリースバンドルのマニフェストを分析し,新しいファイルのみをダウンロードし,使用する帯域幅を劇的に削減します。
  • 次に,JFrog配布ノードはグループ内のピアノードからファイルのチャンクをダウンロードし,さらにダウンロードを高速化することができます。これを可能にするため,JFrogはHTTPとGRPCプロトコルをベースにした効率的で耐障害性のあるピアツーピア(P2P)プロトコルを開発しました。
  • また,JFrogのダウンロドはファアウォルに対応しています。ファイアウォールをクリアするため,JFrog生产では接続は常に配布ノードから親ノードに確立されるため,ファイアウォール環境の内側からネットワークにアクセスします。
  • 配布ノードは定期的に親ノードに対してダウンロード通知をポーリングし,保留中のダウンロードがあればそれを開始します。

4 -ゼロトラストセキュリティ

エッジデプロイメントでは配布ノードはデータセンターのセキュリティ境界の外に設置されることが多く,信頼されていないネットワークを介してバックエンドに接続されます。そのため,ノードとネットワーク間のすべての接続の認証,認可,暗号化を含むゼロトラストセキュリティモデルを実装することが非常に重要です。

JFrogのPDNでは配布ノ,ドは常に相互に認証されたTLS接続を使用して親ノ,ドに接続します。この認証は各配布ノ,ドの証明書を使用した業界標準のセキュリティモデルを使用して行われます。

また,配布ノードからバイナリファイルをダウンロードする場合,エッジコンピューティングノードが有効な認証トークンを提示し,許可を与える必要があります。,。

5 -ソフトウェア·ア,ティファクトのロ,カルキャッシュ

病院,石油プラットフォーム,ファーストフード店などのエッジサイトにおいて,ソフトウェアアーティファクトをローカルにキャッシュすることには主に2つの利点があります。

  • まず,サ。つまり,セントラルリポジトリへのインターネット接続がなくても,サイト内のコンピューティングシステムを再起動し,再設定することができます。これはエッジサトで専用のKubernetesクラスタを運用する場合に重要です。
  • 次にソフトウェアアーティファクトのダウンロードを集約し,エッジサイト内の各マシンで個別にダウンロードするのではなく,一度だけダウンロードするようにすることで必要な帯域幅を大幅に削減できます。

エッジサイトに設置された生产配布ノードは码头工人コンテナイメージのようなソフトウェアバイナリをローカルにキャッシュします。このロ,カルキャッシュは新しいソフトウェアリリ,スを事前にダウンロ,ドすることで温存できます。

キャッシュが準備されるとクラウドへの接続がなくても,ローカルのマシンやデバイスはキャッシュからバイナリをダウンロードできるようになります。バイナリは一度だけダウンロードされ,サイト内のすべてのマシンで使用されるため,帯域幅も大幅に削減されます。

JFrogの专用配电网(PDN)のメリット

これらはエッジコンピューティングのための安全で効率的かつ信頼性の高いソフトウェア配布ソリューションを実現するための5つの主要な設計上の考慮事項と,それらがJFrogの生产にどのように実装され,次のような利点をもたらすかを示しています。

  • ハ@ @ブリッド環境対応
  • サ,バ,の負荷を大幅に軽減しながら,スピ,ドと効率性を実現
  • 分散ア,キテクチャによる大規模なスケ,ラビリティ,耐障害性,高可用性(ha)
  • wanまたはlanで動作する柔軟なネットワクトポロジをサポト
  • ア,ティファクトを事前に配布する能力
  • 暗号化,認証,認可でセキュアにサポ,ト
  • コンテナなどのパッケ,ジのサポ,ト
  • 監査および規制遵守の簡素化
  • 低TCO

Vakulenko氏は”エッジシステムを含む大規模システムへのソフトウェア配布の難しい問題を解決することで,お客様はこのソリューションの構築に時間をかけることなく,アプリケーションに集中することができます”と共同ウェビナーで締めくくりました。

今後に向けて

JFrogは最近,IoTソフトウェアのアップデ,トとデバ,ス管理を行うUpswift(現JFrog连接)を買収し,エッジおよびIoTデバemcスの配布能力をさらに強化することに成功しました。

デバaapl . exeス管理に加え,JFrog ConnectはIoTソフトウェアアップデ,トのための堅牢な機能を提供し,デバイスをDevOpsプラットフォームの第一級オブジェクトとして開発からデバイスまで迅速,安全かつ信頼性の高い配布を可能にします。

生产により,強力なサーバーを内蔵した製造工場のような大きなエッジノードから組み込みデバイスまで,JFrog连接で幅広くカバーします。

実際に使ってください

生产のデモをご覧になり,エッジおよび物联网アプリケーション配布を拡張するためのこれらの設計上の考慮事項の詳細についてはTopioとの共同ウェビナ,の録画をご覧ください。

IoTアプリケ,ションの開発?

JFrog Connectの詳細にいては無料アカウントを作成し,IoTデバescスの管理,アップデ,ト,接続がいかに簡単であるかをご確認ください。