Kubernetes(k8s)安裝

Kubernetes 是用于自動部署、擴展和管理容器化應(yīng)用程序的開源系統(tǒng)。它旨在提供『跨主機集群的自動部署、擴展以及運行應(yīng)用程序容器的平臺』。它支持一系列容器工具,包括Docker等。- https://zh.wikipedia.org/wiki/Kubernetes

在這篇文章中,我會介紹下如何在Ubuntu上安裝Kubernetes。

安裝Docker

使用命令安裝:

sudo apt install docker.io

查看安裝結(jié)果:

docker --version

Docker version 18.09.7, build 2d0083d

啟動Docker服務(wù):

sudo systemctl enable docker

安裝Kubernetes

先要確認是否安裝了curl,如果沒有安裝,運行命令安裝:

sudo apt install curl

添加google的apt包依賴:

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"

安裝Kubernetes基礎(chǔ)軟件:

sudo apt install kubeadm kubectl kubelet

kubeadm是一個工具,通過執(zhí)行必要的操作來啟動和運行一個最小可用的集群。它被故意設(shè)計為只關(guān)心啟動集群,而不是節(jié)點準備工作,使用kubeadm做為所有部署的基礎(chǔ)將會使得創(chuàng)建一個符合期望的集群變得更容易。
kubectl是命令行工具,可以用來操控Kubernetes集群。
kubelet是在每個節(jié)點上運行的主要"節(jié)點代理",kubelet以PodSpec為單位來運行任務(wù),PodSpec是一個描述pod的YAML或JSON對象

啟動Kubernetes

首先要關(guān)閉內(nèi)存交換系統(tǒng),因為Kubernetes在使用內(nèi)存交換系統(tǒng)上無法正常執(zhí)行:

sudo swapoff -a

設(shè)置Kubernetes的域名,這里設(shè)置為master-node:

sudo hostnamectl set-hostname master-node

設(shè)置從節(jié)點的命令為:hostnamectl set-hostname slave-node
初始化主節(jié)點并設(shè)置IP地址:

sudo kubeadm init --pod-network-cidr=10.244.0.0/16

初始化成功后會提醒我們做兩件事情,第一創(chuàng)建用戶相關(guān)信息:

 mkdir -p $HOME/.kube
 sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
 sudo chown $(id -u):$(id -g) $HOME/.kube/config

如果不按照上面的進行操作就會出現(xiàn)錯誤:

nable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")

第二其它節(jié)點如何加入集群:

kubeadm join ip:6443 --token 83zs28******u73b1 \
    --discovery-token-ca-cert-hash sha256:9a0b682***********0a1039dec66ff7dd3eb1061af4f90e7923ae1932b

安裝結(jié)果

安裝完成之后可以通過命令查看:

kubectl get pods --all-namespaces

可以看到運行結(jié)果:

NAMESPACE     NAME                                  READY   STATUS    RESTARTS   AGE
kube-system   coredns-5644d7b6d9-8wv9c              0/1     Pending   0          9m32s
kube-system   coredns-5644d7b6d9-vfd5w              0/1     Pending   0          9m32s
kube-system   etcd-master-node                      1/1     Running   0          8m30s
kube-system   kube-apiserver-master-node            1/1     Running   0          8m41s
kube-system   kube-controller-manager-master-node   1/1     Running   0          8m23s
kube-system   kube-proxy-dmvw7                      1/1     Running   0          9m32s
kube-system   kube-scheduler-master-node            1/1     Running   0          8m43s

下一篇將會介紹如何安裝Kubernetes dashboard(Web UI)。

引用

https://kubernetes.io/zh/
https://zh.wikipedia.org/wiki/Kubernetes
https://vitux.com/install-and-deploy-kubernetes-on-ubuntu/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容