欠你們的 → k8s 叢集搭建,除夕奉上!

2023-01-21 15:00:21

開心一刻

  有一天,qq收到一個好友申請,驗證訊息上寫的是:哥哥加我,我是妹妹

  我以為是性騷擾,就沒加,直接回了一句:我喜歡少婦

  過了一會兒,姑姑就給我打了個電話:你妹妹qq加你,你怎麼不同意,她想問你幾道數學題,你說你喜歡少婦

  我:姑姑,你聽我狡辯一下......

  祝大家除夕快樂!

節點準備

  基於 CentOS7 準備 3 個節點: master:192.168.0.100 、 node1:192.168.0.101 、 192.168.0.102 

   VirtualBox 搭建虛擬機器器的過程就不演示了,具體可參考如下兩篇

    virtualBox安裝centos,並搭建tomcat

    VirtualBox 下 CentOS7 靜態 IP 的設定 → 多次踩坑總結,蚌埠住了!

  搭建好之後 IP 分配如下

  安裝&啟動 Docker

  檢視 Docker 版本

  設定加速

  因為有 一面牆 ,國記憶體取國外資源速度太慢,很有可能下載資源失敗,需要設定國內映象地址

  其中 xxxx 需要改成你們自己的

  注意,是每個節點都需要設定 Docker ,而非某個節點

K8S叢集搭建

  基礎環境

  所有節點都需要進行如下設定

  在建立虛擬機器器的時候,樓主已經把 hostname 設定好了,如果你們沒設定,可以通過如下指令進行域名設定

  安裝kubelet、kubeadm、kubectl

  每個節點都需要進行安裝

  kubeadm引導叢集

  每個節點下載映象

  初始化主節點

  每個節點新增 master 域名對映

  只在 master 節點執行如下命令進行初始化

  當出現如下資訊,則說明初始化成功

  如上資訊中提到了幾個點

    1、如果是常規使用者,需要在主節點執行

      如果是 root 使用者,則在主節點執行

      我們在主節點執行常規使用者的命令

    2、需要部署網路元件

    3、其他節點執行如下命令,作為 master 節點加入到叢集中

    4、其他節點執行如下命令,作為 worker 節點加入到叢集中

  部署網路元件

  我們採用 calico 作為網路元件,在 master 執行如下命令

  我們看下叢集狀態

  目前只有一個主節點,再看下 pods 狀態

  都在執行中,狀態都正常

  Worker 節點加入叢集

  在 k8snode1 、 k8snode2 節點執行

  在 master 節點檢視叢集節點狀態: kubectl get nodes 

  再看下 pods 狀態

總結

  1、 Docker  版本和 k8s 的版本最好對應上,否則容易出問題

  2、 k8s 網路有點複雜,感興趣的可以仔細研究下

參考

  雲原生實戰

  雲原生Java架構師的第一課K8s+Docker+KubeSphere+DevOps