Canonicalによるハイパフォーマンスコンピューティングのレシピ

by Canonical on 14 March 2024

ハイパフォーマンスコンピューティング(HPC)とは、簡単に言えば速度と規模です。しかし実際には非常に複雑で、簡単には実現しません。普通の自動車からスーパーカーやハイパーカーに乗り換えるのと少し似ています。時速300kmのときに遭遇する困難や問題は、時速100kmのときと大きく異なります。まったく新しい制約が出現するのです。

さらに、HPCに同じ構成は2つとありません。どの組織も、それぞれのワークロードと要件に合わせて独自にカスタマイズされた方法でHPCを実行します。とはいえ、基本的なコンポーネントと機能は、この分野で使用されるツールやテクノロジー全般に共通です。今回は、これらの「材料」を最適にブレンドし、Canonical風味のHPC構成を作るレシピをご紹介したいと思います。これが絶対的な真実あるいは唯一の優れた方法だとは考えていませんが、実用的で実際的、かつ効率的な方法であると確信しています。

HPCをHPCたらしめるもの

ハードウェアレベルで言えば、HPCの能力は通常、比較的安価な複数の市販マシン上で別々のデータチャンクを並列実行することで得られます。安価というのは、同水準のパフォーマンスを提供する単一のシステム(あれば)のコストと比べての話です。GPUモジュールを使用すると従来のCPUよりデータクランチングを大幅に高速化できるため、HPCの構成には処理用のグラフィックスカードがよく使用されます。

並列実行には、HPC構成内のいずれかのポイントでリソース不足に陥ることがないよう、高速処理と十分なオーケストレーションが必要です。そのために、HPCの構成では高速ネットワークと高速ストレージも組み込み、従来の高速要素(CPU/GPU、メモリ)と低速要素(I/Oバス)によってもたらされるデータ伝送速度と処理速度のギャップを最小限に抑える(または解消する)ことになります。

ソフトウェアレベルでは、オーケストレーションのために、HPCの構成(コンピュートノードのクラスター)全体にわたってデータを処理、ディスパッチ、および管理できるインテリジェントなスケジューラーが必要です。通常、データを扱うエンジニアや科学者には、ワークロードをHPC環境へ送り込むためのプログラムも必要です。そのために、ジョブをディスパッチするためのコンソールと、ジョブを準備するツールやユーティリティが必要になります。パッケージマネージャーによって一元管理できれば理想的でしょう。

レシピの形でHPCを要約すれば、CPU/GPU、高速ストレージ、高速ネットワーク、スケジューラー、パッケージマネージャー、および管理コンソールを備えた一連のマシンということになります。次に、HPCの分野でCanonicalに何ができるかを説明しましょう。

Jujuによるハードウェアのデプロイ

Jujuについて聞いたことがない人のために簡単に説明すると、Jujuは、ソフトウェアオペレーター用のオープンソースのオーケストレーションエンジンであり、あらゆるインフラストラクチャ上で、任意の規模でアプリケーションのデプロイ、統合、ライフサイクル管理を可能にします。

データセンター、クラウド、HPCセットアップのトポロジー構築に長い時間を費やすのではなく、Jujuに環境を構築させ、開発者は実行したいワークロードそのものに時間をかけるというアイデアです。もちろん近道はなく、Jujuは「ITレスのIT」を実現する魔法のソリューションでもありません。しかし、場合によっては、企業や組織が環境のセットアップという当初のハードルを乗り越えるのに役立ちます。

Jujuのデプロイと運用動作の組み合わせはcharmという形を取ります。これは、アプリケーションのライフサイクルのあらゆる側面を自動化するオペレーター、つまり再使用可能なソフトウェアパッケージにカプセル化されたビジネスロジックです。言い換えればcharmとは、設定とアプリケーションのビジネスロジック(デプロイ後の動作の仕方)の両方をバンドルしたパッケージです。したがってHPCの場合、Charmed HPCソリューションもありえます。このソリューションには、デプロイ用のコンポーネントと、完全に自己完結型の独立したHPC構成を実行するために必要なソフトウェア材料が含まれます。

charmとsnapのセット

ハードウェアのハードルを乗り越えたら、ソフトウェア部分が楽になるはずです。Jujuは、HPCワークロードの実行に必要なものをすべて備えたUbuntuシステムをプロビジョニングします。

Spackはパッケージマネージャーとなります(年末向けの記事で説明したとおり)。これにより、HPCのユーザーは約7,000の学術用プログラムやユーティリティを簡単に検索してインストールできます。次に、エンジニアや科学者がワークロードをディスパッチする準備ができたら、Open OnDemandユーティリティでHPCクラスターに接続します。

その後、SLURMがタスクを処理し、クラスター全体でタスクのスケジューリングを行います。Canonicalは、すべての接点でソフトウェアとハードウェアの最適化を目指しています。このためHPCクラスター上でさまざまなプロセスを実行しても、エンドユーザーはパフォーマンス、電力利用、セキュリティと安定性の向上を得られます。いずれ、Canonicalがこれをどのように達成しようとしているかを詳しく説明するとともに、ベンチマークや調整の最新情報を提供する予定です。

環境のモニタリングに役立つ可観測性コンポーネントも提供されますが、まだ名前はありません。このような構成が機能するには、LDAPおよびNFSとの強固な統合が必須だと考えているため、それらにも時間をかけます。Cephの統合は、Canonicalのレシピにおけるもう1つのコンポーネントです。

規則ではなく推奨事項

全体として、これはCanonicalの「料理」です。しかし、あらゆる料理と同様、味付けが多いに越したことはありません。徐々に詳細をご説明しますが、ここで言及していない追加ソフトウェアコンポーネントが含まれる可能性もあります。とはいえCanonicalはHPCソリューションを柔軟なモジュール型にしたいと考えており、ユーザーに具体的な要件がある場合でも閉め出すことはありません。

ソリューションの構想と構築は始まったばかりです。最新情報に引き続きご注目ください。とりあえずニュースレターを購読していただければ幸いです。ご不明な点は直接お問い合わせください。

ではまた。次回の記事をお楽しみに。

写真:Katie SmithUnsplashより。
ニュースレターのサインアップ

Ubuntuニュースレターの配信登録

お客様が購読登録を行われる場合、以下の条件に同意されたことになります。Canonicalのプライバシーに関するお知らせ個人情報保護ポリシー

関連記事

VMwareの料金にお困りのあなた: UbuntuでVMを便利に運用しよう

[ウェビナー] VMwareの料金にお困りのあなた:UbuntuでVMを便利に運用しよう 日時:2024年8月7日(水)15:00~16:00費用:無料お申し込み Ubuntuは世界中で高いシェアを持つLinuxディストリビューションです。近年では、CentOSの開発打ち切り(CentOS Streamへの移行)、RHELのソースコード公開ポリシーの変更、VMwareの料金体系の変更等に伴い、Ubuntuに乗り換える方も多く、日本国内でも注目度がますます高まっています。 本Webinarでは、NTTテクノクロス社で日頃からUbuntuに関わる業務に携わっている技術者がスピーカーとなり、Ubuntuが提供する様々なツールの紹介や、Ubuntuを商用利用する場合に重要となる脆 […]

Ubuntu Pro for EKSの一般提供を開始

Ubuntuの発行元であるCanonicalは、Ubuntu Pro for Amazon Elastic Kubernetes Service(Amazon EKS)の一般提供を発表しました。この拡張機能により、AWSのマネージドKubernetesサービスで、稼働時間の増大、Kernelのライブパッチによるセキュリティ、ProコンテナからAmazon EKSへの無制限アクセス、マネージドKubernetesサービスによりAWS(Amazon Web Services)やオンプレミスデータセンターでKubernetesを実行できるなど、堅牢なセキュリティサービスを使用可能になります。 Amazon EKSクラスターでコンテナを実行することでセキュリティを強化 Ubunt […]

機械学習のセキュリティリスクの概要

データはあらゆる機械学習(ML)プロジェクトの要であり、悪人もそれを知っています。技術者の間でAIが常に話題になるとともに、MLシステムは攻撃の標的としても注目を集めています。Identity Theft Resource Center(ID窃盗リソースセンター)の報告によれば、2023年にはデータ漏えいが72%も増加しており、MLプロジェクトが恰好の攻撃経路とならないよう適切な対策を施すことは極めて重要です。このブログ記事では、機械学習のセキュリティリスクについて説明し、主要な脅威と課題に言及します。しかし、悲観的な話だけでなくベストプラクティスにも目を向け、オープンソースの役割も含め、可能なソリューションを探求します。 機械学習の攻撃対象領域 あらゆるテクノロジーには […]