「Open Source Forum 2019」開催 ― CI/CDの標準化やプロダクションAIのためのエコシステムなど解説
Linux Foundationはカンファレンスイベント「Open Source Forum 2019」を2019年12月16日に開催した。Linux Foundation会員を対象に毎年開催される、招待制のイベントだ。
本稿では、GoogleのDan Lorenc氏によるCD Foundationに関する講演と、KonduitのAdam Gibson氏によるプロダクションAIをデプロイするためのエコシステムについての講演をレポートする。
サプライチェーンセキュリティに
CD Foundationが果たす役割
GoogleのDan Lorenc氏は、「Standardization: The Key to Secure Cloud Native Software Delivery」と題し、オープンソースのサプライチェーンセキュリティを例に、CI/CDの意義と、その標準化のためのLinux FoundationのプロジェクトCD Foundation(CDF)について解説した。
まずはサプライチェーンセキュリティについて。「常識的に、拾ったUSBメモリーを職場のPCに挿してプログラムを実行したりはしないだろう。しかしソフトウェア開発の場合はどうか」とLorenc氏。「たとえばnpm install expressすると126パッケージがインストールされる。これはけっこう怖い」と、依存パッケージの問題を提起した。
その事例として、Lorenc氏は2019年12月に発生した「PyPi TypoSquatting」事件を紹介。PythonのパッケージリポジトリPyPiで著名なパッケージとまぎらわしい名前の偽パッケージが登録され、実際にそれに依存しているコードが発見されている。そのほかにも、npmの著名なパッケージの乗っ取り事件や、Dockerイメージに暗号通貨マイニングが入っていた事件なども紹介した。
こうしたサプライチェーンセキュリティは、ソフトウェアデリバリーの問題の一つだとLorenc氏は言う。ソフトウェアデリバリーというと開発者から利用者に提供するまでの間のことだと考えられがちだが、より大きく見ると、依存パッケージもソフトウェアデリバリーの中に含まれるという意見だ。
「CI/CDのデリバリーパイプラインはオープンソースをセキュアにするのに最適な場所」とLorenc氏は主張する。そのためには、依存パッケージも同じ標準にのっとっている必要がある。
そこで、CI/CDのメタデータを共有できるようにすることがLinux FoundationでCDFのやっていることだという。これにより、プロジェクトにベストプラクティスを適用し、ベストプラクティスを標準化し、標準をもとに自動化する、というサイクルを作れる。
標準化する対象は、パイプラインの定義や、どのバージョンのコンパイラを使ったかなどのツールチェーンの宣言、ソースの出所、メタデータの交換方法などだ。これらの要素を、外部のソフトウェアや自前のソフトウェア、プロダクション環境などいずれにおいても1つに統合する。
CDFのプロジェクトとしては、まずCDパイプラインツールのTektonがある。そのほか、メタデータのクエリのGrafeasや、サプライチェーン記述のIn-Toto、ソフトウェア部品表のSBOM/SPXをLorenc氏は紹介した。
機械学習のプロダクション環境のための
AIエコシステム
KonduitのAdam Gibson氏は、「Definition of an Open Source AI Ecosystem」と題して、機械学習のプロダクション環境のためのAIエコシステムについて解説した。
Konduitは、Linux Foundationのプロジェクトではないが、プロダクション環境に機械学習モデルをデプロイするツールを開発している。なおGibson氏は、Javaの深層学習ライブラリであるDeeplearning4jや、行列演算ライブラリであるND4Jなどの開発者でもある。
Gibson氏のいうAIエコシステムには、オープンソースの深層学習フレームワーク、ファイルフォーマット、オープンなアクセラレーター、オープンなメトリクスがある。
氏はまず、Konduitのエコシステムとして、Sparkなどの分散ランタイム、C++ランタイム、ファイルフォーマット、深層学習コンパイラ、ハードウェア、言語ごとのパッケージングなどを挙げた。
その上でAIエコシステムを見たとき、まずオープンソースの深層学習フレームワークは、TensorFlowやPyTorch、Keras、Deeplearning4jなどいくつかが使われている。このイベントの少し前の12月上旬にChainerが開発を終了してPyTorchに移行したことにもGibson氏は言及した。
続いて、ファイルフォーマットには、データ保存の形式としてApache ArrowやProtocol Buffers、JSONなどをGibson氏は紹介。さらに深層学習フレームワークごとのデータ形式や、低レベルのRPCプロトコルであるgRPCなども紹介した。
オープンなアクセラレターとは、GPUやAI専用チップなどのアクセラレーターへの対応で、どんなワークロードでもどのチップでも動かせることを目指す。Gibson氏は、難しいこととして、クロスプラットフォームの演算や、対応が最新のアーキテクチャとは限らないことなどを指摘した。
オープンなメトリクスとは、AI透明性のメトリクスのことであり、たとえばAIのバイアスなどのメトリクスが相当するという。Gibson氏は、PrometheusやStatsD、Grafanaといった可視化ツールを挙げ、世の中が変化する中で、機械学習モデルについてもDevOpsと同様に正確さやバイアスを可視化して監視し、モデルを更新していく必要があると語った。
* * *
OSSを利用したソフトウェア開発におけるサプライチェーンセキュリティは、静かに問題となっている事項で、GitHubなども取り組んでいる。これをソフトウェアデリバリーの中の問題として位置づけ、CI/CDのベストプラクティスを標準化しようというCDFの話は興味深かった。同様に、機械学習のプロダクション環境へのデプロイのために標準化を進めるKonduitのアプローチも興味深かった。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- Open Source Summit Japan 2022開催。車載からストレージ、Kubernetesまで幅広いトピックをカバー
- OpenSSFがソフトウェアのサプライチェーンセキュリティのための仕様「SLSA(サルサ)」のVersion 1.0を公開
- 米国のバイデン大統領が署名したことで話題となった「国家のサイバーセキュリティ改善に関する大統領令」とは
- OpenSSFが2023年におけるOpenSSFコミュニティの活動と、その成果を公開した「2023 アニュアルレポート」を公開
- CNSC 2022、SBoMの概要と未来を展望するセッションを紹介
- LFがオープンソース活用等の計画を策定する「Open Source Congress」のレポートとCI/CDの最新状況に関するレポートを公開
- OpenSSFを拡大・支援するため1,000万ドルの新規投資を調達、「The 2021 Open Source Jobs Report」を公開、ほか
- 写真で見るCloudNativeSecurityCon 新興ベンダー山盛りのショーケース
- エクセルソフト、Anaconda社と販売代理契約を締結し「Anaconda Commercial Edition」の日本国内での販売を開始
- エクセルソフト、Anaconda社と販売代理契約を締結し「Anaconda Commercial Edition」の日本国内での販売を開始