毎度、ググっても出てこない小ネタを取り扱っております。
本記事は個人的な見解であり、筆者の所属するいかなる団体にも関係ございません。
0. 某所で以下の発表をしたのですが、資料をアップしていなかったので省略版をQiitaに書いておきます。
1. お題
AIでコンテナ&コンテナでストレージ
1-1. コンテナとAIとGPUの関係
1-2. コンテナとストレージの関係
2. よくある開発風景
3. コンテナだと....。
4. しかし、困ったことが
5. ダメじゃん
6. KubernetesにCSI(※)が追加された
Kubernetesから外部ストレージを管理するインターフェース(規格)としてCSI(※Container Storage Interface)が規定されました(2018/12)
7. CSIは何か?
- コンテナ(正確にはPod)から外部ストレージを切り出してマウントできるようにするプラグインの規格
- この規格に沿ったプロビジョナーと言われるストレージを管理するプラグインを書けば、外部のストレージをPodにマウントすることができるようになる
8. これができるようになると何が出来るか?
- コンテナ内の領域にデータをダウンロードして演算が可能になりました
- コンテナ領域を外部のストレージに用意することをプロビジョニングといいます。
9. CSIで実現されるストレージ接続機構
10. Kubernetesに使われるプロビジョナー
10-1. NetAppさんのストレージのプロビジョナー
- NetAppさんのKubernetes接続ストレージは以下の2つ
- SolidFire
- FAS
- 上記に接続できるプロビジョナー
- Trident
10-2. DELL/EMCさんのプロビジョナー
- DELL/EMCさんのKubernetes接続ストレージは以下の2つ
- VxFlex OS
- 上記に接続できるプロビジョナー
- CSI Driver for Dell EMC VxFlexOShttps://github.com/dell/csi-vxflexos
10-3. IBMさんのストレージのプロビジョナー
- IBMさんのKubernetes接続ストレージ
- IBM block storage
- IBM Spectrum Scale
- 上記に接続できるプロビジョナー
- ubiquity-k8s-provisioner