RISC-V公測(cè)平臺(tái)發(fā)布 · 如何在SG2042上玩轉(zhuǎn)k3s
前言
Kubernetes是一個(gè)開(kāi)源的容器管理平臺(tái),通過(guò)Kubernetes的跨集群管理功能,用戶可以方便地進(jìn)行應(yīng)用程序的復(fù)制、遷移和跨云平臺(tái)的部署。
而k3s作為Kubernetes的輕量級(jí)發(fā)行版,相比傳統(tǒng)的Kubernetes具有更小的二進(jìn)制文件大小和更低的資源消耗。
使用 K3s 不僅能夠縮短啟動(dòng)集群的時(shí)間,還能夠減少集群需要消耗的資源。是RISC-V軟件生態(tài)中不可或缺的一部分。
接下來(lái)就將教大家如何在SG2042上玩轉(zhuǎn)k3s。
一、本次實(shí)驗(yàn)材料
1. 一臺(tái)SG2042服務(wù)器
2. 已經(jīng)預(yù)先編譯好的k3s
已預(yù)先編譯的k3s二進(jìn)制文件下載
https://github.com/CARV-ICS-FORTH/k3s/releases
二、實(shí)驗(yàn)過(guò)程
1. 下載、運(yùn)行k3s
首先我們下載預(yù)先編譯好的k3s包:

由于預(yù)編譯好的k3s包已被分為三個(gè)文件,因此需要將三個(gè)文件合并為一個(gè)文件

解壓,并給k3s-risCV64文件添加運(yùn)行權(quán)限:

測(cè)試該文件是否能運(yùn)行,如果出現(xiàn)說(shuō)明,那就說(shuō)明成功運(yùn)行。

將k3s-risCV64文件復(fù)制到/usr/local/bin/下,并更名為k3s

注意:不要忘記加上sudo,否則會(huì)提示沒(méi)有權(quán)限。
再次測(cè)試,看看k3s是否能運(yùn)行:

2. 下載、運(yùn)行k3s安裝腳本
當(dāng)然只有k3s二進(jìn)制文件是不夠的,因此我們還需要使用安裝腳本以獲得完整的k3s體驗(yàn)。
下載k3s安裝腳本:
curl -sfL
https://get.k3s.io > k3s-install.sh

運(yùn)行該腳本:
注意,如果直接./k3s-install.sh,會(huì)提示不支持的架構(gòu),因此需要把前面的參數(shù)帶上。
查看狀態(tài),如提示active那就說(shuō)明k3s正在運(yùn)行:

3.運(yùn)行k3s容器
新建hello-sg2042.yaml打開(kāi)并往里面復(fù)制以下內(nèi)容:
改自:
https://raw.githubusercontent.com/CARV-ICS-FORTH/kubernetes-risCV64/main/examples/hello-kubernetes.yaml
保存退出后使用該模板啟動(dòng)一個(gè)新的容器:
注意:不要忘記sudo,不然就會(huì)提示沒(méi)有權(quán)限!

查看pods情況:

(如果看到pod還沒(méi)顯示ip地址,你可以耐心等一會(huì),直到顯示pod的ip地址)
使用curl拉取網(wǎng)頁(yè),如果拉取到網(wǎng)頁(yè),那就說(shuō)明k3s容器運(yùn)行成功:

4.開(kāi)放外部計(jì)算機(jī)訪問(wèn)
雖然本機(jī)可以通過(guò)curl訪問(wèn),但是外部計(jì)算機(jī)訪問(wèn)不了,那如何讓外部計(jì)算機(jī)訪問(wèn)該網(wǎng)頁(yè)呢?
這就需要修改hello-sg2042.yaml中的內(nèi)容了,用編輯器打開(kāi)hello-sg2042.yaml,然后按照以下內(nèi)容修改:
注意:nodePort可以自行修改你想要的,但是只能在30000-32767里選一個(gè)。
在瀏覽器中訪問(wèn)http://175.8.161.253:30080(如果用的是你自己的端口號(hào),請(qǐng)將30080改成你當(dāng)時(shí)設(shè)置的nodePort)即可。

三、實(shí)驗(yàn)總結(jié):
得益于社區(qū)的幫助,k3s已經(jīng)可以運(yùn)行在sg2042平臺(tái)上,但是由于該Fork并未并入k3s官方代碼,因此k3s目前未正式支持risCV64。
參考資料:
kubernetes-risCV64下的運(yùn)行指南
https://github.com/CARV-ICS-FORTH/kubernetes-risCV64#running
正文完

《RISC-V公測(cè)平臺(tái)發(fā)布》系列文章會(huì)持續(xù)跟大家分享澎峰RISC-V生態(tài)圈的開(kāi)發(fā)者朋友們?cè)赗ISC-V平臺(tái)的移植測(cè)試成果,目前已發(fā)布:
1.?RISC-V公測(cè)平臺(tái)發(fā)布 · Stream帶寬完整測(cè)試
2.?RISC-V公測(cè)平臺(tái)發(fā)布 · 我的世界MohistMC
3.?RISC-V公測(cè)平臺(tái)發(fā)布 · 第一個(gè)WEB Server“Hello RISC-V world!”
4.?RISC-V公測(cè)平臺(tái)發(fā)布 · 如何在SG2042上玩轉(zhuǎn)k3s(本篇)
未來(lái)計(jì)劃發(fā)布:
1.?RISC-V公測(cè)平臺(tái)發(fā)布 · 第一個(gè)BLOG Server"RISC-V成長(zhǎng)日記”