k8s 搭建方式有多種,如果你是內網環境,希望占用伺服器資源少或是邊緣系統(如arm系統),強烈推薦您使用 k3s進行安裝基本就是k8s的架構 k3s server節點對應k8smaster節點, agent節點對應worker節點
伺服器環境:
本次集群沒有對master節點做高可用,主要是快速體驗k8s集群環境
本次採用docker作為k3s的容器
k3s預設使用container,兩者命令對比表:
idcontainerd 命令
docker 命令備註1
ctr image ls
docker images
獲取image資訊
2ctr image pull nginx
docker pull nginx
pull 乙個nginx的image
3ctr image tag nginx nginx-test
docker tag nginx nginx-test
tag 乙個nginx的image
4ctr image push nginx-test
docker push nginx-test
push nginx-test的image
5ctr image pull nginx
docker pull nginx
pull 乙個nginx的image
6ctr image import nginx.tar
docker load匯入本地映象ctr不支援壓縮
7ctr run -d --env 111 nginx-test nginx
docker run -d --name=nginx nginx-test
執行的乙個容器
8ctr task ls
docker ps
檢視執行的容器
docker、containerd的關係
從k8s的角度看,可以選擇 containerd 或 docker 作為執行時元件:containerd 呼叫鏈更短,元件更少,更穩定,占用節點資源更少
需要開發的埠
k3s server節點的入站規則:
協議埠源描述
tcp6443
k3s agent 節點
kubernetes api server
udp8472
k3s server 和 agent 節點
僅對 flannel vxlan 需要
tcp10250
k3s server 和 agent 節點
kubelet metrics
通常情況下,所有出站流量都是允許的。
內網位址
主機名稱
172.20.167.19
k8s-master
172.20.167.20
k8s-node1
172.20.167.21
k8s-node2
在每一台ecs 下新增hosts資訊:
cat
>> /etc/hosts <<
eof172.20.167.19 k8s-master
172.20.167.20 k8s-node1
172.20.167.21 k8s-node2
eof
如果需要內網離線安裝,可採用二進位制方式安裝:
如果可聯網,可以採用官網提供方式安裝:
curl -sfl | install_k3s_mirror=cn sh -s - server --docker
cat /var/lib/rancher/k3s/server/node-token
在 master節點主機上檢視 /var/lib/rancher/k3s/server/node-token的值即為 k3s_token 的值
https://k8s-master:6443 連線master主機
在master上通過命令 kubectl get node檢視集群節點
[root@k8s-master ~]
# kubectl get node
name status roles age version
k8s-master ready control-plane,master 14h v1.20.0+k3s2
k8s-node2 ready 13h v1.20.0+k3s2
k8s-node1 ready 13h v1.20.0+k3s2
[root@k8s-master ~]
#
下面的文章可以部署成功,簡單方便:
如果按照k3s官網的介紹的方式,則需要做如下工作:
raw.githubusercontent.com 無法訪問,需在 hosts檔案中新增ip對映:
199.232.96.133 raw.githubusercontent.com
K8s集群環境搭建 K8s安裝(2)
k8s集群環境搭建 基礎環境配置 1 k8s集群環境搭建 k8s安裝 2 k8s集群環境搭建 安裝keepalived和haproxy 3 k8s集群環境搭建 k8s集群初始化 4 k8s集群環境搭建 安裝metrics和dashboard 5 一 安裝docker 所有節點 檢視docker版本有...
k8s搭建集群
k8s由兩種型別資源組成 分別是 master 和 nodes k8s的集群部署方式有三種 1.kubeadm 2.minikube 3.二進位製包 前兩種為自動部署,簡化操作。說一說手動部署的 二進位製包 k8s集群部署步驟 1.關閉防火牆 firewall cmd state systenctl...
K8s 集群搭建
目前生產部署 kubernetes 集群主要有兩種方式 kubeadm 與 二進位製包 一 kubeadm 概念 kubeadm 是乙個 k8s 部署工具,提供 kubeadm init 和 kubeadm join,用於快速部署 kubernetes 集群。官網 二 二進位製包 總之 kubead...