Centos7 安裝K8S 小記


借鑒博客地址:

https://blog.csdn.net/qq_35904833/article/details/78190257                 #有詳細的配置介紹

https://www.cnblogs.com/spll/p/10033316.html           

 

歷時半個月,安裝K8s從入門到放棄~~

參考各類博客總能發現新大陸,見識到各種報錯。千挑萬選中終於找到了一個靠譜的博客也成功的把K8S給安裝上了,so,必須來一個詳細的文檔~~~

K8S小白一枚,強大的功能有待探索,先將安裝的筆記奉上,走起!!

 

1.安裝准備

[root@k8s-matser]~# uname -a
Linux k8s-matser 4.4.245-1.el7.elrepo.x86_64 #1 SMP Fri Nov 20 09:39:52 EST 2020 x86_64 x86_64 x86_64 GNU/Linux

 

[root@k8s-matser]~# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

 

關於內存:

百度了一番大多數都是說需要2G及以上,為了安裝順利我給了>2G的內存。

 

 關閉防火牆和selinux:

[root@k8s-matser]~# systemctl stop firewalld

[root@k8s-matser]~# systemctl disable firewalld

[root@k8s-matser]~# setenforce 0

 

安裝epel-release源:

[root@k8s-matser]~# yum -y install epel-release

 

小結:准備工作是主,從節點都需要做的。筆記里面就只示范了master節點,在此就不贅述了。

         此外,環境也是很重要,估計不少人也和我一樣重復安裝,卸載的操作導致環境不純凈這也會影響到服務是否能安裝成功。

 

 

2.master節點的操作:

[root@k8s-matser]~# yum -y install etcd  kubernetes-master              #執行此命令會將master節點所需的服務都安裝上 

[root@k8s-matser]~# vim /etc/etcd/etcd.conf                                   #紅色字體行按照圖片內容修改即可

 

 

[root@k8s-matser]~# vim /etc/kubernetes/apiserver     

 

 

注意:

KUBE_API_PORT="--port=8080"              #默認端口,檢查8080端口是否被占用

KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"    

#這一行的配置中刪除了一個參數,原位置時倒數第二個

 

兩個配置文件修改完成后啟動服務並加入開機自啟:

[root@k8s-matser]~#systemctl start etcd
[root@k8s-matser]~#systemctl start kube-apiserver.service
[root@k8s-matser]~#systemctl start kube-controller-manager.service
[root@k8s-matser]~#systemctl start kube-scheduler.service

[root@k8s-matser]~#systemctl enable etcd
[root@k8s-matser]~#systemctl enable kube-apiserver.service
[root@k8s-matser]~#systemctl enable kube-controller-manager.service
[root@k8s-matser]~#systemctl enable kube-scheduler.service

 

簡單寫法:

[root@k8s-matser]~# for SERVICES in etcd  kube-apiserver  kube-controller-manager  kube-scheduler; do systemctl start $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES ; done

 

在etcd中定義flannel網絡:

[root@k8s-matser]~# etcdctl mk /atomic.io/network/config '{"Network":"172.17.0.0/16"}'

#執行此命令時有報錯檢查服務是否都啟動成功

 

3.node節點的操作【node節點上都要操作】

[root@k8s-node-1]~# yum -y install flannel kubernetes-node            #安裝node節點需要的服務

[root@k8s-node-1]# vim /etc/sysconfig/flanneld

 

 

[root@k8s-node-1]# vim /etc/kubernetes/config

 

 

 [root@k8s-node-1]# vim /etc/kubernetes/kubelet

 

 

啟動服務及加入開機自啟:

[root@k8s-node-1]~# systemctl start kube-proxy 

[root@k8s-node-1]~# systemctl start kubelet

[root@k8s-node-1]~# systemctl start docker

[root@k8s-node-1]~# systemctl start flanneld

 

[root@k8s-node-1]~# systemctl enable kube-proxy 

[root@k8s-node-1]~# systemctl enable kubelet

[root@k8s-node-1]~# systemctl enable docker

[root@k8s-node-1]~# systemctl enable flanneld

 

簡單方法:

[root@k8s-node-1]~# for SERVICES in kube-proxy kubelet docker flanneld;do systemctl restart $SERVICES;systemctl enable $SERVICES;systemctl status $SERVICES; done

 

至此,K8S的master節點和node節點都安裝好了。

 

最后,主節點獲取從節點的信息。獲取到即表示K8S安裝成功。

[root@k8s-matser]~# kubectl get nodes

 

 

 

 

 

 
        

 

 

 

 
        

 

 

 

   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM