導語
本文中,我們將介紹以下3部分服務:MicroK8s、k3s、Katacoda。MicroK8和k3定位在輕量級的Kubernetes環境中,不僅有望用於學習,而且還將用於各種環境,例如容量有限的IoT環境。Katacoda是一個免費的綜合學習站點,您可以在其中基於瀏覽器學習雲原生技術,不僅可以運行Kubernetes,還可以提供免費的學習課程。

MicroK8s
MicroK8s是一個輕量級的Kubernetes環境。與Minikube不同,它不需要VirtualBox,因此可以在虛擬服務器上運行。它是一個輕巧的單節點,並具有Istio,Knative和Kubeflow等全面功能,非常適合學習Kubernetes。
現在,讓我們使用Micro K8。轉到官方網站,然后單擊“入門”按鈕。

MicroK8s官網
在這里,選擇“ macOS”,然后單擊“為macOS下載Multipass”按鈕以下載安裝程序。

MicroK8s安裝環境
從控制台啟動multipass,然后輸入multipass。然后使用snap安裝microk8s。
$multipass launch --name microk8s-vm --mem 4G --disk 40G
Launched: microk8s-vm
$multipass shell microk8s-vm
Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-70-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Mon Nov 25 19:15:38 JST 2019
System load: 0.03 Processes: 103
Usage of /: 2.5% of 38.60GB Users logged in: 0
Memory usage: 3% IP address for enp0s2: 192.168.64.3
Swap usage: 0%
0 packages can be updated.
0 updates are security updates.
To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.
multipass@microk8s-vm:~$ sudo snap install microk8s --classic
2019-11-25T19:33:10+09:00 INFO Waiting for restart...
microk8s v1.16.3 from Canonical✓ installed
檢查MicroK8s的啟動狀態。
multipass@microk8s-vm:~$ sudo microk8s.status --wait-ready
mAicrok8s is running
addons:
cilium: disabled
dashboard: disabled
dns: disabled
fluentd: disabled
gpu: disabled
helm: disabled
ingress: disabled
istio: disabled
jaeger: disabled
juju: disabled
knative: disabled
kubeflow: disabled
linkerd: disabled
metrics-server: disabled
prometheus: disabled
rbac: disabled
registry: disabled
storage: disabled
啟動標准服務,安裝完成。
multipass@microk8s-vm:~$ sudo microk8s.enable dns dashboard registry
Enabling DNS
Applying manifest
serviceaccount/coredns created
configmap/coredns created
deployment.apps/coredns created
service/kube-dns created
clusterrole.rbac.authorization.k8s.io/coredns created
clusterrolebinding.rbac.authorization.k8s.io/coredns created
〜中略〜
Applying registry manifest
namespace/container-registry created
persistentvolumeclaim/registry-claim created
deployment.apps/registry created
service/registry created
The registry is enabled
就像Minikube一樣,嘗試kubectl。在下面,執行“獲取節點”和“獲取服務”。
要停止MicroK8,請運行“ microk8s.stop”。
multipass@microk8s-vm:~$ sudo microk8s.kubectl get nodes
NAME STATUS ROLES AGE VERSION
microk8s-vm Ready 4d19h v1.16.3
multipass@microk8s-vm:~$ sudo microk8s.kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.152.183.1 443/TCP 4d19h
multipass@microk8s-vm:~$ sudo microk8s.stop
Stopped.
k3s
k3s是一個輕量級的Kubernetes環境,是Kubernetes的官方發行版。由Rancher Labs開發,它以小於40MB的二進制文件形式提供。由於重量輕,它有望用於邊緣計算,物聯網和CI等應用。
V1.0於2019年11月18日發布,截至2020年4月15日,最新版本是v1.17.4 + k3s1。
請注意,支持的操作系統是Ubuntu或Raspbian Buster,在Mac上不起作用。

Rancher Labs官網
只需執行以下命令即可完成安裝,並且可以使用kubectl命令等。
$curl -sfL https://get.k3s.io | sh -
[INFO] Finding latest release
[INFO] Using v1.17.4+k3s1 as release
[INFO] Downloading hash https://github.com/rancher/k3s/releases/download/v1.17.4+k3s1/sha256sum-amd64.txt
[INFO] Downloading binary https://github.com/rancher/k3s/releases/download/v1.17.4+k3s1/k3s
[INFO] Verifying binary download
[INFO] Installing k3s to /usr/local/bin/k3s
[INFO] Creating /usr/local/bin/kubectl symlink to k3s
[INFO] Creating /usr/local/bin/crictl symlink to k3s
[INFO] Skipping /usr/local/bin/ctr symlink to k3s, command exists in PATH at /usr/bin/ctr
[INFO] Creating killall script /usr/local/bin/k3s-killall.sh
[INFO] Creating uninstall script /usr/local/bin/k3s-uninstall.sh
[INFO] env: Creating environment file /etc/systemd/system/k3s.service.env
[INFO] systemd: Creating service file /etc/systemd/system/k3s.service
[INFO] systemd: Enabling k3s unit
Created symlink /etc/systemd/system/multi-user.target.wants/k3s.service → /etc/systemd/system/k3s.service.
[INFO] systemd: Starting k3s
$ sudo kubectl get nodes
NAME STATUS ROLES AGE VERSION
ip-172-xx-xx-xx Ready master 112s v1.17.4+k3s1
Katacoda
Katacoda是一個針對Kubernetes,Docker和Tensorflow等雲原生技術的全面免費學習網站,您只能使用“與Kubernetes課堂一起玩”之類的瀏覽器進行學習。
對於沒有EKS或GKE等雲環境的用戶,或者不安裝Minikube等而立即嘗試的用戶,建議使用它。

例如,嘗試在“ Kubernetes簡介”中選擇“開始課程”。在“啟動單節點群集”課程中,您可以按照左側窗格中顯示的步驟並在右側窗格中鍵入命令來輕松進行。

Katacoda官網
這次我介紹了Micro K8s,k3,Katocada。Micro K8s和k3易於制造且重量輕。Katacoda的另一個優點是您可以僅使用瀏覽器立即開始學習。如果您想開始使用Kubernetes但障礙很大,請嘗試一下。