
如果你是一名程序員,你可能想把你的開發轉移到云上,無論是為了工作還是為了娛樂,但很快就會意識到,選擇云提供商可能是一個巨大的選擇,尤其是對于開源愛好者來說。幸運的是,作為一名開發人員,無論你的經驗如何,都有非常直接的方法可以幫助確保云促進和加強開源。
以下是開發者應該了解的關于云提供商的五件事,以及云對開源的意義。
云提供商不必定義你的平臺
要在云上開發軟件,你有兩個選擇。你可以構建自己的微型云,也可以在別人的云上購買時間。
建造自己的房子很有趣。如果你的集群有足夠的貢獻者,它也會很有效。但是,如果你需要軟件在沒有實際限制的情況下增長,那么運行自己的云可能并不現實。購買云計算并不意味著你失去了對計算的控制。云提供商本質上是你和虛擬基礎設施之間的供應商。你需要計算能力,而云服務提供商急于將其出售給你。
然而,就像你買一臺現成的新筆記本電腦一樣,沒有人會強迫你使用它附帶的開源軟件。在云上租用空間時,可以運行任意數量的Linux容器,但用于創建和部署這些容器的接口以及這些容器連接到的基礎設施可能不是開源的。你可以把你的云界面想象成操作系統,把你的容器想象成你選擇的ApacheHTTPD、Postfix、Dovecot等。
要運行開源界面,請選擇運行開源控制臺,例如OpenShift(基于上游OKD項目)。如果你最終使用的云服務提供商沒有直接提供開源控制臺,那么看看AWS上的RedHatOpenShiftservice(ROSA)之類的服務,它會將你的選擇放在平臺的第一位。
云只是別人的計算機,所以請相信你的提供商
如果你在計算機上或計算機周圍工作,即使是無關緊要的工作,你可能已經在處理云了。你可能至少了解到,當應用程序在瀏覽器中運行時,它基本上是在其他人的計算機上運行的(即,公司的服務器陣列)。
有很多理由強烈思考誰的硬件存儲了你的個人、組織和客戶數據。但是,作為開發人員,也有理由考慮構建工作流的工具鏈。僅僅因為你注冊了云服務提供商,并不意味著你就可以被迫進入特定的工具鏈。永遠不要因為擔心必須重建自己的開發環境而猶豫是否從服務遷移。選擇一個能夠讓你以可持續的方式靈活構建環境、CI/CD管道和發布模型的提供商。
在云上開發仍然意味著在計算機上開發
如果你還沒有在云上開發任何東西,這對你來說可能是陌生的,但是在云上開發和在計算機上開發并沒有什么不同。如果說有什么區別的話,那就是它強制執行了你多年來一直想要實施的真正良好的開發實踐。
無論是在云端還是離鍵盤只有幾英寸的地方,你都有一個要考慮的開發環境。你需要跟蹤、管理和更新庫。你有一個IDE,它可以幫助處理語法、一致性、變量名、函數和方法等問題。一個好的云提供商可以讓你使用你想要使用的工具,無論是文本編輯器、容器友好的IDE還是云感知的IDE。
開放標準仍然很重要
不要讓計算節點欺騙你。僅僅因為比特在異地被處理,并不意味著你必須將數據提交到一個黑匣子。OpenStack的工作是確保云的基礎可以打開,這使得云的開發和管理比以往更接近桌面。開放容器計劃的工作使Podman和LXC等應用程序能夠保持容器的開放性(以及無后臺和無根)。開放標準和開放規范使開發人員能夠為工作選擇最佳解決方案。
在選擇云服務提供商時,不要妥協于任何更少的需求。
我們可以建立一個開放的云
云已經為互聯網的大部分提供了動力,但它越開放,潛力就越大。使用開源技術支持開放云提供商很重要,但幫助構建它也同樣重要。云,就像我們的個人電腦、互聯網,甚至是我們的日常社區一樣,只有在我們選擇的時候才會開放。
在云上、桌面上以及任何地方使用開源開發和發布開源。
原文鏈接:https://opensource.com/article/22/3/cloud-services-providers