編譯SONiC交換機映象

2021-09-24 16:19:23 字數 1836 閱讀 3488

以下是關於如何為網路交換機構建(onie)相容網路作業系統(nos)安裝程式映象的說明,以及如何構建在nos內執行的docker映象。請注意,sonic映象是根據每個asic平台來構建的。使用相同asic平台的交換機共享乙個通用映象。有關支援的交換機和asic的列表,請參閱此列表。

任何伺服器都可作為構建映像的伺服器。我們使用的伺服器帶有1t容量的硬碟。作業系統是ubuntu 16.04。

請參考 sonic 路線圖 中關於每個sonic版本所對應的sai版本資訊. sai全稱 switch abstraction inte***ce,交換機抽象介面。

為了遞迴轉殖**倉庫,假設git版本為1.9或更高版本:

git clone
要構建sonic安裝程式映象和docker映象,請執行以下命令:

# 確保你的開發系統上載入 'overlay' 模組

sudo modprobe overlay

# 進入原始碼目錄

cd sonic-buildimage

# (可選的) 獲取特定分支。預設情況下,使用主分支

git checkout [branch_name]

# 轉殖倉庫後執行make init一次,亦或取得帶有子模組更新的遠端倉庫後也要執行一次

make init

# 執行make configure一次以配置asic

make configure platform=[asic_vendor]

# 構建sonic映象

make all

注意:

sonic安裝程式包含需要的所有docker映象。sonic對同一asic**商的所有裝置使用同乙個映象。支援的asic**商包括:

對於 broadcom 公司的 asic平台硬體, 我們構建 onie 和 eos 兩個映象. arista公司的硬體使用 eos 映象, onie 映象用於所有其它基於broadcom公司 asic 硬體的裝置.

make configure platform=broadcom

# 構建 debian stretch 所需目標

bldenv=stretch make stretch

# 構建 onie 映象

make target/sonic-broadcom.bin

# 構建 eos 映象

make target/sonic-aboot-broadcom.swi

你可能會發現規則/配置檔案很有用。它們包含構建過程的配置選項,諸如新增更多詳細資訊或顯示基礎映象的依賴關係、使用者名稱和密碼等.

每個docker映象構建,儲存到 target/ 目錄. 所以,舉例,僅構建docker-database,執行以下命令:

make target/docker-database.gz
同樣的對於debian 軟體包, 儲存於 target/debs/ 目錄:

make target/debs/swss_1.0.0_amd64.deb
每個目標都有相應的clean清空目標,所以,要清空swss,執行以下命令:

make target/debs/swss_1.0.0_amd64.deb-clean
建議使用clean目標來清空所有一併構建的軟體包,例如dev軟體包。為了更熟悉構建過程並對其進行一些更改,建議閱讀此簡短的文件.

貢獻被接受之前,所有貢獻者必須簽署貢獻許可協議。聯絡 [email protected].

華為交換機交換機埠映象配置

環境配置引數 1.pc1接在交換機e0 1埠,ip位址1.1.1.1 24 2.pc2接在交換機e0 2埠,ip位址2.2.2.2 24 3.e0 24為交換機上行埠 4.server接在交換機e0 8埠,該埠作為映象埠 組網需求 1.通過交換機埠映象的功能使用server對兩台pc的業務報文進行監...

交換機交換機

交換機。常常聽人說交換機 路由器。什麼是交換機?為什麼叫交換機?交換什麼?交換機是不是就是路由器?這二者有什麼區別?這是我的疑問。沒辦法,基礎沒打好。一 什麼是交換機 交換機是這麼一種裝置 將網路分成若干小段,以解決網路擁堵,降低出錯,提高傳輸效率。為什麼分成若干小段可以提高傳輸效率呢?這涉及到網路...

接入交換機,匯聚交換機,核心交換機

通常將網路中直接面向使用者連線或訪問網路的部分稱為接入層,將位於接入層和核心層之間的部分稱為分布層或匯聚層。接入交換機一般用於直接連線電腦,匯聚交換機一般用於樓宇間。匯聚相對於乙個區域性或重要的中轉站,核心相當於乙個出口或總彙總。原來定義的匯聚層的目的是為了減少核心的負擔,將本地資料交換機流量在本地...