Cloud-native RStudio on Kubernetes for Hopsworks

要約

クラウド コンピューティングのメリットを最大限に活用するために、サービスはユーザー間のリソース共有を最大化することを目的とした「マルチテナント」アーキテクチャ モデルに従って設計されています。
ただし、マルチテナントでは、セキュリティ、パフォーマンスの分離、スケーリング、カスタマイズという課題が生じます。
RStudio サーバーは、R プログラミング言語の Web ブラウザーからアクセスできるオープンソースの統合開発環境 (IDE) です。
RStudio を Software as a Service (SaaS) として提供するマルチテナント モデルに従って、データ集約型 AI プラットフォームである Hopsworks 上のマルチユーザー分散システムの設計と実装を紹介します。
当社では、最も人気のあるクラウドネイティブ テクノロジである Docker と Kubernetes を使用して、マルチテナント環境に存在するパフォーマンスの分離、セキュリティ、およびスケーリングの問題を解決します。
さらに、RStudio サーバー インスタンスでの安全なデータ共有を有効にして、データのプライバシーを提供し、RStudio ユーザー間のコラボレーションを可能にします。
当社のシステムは、ビッグ データ処理ワークロードを拡張して処理できる Apache Spark と統合されています。
また、ユーザーがカスタム構成を提供し、独自の RStudio サーバー インスタンスを完全に制御できる UI も提供します。
私たちのシステムは、それぞれに 30 GB の RAM が割り当てられた 4 つのワーカー ノードを備えた Google Cloud Platform クラスターでテストされました。
このクラスターでのテストでは、それぞれ 2GB の RAM を搭載した 44 台の RStudio サーバーを同時に実行できることがわかりました。
私たちのシステムは、クラスターまたはシステムにリソース (CPU と RAM) を追加することで、同時に実行されている数百台の RStudio サーバーを潜在的にサポートできるようにスケールアウトできます。

要約(オリジナル)

In order to fully benefit from cloud computing, services are designed following the ‘multi-tenant’ architectural model, which is aimed at maximizing resource sharing among users. However, multi-tenancy introduces challenges of security, performance isolation, scaling, and customization. RStudio server is an open-source Integrated Development Environment (IDE) accessible over a web browser for the R programming language. We present the design and implementation of a multi-user distributed system on Hopsworks, a data-intensive AI platform, following the multi-tenant model that provides RStudio as Software as a Service (SaaS). We use the most popular cloud-native technologies: Docker and Kubernetes, to solve the problems of performance isolation, security, and scaling that are present in a multi-tenant environment. We further enable secure data sharing in RStudio server instances to provide data privacy and allow collaboration among RStudio users. We integrate our system with Apache Spark, which can scale and handle Big Data processing workloads. Also, we provide a UI where users can provide custom configurations and have full control of their own RStudio server instances. Our system was tested on a Google Cloud Platform cluster with four worker nodes, each with 30GB of RAM allocated to them. The tests on this cluster showed that 44 RStudio servers, each with 2GB of RAM, can be run concurrently. Our system can scale out to potentially support hundreds of concurrently running RStudio servers by adding more resources (CPUs and RAM) to the cluster or system.

arxiv情報

著者 Gibson Chikafa,Sina Sheikholeslami,Salman Niazi,Jim Dowling,Vladimir Vlassov
発行日 2023-07-18 10:28:55+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.DC, cs.SE パーマリンク