1 回答

TA貢獻1798條經驗 獲得超7個贊
這是一個很好的問題,因為它突出了某些環境施加限制的方式,這些限制違反了外部軟件可能持有的假設。
僅供參考,MapR 已被 HPE 收購,因此 MapR 集群現在是 HPE Ezmeral Data Fabric 集群。我仍在訓練自己這么說。
無論如何,語言 X 中的通用程序與 Ezmeral Data Fabric(以前稱為 MapR FS 的文件系統)通信的公認方法是掛載文件系統并使用文件 API(如 open/read/write 等)與之通信. 這適用于 Go、Python、C、Julia 或其他任何東西。在 Kubernetes 內部,執行此掛載的常規方法是使用 CSI 驅動程序,該驅動程序有某種操作員在后臺工作。那個操作員并不是特別神奇......它只是做需要做的事情。對于 Data Fabric,操作員使用 NFS 或 FUSE 掛載 Data Fabric,然后將 mounts[1] 的一部分綁定到 Pod 的感知中。
但是這個問題很酷,因為它排除了所有這些。如果您無法安裝操作員,那么其他這些東西只是一紙空文。
有三種替代方法可能有效。
在 CSI 插件方法標準化之前,NFS 掛載作為原生功能包含在 Kubernetes 中。仍然可以在非常普通的 Kubernetes 集群上使用它,并且可以訪問數據集群。
可以將容器集成到您的 pod 中,以非特權方式執行必要的 FUSE 掛載。這會有點痛苦,因為您必須將 FUSE 驅動程序與數據結構安裝分開并讓它工作。這會讓您看到 pod 內的數據結構。即使那樣,也不能保證 Kubernetes 或操作系統會允許它工作。
有一個未發布的 Go 文件系統客戶端直接使用低級數據結構 API。我們還沒有單獨發布。有關這方面的更多信息,人們應該直接聯系我(我的聯系信息無處不在......發送電子郵件至 ted.dunning hpe.com 或 gmail.com 有效)
數據結構允許您通過 S3 訪問數據。隨著 Ezmeral Data Fabric 7.0 版本的發布,此功能得到了重大改進以提供強大的性能,特別是因為您可以基本上無限制地擴展網關的數量(我聽說每個無狀態連接到網關的速度為 3-5GB/s,但是YMMV)。這將需要最少的麻煩,并且應該提供足夠的性能。您甚至可以像訪問 S3 對象一樣訪問文件。
- 1 回答
- 0 關注
- 122 瀏覽
添加回答
舉報