美國空軍如何在45天內將Kubernetes和Istio部署在F-16上

美國空軍如何在45天內將Kubernetes和Istio部署在F-16上

美國空軍首席軟件官Nicholas Chaillan在2019年KubeCon上發表的一份報告稱,軍事組織越來越依賴軟件,正在轉向Kubernetes和Istio等一系列開源雲工具。這些工具部署在一些非常有趣的地方,從武器系統到戰鬥機。是的,F-16在噴氣式飛機的傳統硬件上運行著Kubernetes。

“重要的一點是證明這是可以做到的。”Chaillan說。他表示,他向空軍及合作伙伴提出要求,在45天內讓Kubernetes在噴氣式飛機上運行,雖然這聽起來很困難,但該小組達到了目標,F-16目前正在同時運行三個Kubernetes集群。

隨之而來的問題是,為什麼要這麼做?在KubeCon開幕式主題演講後的演講中,Chaillan解釋了空軍以及國防部的其他部門如何對容器、Kubernetes和Istio下大注的。這是一個靈活但通用的平臺,可以防止供應商鎖定。

Chaillan說,大約18個月前,在空軍開始這個項目之前,大多數軍事軟件團隊都在使用老式的瀑布式流程來構建軟件,而新代碼可能需要數年的時間才能完全投入生產。即便如此,更新、測試甚至安全審查仍然嚴重依賴人力來完成這些早就應該自動化的任務。

在執行任務所需的技術方面,軍方實在不能落後主流太遠。Chaillan和他的團隊決定將開源軟件作為新開發平臺的基礎,倡議將Kubernetes、Istio、knative和內部開發的“強化”容器規範與一組嚴格的安全要求結合起來,作為默認軟件開發平臺。

Chaillan說,不同部門或地區的軟件團隊對如何使用他們所掌握的工具有一定的自由裁量權,但一切都必須建立在Platform One Team提供的層上,有幾件事情是不允許改變的。

在CNCF主辦的一個記者招待會上,Chaillan解釋道:“我們不想被鎖定。”為此,團隊選擇使用Kubernetes,其他項目如Istio為DoD堆棧網絡層提供安全保障。“我們要確保Istio在整個堆棧中不間斷地運行。”

當然,一路上有很多挑戰。Chaillan說,Kubernetes並不是為在許多情況下必須使用的非連接環境而設計的,這些情況下涉及的數據永遠不應該傳到互聯網上。

“我們非常習慣於使用互聯網進行更新,並且可以連接到互聯網,直接獲取更新。而這些飛機或武器系統是設計上與互聯網斷開的。”

國防部運維的規模驚人。Chaillan必須按照DevSecOps的原則培訓10萬人,更不用說新工具了。

這反映出,國防部將利用這一新的開發平臺來開發許多普通和非保密的應用。“噴氣式飛機很有趣,但它只是我們工作的一小部分。我們有很多業務系統正在遷移到雲原生環境,遷移到微服務,從一開始就在構建中。”Chaillan說。

Chaillan表示,整個國防部Enterprise DevSecOps Initiative堆棧都是開源的,任何人都可以查看。軍事機構在向開源社區發佈更多工作方面做得“越來越好”,“我們不會分叉開源軟件”。

原文鏈接:
https://thenewstack.io/how-the-u-s-air-force-deployed-kubernetes-and-istio-on-an-f-16-in-45-days/


分享到:


相關文章: