k8s(Kubernetes)快速部署捷徑(4)-Kubernetes 安裝及部署

【目錄】
(1)k8s快速介紹
(2)硬件虛擬機環(huán)境Ubuntu18.10-server安裝
(3)Docker-CE安裝及配置
(4)Kubernetes 安裝及部署
(5)創(chuàng)建企業(yè)Kubernetes多主機集群環(huán)境
(6)Kubernetes集群mysql應用實例
(7)Kubernetes集群tomcat應用集群實例
(8)Kubernetes集群beego新聞發(fā)布web系統(tǒng)集群實例
【資源下載】
完整教程markdown下載 提取碼: 92hy
kubernetes(k8s)2小時快速部署教程視頻 提取碼:dk4i
kubernetes-Master-Node虛擬機完整鏡像文件 提取碼: 2wf8
課程相關其他相關安裝包及鏡像 提取碼: nkfj


四、Kubernetes 安裝及部署

4.1 k8s安裝環(huán)境準備

4.1.1 配置并安裝k8s國內源

  1. 創(chuàng)建配置文件sudo touch /etc/apt/sources.list.d/kubernetes.list

  2. 添加寫權限

    itcast@master:~$ sudo chmod 666 /etc/apt/sources.list.d/kubernetes.list 
    

    再添加,內容如下:

    deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main
    
  1. 執(zhí)行sudo apt update 更新操作系統(tǒng)源,開始會遇見如下錯誤
tcast@master:~$ sudo apt update
Get:1 http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial InRelease [8,993 B]
Err:1 http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial InRelease    
  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6A030B21BA07F4FB
Hit:2 http://mirrors.aliyun.com/ubuntu cosmic InRelease                        
Hit:3 http://mirrors.aliyun.com/ubuntu cosmic-updates InRelease                
Hit:4 http://mirrors.aliyun.com/ubuntu cosmic-backports InRelease              
Hit:5 http://mirrors.aliyun.com/ubuntu cosmic-security InRelease               
Err:6 https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu cosmic InRelease      
  Could not wait for server fd - select (11: Resource temporarily unavailable) [IP: 202.141.176.110 443]
Reading package lists... Done                          
W: GPG error: http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6A030B21BA07F4FB
E: The repository 'http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

其中:

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6A030B21BA07F4FB

簽名認證失敗,需要重新生成。記住上面的NO_PUBKEY 6A030B21BA07F4FB

  1. 添加認證key

    運行如下命令,添加錯誤中對應的key(錯誤中NO_PUBKEY后面的key的后8位)

    gpg --keyserver keyserver.ubuntu.com --recv-keys BA07F4FB
    

    接著運行如下命令,確認看到OK,說明成功,之后進行安裝:

    gpg --export --armor BA07F4FB | sudo apt-key add -
    
  2. 再次重新sudo apt update更新系統(tǒng)下載源數據列表

itcast@master:~$ sudo apt update
Hit:1 https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu cosmic InRelease                  
Hit:2 http://mirrors.aliyun.com/ubuntu cosmic InRelease                                    
Hit:3 http://mirrors.aliyun.com/ubuntu cosmic-updates InRelease                            
Hit:4 http://mirrors.aliyun.com/ubuntu cosmic-backports InRelease                          
Hit:5 http://mirrors.aliyun.com/ubuntu cosmic-security InRelease                           
Get:6 http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial InRelease [8,993 B]      
Ign:7 http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial/main amd64 Packages
Get:7 http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial/main amd64 Packages [26.6 kB]
Fetched 26.6 kB in 42s (635 B/s)    
Reading package lists... Done
Building dependency tree       
Reading state information... Done
165 packages can be upgraded. Run 'apt list --upgradable' to see them.

以上沒有報和錯誤異常,表示成功。

4.1.2 禁止基礎設施

  1. 禁止防火墻

    $ sudo ufw disable
    Firewall stopped and disabled on system startup
    
  2. 關閉swap

    # 成功
    $ sudo swapoff -a 
    # 永久關閉swap分區(qū)
    $ sudo sed -i 's/.*swap.*/#&/' /etc/fstab
    
  3. 禁止selinux

# 安裝操控selinux的命令
$ sudo apt install -y selinux-utils
# 禁止selinux
$ setenforce 0
# 重啟操作系統(tǒng)
$ shutdown -r now
# 查看selinux是否已經關閉
$ sudo getenforce
Disabled(表示已經關閉)

4.2 k8s系統(tǒng)網絡配置

(1) 配置內核參數,將橋接的IPv4流量傳遞到iptables的鏈

創(chuàng)建/etc/sysctl.d/k8s.conf文件

添加內容如下:

net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
vm.swappiness = 0

(2) 執(zhí)行命令使修改生效

# 【候選】建議執(zhí)行下面的命令
$ sudo modprobe br_netfilter
$ sudo sysctl -p /etc/sysctl.d/k8s.conf

4.3 安裝k8s

注意: 切換到root用戶 $ su

  1. 安裝Kubernetes 目前安裝版本 v1.13.1

    $ apt update && apt-get install -y kubelet=1.13.1-00 kubernetes-cni=0.6.0-00 kubeadm=1.13.1-00 kubectl=1.13.1-00
    
  1. 設置為開機重啟

    $ sudo systemctl enable kubelet && systemctl start kubelet
    $ sudo shutdown -r now
    

4.4 驗證k8s

  1. 使用root用戶登錄Master主機

  2. 執(zhí)行如下個命令

    kubectl get nodes 
    

輸出如下

   $ kubectl get nodes
   The connection to the server localhost:8080 was refused - did you specify the right host or port?
  1. 查看當前k8s版本

    $ kubectl version
    
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.1", GitCommit:"eec55b9ba98609a46fee712359c7b5b365bdd920", GitTreeState:"clean", BuildDate:"2018-12-13T10:39:04Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
The connection to the server localhost:8080 was refused - did you specify the right host or port?

關于作者:

作者:Aceld(劉丹冰)

簡書號:IT無崖子

mail: danbing.at@gmail.com

github: https://github.com/aceld

原創(chuàng)書籍gitbook: http://legacy.gitbook.com/@aceld

原創(chuàng)聲明:未經作者允許請勿轉載, 如果轉載請注明出處

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

相關閱讀更多精彩內容

友情鏈接更多精彩內容