K3s - 輕量級(jí) Kubernetes

2022-08-16 14:51 更新

什么是 K3s?

K3s 是一個(gè)輕量級(jí)的 Kubernetes 發(fā)行版,它針對(duì)邊緣計(jì)算、物聯(lián)網(wǎng)等場(chǎng)景進(jìn)行了高度優(yōu)化。K3s 有以下增強(qiáng)功能:

  • 打包為單個(gè)二進(jìn)制文件。
  • 使用基于 sqlite3 的輕量級(jí)存儲(chǔ)后端作為默認(rèn)存儲(chǔ)機(jī)制。同時(shí)支持使用 etcd3、MySQL 和 PostgreSQL 作為存儲(chǔ)機(jī)制。
  • 封裝在簡(jiǎn)單的啟動(dòng)程序中,通過(guò)該啟動(dòng)程序處理很多復(fù)雜的 TLS 和選項(xiàng)。
  • 默認(rèn)情況下是安全的,對(duì)輕量級(jí)環(huán)境有合理的默認(rèn)值。
  • 添加了簡(jiǎn)單但功能強(qiáng)大的?batteries-included?功能,例如:本地存儲(chǔ)提供程序,服務(wù)負(fù)載均衡器,Helm controller 和 Traefik Ingress controller。
  • 所有 Kubernetes control-plane 組件的操作都封裝在單個(gè)二進(jìn)制文件和進(jìn)程中,使 K3s 具有自動(dòng)化和管理包括證書(shū)分發(fā)在內(nèi)的復(fù)雜集群操作的能力。
  • 最大程度減輕了外部依賴性,K3s 僅需要 kernel 和 cgroup 掛載。 K3s 軟件包需要的依賴項(xiàng)包括:
    • containerd
    • Flannel
    • CoreDNS
    • CNI
    • 主機(jī)實(shí)用程序(iptables、socat 等)
    • Ingress controller(Traefik)
    • 嵌入式服務(wù)負(fù)載均衡器(service load balancer)
    • 嵌入式網(wǎng)絡(luò)策略控制器(network policy controller)

為什么叫 K3s?

我們希望安裝的 Kubernetes 在內(nèi)存占用方面只是一半的大小。Kubernetes 是一個(gè) 10 個(gè)字母的單詞,簡(jiǎn)寫(xiě)為 K8s。所以,有 Kubernetes 一半大的東西就是一個(gè) 5 個(gè)字母的單詞,簡(jiǎn)寫(xiě)為 K3s。K3s 沒(méi)有全稱,也沒(méi)有官方的發(fā)音。

適用場(chǎng)景

K3s 適用于以下場(chǎng)景:

  • 邊緣計(jì)算-Edge
  • 物聯(lián)網(wǎng)-IoT
  • CI
  • Development
  • ARM
  • 嵌入 K8s

由于運(yùn)行 K3s 所需的資源相對(duì)較少,所以 K3s 也適用于開(kāi)發(fā)和測(cè)試場(chǎng)景。在這些場(chǎng)景中,如果開(kāi)發(fā)或測(cè)試人員需要對(duì)某些功能進(jìn)行驗(yàn)證,或?qū)δ承﹩?wèn)題進(jìn)行重現(xiàn),那么使用 K3s 不僅能夠縮短啟動(dòng)集群的時(shí)間,還能夠減少集群需要消耗的資源。與此同時(shí),Rancher 中國(guó)團(tuán)隊(duì)推出了一款針對(duì) K3s 的效率提升工具:AutoK3s。只需要輸入一行命令,即可快速創(chuàng)建 K3s 集群并添加指定數(shù)量的 master 節(jié)點(diǎn)和 worker 節(jié)點(diǎn)。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)