Open Network Linux(ONL) 是一個 Open Compute Project 中的一個專案。其主要的目的是要提供各家廠商的交換機平台一套完整的開源系統,以及供完整的 API 來讓不同的軟體能夠輕易的移植到不同的設備上面。

目前 ONL 提供了超過 100 種不同的交換機支援。大多數的平台實作都來自於各家廠商。

下圖為 ONL 基本的架構:

Screen Shot 2019-09-26 at 5.16.28 PM.png

簡而言之,ONL 是在 Debian 系統上面加上額外工具還有函式庫的一套系統。

目前光方有釋出兩種版本,一種是基於 Debian 8 (Jessie) 的,另一種則是 Debian 9 (Strech),依據需求可以選擇其中一個來安裝,主要的差異是內建的 Debian package 版本及設定不一樣。

要安裝 ONL 很簡單,於官方網站中下載 ONL installer 之後,透過 ONIE 安裝即可。

一種方式是下載完後將安裝檔放至於區域網路的 Deployment Server 上(通常會包含 DHCP 已及 image hosting),ONIE 會在拿到 IP 之後自動抓取 image 並安裝。

若不想架設專門用來部屬的 Server 的話,可以放置於一般的電腦中(Switch 需要能夠 ping 的到),在該電腦上面開啟一個 HTTP Server(可用一般 python HTTPServer),然後再 ONIE 上面使用下列指令安裝:

onie> onie-nos-install http://[IP:PORT]/[installer name]

ONIE 會透過 HTTP 下載並執行安裝程式來安裝 ONL。

這邊要補充的是,ONL 的 Installer 可以用於所有 ONL 有支援的交換機上面,不需要針對不同的設備去下載不同的 Installer 來安裝。

ONL 在啟動時會自動偵測目前的設備,並執行設備初始化用的程式(通常是一隻 Python Script),這部份會在下一章進行說明。

 

Share Your Thought