《蹲坑學kubernetes》之四:了解Kubernetes安裝部署方式

2021-01-08 DoDo在線

這一章節主要了解Kubernetes的安裝方式。在實際的應用中也會有不同的選擇,那麼你會選擇哪種方式部署Kubernetes呢?

圖1:Kubernetes之Log

本節內容提綱:

安裝Minikube使用kubeadm方式安裝k8s二進位方式部署在實際應用中,針對Kubernetes的不同應用目的,選擇安裝部署的方式也不一樣。常見的安裝部署方式有很多,在這裡主要了解以下三種:

一、安裝 Minikube

Minikube是由Kubernetes社區維護的單機版的Kubernetes集群,支持MacOS, Linux, and Windows等多種作業系統平臺,使用最新的官方stable版本,並支持Kubernetes的大部分功能,從基礎的容器編排管理,到高級特性如負載均衡、Ingress,權限控制等。非常適合作為Kubernetes入門,或開發測試環境使用。

圖2:Minikube安裝部署

二、使用Kubeadm安裝部署Kubernetes群集

Kubeadm工具的出發點很簡單:就是把大部分組件都容器化,並通過StaticPod方式運行,大大簡化了集群的配置及認證等工作,就是儘可能簡單的部署一個生產可用的Kubernetes集群。Kubeadm部署實際要安裝的組件有Kubeadm、Kubelet、Kubectl三個。Kubeadm部署Kubernetes集群的基本步驟如下:

第一步:安裝組件

# yum -y install kubelet kubeadm kubectl

第二步:初始化群集

# kubeadm init

第三步:將節點加入群集

# kubeadm join

上面說的是Kubeadm部署方式的一般步驟,實際上,Kubeadm部署是可以自由定製的,包括要容器化組件、鏡像、Etcd、網絡插件、證書認證以及集群的配置等等,都是可以靈活定製的,這也是Kubeadm能夠快速部署一個高可用的集群的基礎。一般初學者,使用Kubeadm能夠快速搭建Kubernetes集群環境,後續會有詳細的學習。

三、二進位方式部署Kubernetes群集

使用Kubernetes二進位軟體包,手動安裝部署,讓Kubernetes的相關組件運行起來。這包括master節點上的四個組件(Apiserver、Schedule、Controller-manager和Etcd),以及node節點上的三個組件(Docker、Kublet和Kube-proxy)(如下圖所示),都運行為系統守護進程,二進位安裝部署過程繁瑣而複雜。

圖3:Kubernetes架構圖

二進位安裝部署對學習Kubernetes非常有幫助,能夠系統的幫助你了解集群的證書、組件以及組件工作原理等。後面我們將重點採用二進位方式,詳細學習部署Kubernetes群集。

下一下章節,我們學習Kubernetes群集部署,敬請期待!

相關焦點

  • 《蹲坑學kubernetes》之二:Kubernetes架構概述
    本節內容提綱: Kubernetes架構 Kubernetes組成一、Kubernetes架構Kubernetes是一個用於容器集群的自動化部署、擴容以及運維的開源平臺,把這些計算機群集連接在一起,可作為單個單元工作,也可邏輯的形成一個整體。
  • 《蹲坑學Kubernetes》之:kubeadm部署Kubernetes-v1.18.6群集
    Kubeadm:v1.18.6注意:在k8-smaster、k8s-node-1和k8s-node-2中安裝Kubeadm。] vim /etc/yum.repos.d/kubernetes.repo[kubernetes]name=Kubernetesbaseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64enabled=1gpgcheck=0 [root@k8s-master ~] yum clean all[
  • 《蹲坑學Kubernetes》之17-13:Secret
    《蹲坑學Kubernetes》之17-13:SecretSecret 解決了密碼、token、密鑰等敏感數據的配置問題,而不需要把這些敏感數據暴露到鏡像或者Pod Spec中。Secret可以以Volume或者環境變量的方式使用。
  • 《蹲坑學kubernetes》之19-2:部署Flannel
    一、安裝部署flannel網絡/ssl/ca.pem  --cert-file=/usr/local/kubernetes/ssl/etcd.pem --key-file=/usr/local/kubernetes/ssl/etcd-key.pem  --endpoints=&34;  set /coreos.com/network/config &34;Network&34;10.244.0.0/
  • 《蹲坑學kubernetes》之七:籤發CA證書
    本節提綱:了解kubernetes的證書服務創建CA證書圖1:kubernetes之Log一、了解kubernetes的證書服務1、獲取證書的方式: 第三方機構證書:付費購買CA機構頒發的證書,具有真實性校驗; 自籤發正式:自己生成的ssl證書不受瀏覽器信任
  • 《蹲坑學kubernetes》之17-14:ServerAccount
    《蹲坑學kubernetes》之17-14:ServerAccount API Server作為Kubernetes網關,是訪問和管理資源對象的唯一入口,其各種集群組件訪問資源都需要經過網關才能進行正常訪問和管理。
  • 《蹲坑學kubernetes》之17-14:ServerAccount
    《蹲坑學kubernetes》之17-14:ServerAccountAPI Server作為Kubernetes網關,是訪問和管理資源對象的唯一入口,其各種集群組件訪問資源都需要經過網關才能進行正常訪問和管理。
  • 《蹲坑學kubernetes》之十九:網絡
    本章節內容主要了解學習Kubernetes網絡,有了網絡才能實現資源訪問。主要從以下幾個方面學習。一、kubernetes網絡模型在Kubernetes網絡中存在兩種IP(Pod IP和Service Cluster IP),Pod IP 地址是實際存在於某個網卡(可以是虛擬設備)上的,Service Cluster IP它是一個虛擬IP,是由kube-proxy使用Iptables規則重新定向到其本地埠,再均衡到後端Pod的。
  • 《蹲坑學Kubernetes》之17-10:Service
    Kubernetes 在設計之初就充分考慮了針對容器的服務發現與負載均衡機制,提供了Service資源,並通過kube-proxy 配合 cloud provider 來適應不同的應用場景。隨著 kubernetes 用戶的激增,用戶場景的不斷豐富,又產生了一些新的負載均衡機制。
  • 如何部署一個Kubernetes集群
    原文連結:https://mp.weixin.qq.com/s/MFSvDWtue4YruFV3jyLQVw在本篇文章中我將以在Mac筆記本中安裝兩臺Ubantu系統的方式,演示如何部署一套具備一個控制節點
  • 《蹲坑學K8S》之22-1:Kubernetes認證機制
    Kubernetes支持以下認證插件:(1)X509 證書(2)靜態 Token 文件(3)引導 Token(4)靜態密碼文件(5)Service Account(6)OpenID(7)Webhook(8)認證代理(9)OpenStack Keystone 密碼在這裡主要了解以下幾種認證
  • 《蹲坑學kubernetes》之17-12:Ingress
    ingress-nginx(3)ingress-gce2、常見的暴露service的方式[root@k8s-master ~] kubectl get svc(二)部署nginx-ingress-controller1、下載鏡像[root@k8s-node-2 ~] git clone https://github.com/kubernetes/ingress-nginx/tree/nginx-0.30.0
  • 《蹲坑學kubernetes》之17-19:ConfigMap
    這種方式不僅可以實現應用程式被的復用,而且還可以通過不同的配置實現更靈活的功能。在創建容器時,用戶可以將應用程式打包為容器鏡像後,通過環境變量或者外接掛載文件的方式進行配置注入。四、kubernetes集群中Secret與ConfigMap區別:Secret主要是用來解決密碼、token、密鑰等敏感數據的配置問題,它有三種類型:Service Account :用來訪問Kubernetes API,由Kubernetes自動創建,並且會自動掛載到Pod的/run/secrets
  • 一起學習Kubernetes-01-helm安裝
    Helm是一個kubernetes應用的包管理工具,用來管理預先配置好的安裝包資源。Helm chart是用來封裝kubernetes原生應用程式的yaml文件,可以在你部署應用的時候自定義應用程式的一些metadata,便與應用程式的分發。是一個命令行下的客戶端工具。
  • 在 Kubernetes 上部署 Vault
    ,所以安裝是很方便的,接下來重點看下如何使用。開啟 Kubernetes 認證方式:/ $ vault auth enable kubernetesSuccess! Enabled kubernetes auth method at: kubernetes/Vault 會接受來自於 Kubernetes 集群中的任何客戶端的服務 Token。
  • 在kubernetes上部署consul集群
    作者:歐陽廣陌 來源:kubernetes中文社區原文連結: https://www.kubernetes.org.cn/4435.html本教程將幫助你在kubernetes上部署一個擁有
  • Kubernetes集群之路(二)etcd集群部署
    因此接下來我們安裝部署etcd集群。因為flannel插件也依賴於etcd存儲信息,所以我們首先需要安裝etcd集群,使之實現高可用。我們採用純二進位安裝etcd,因此不使用默認的包管理器中的安裝文件。
  • kubernetes簡介與安裝
    kubernetes,簡稱K8S,為什麼是K8S,因為K和S之間有8個字母所有叫k8s。是一種開源的自動化容器運維平臺,它消除了容器化應用程式在部署、伸縮時涉及到的許多手動操作。k8s鏡像源使用yum安裝
  • 國內快速部署kubernetes集群的最佳實踐(二)——安裝指定版本
    在上一篇文章中(),已經說明了如何使用kubeadm安裝最新穩定版k8s本文探討如何在上一篇教程的基礎上,修改一些步驟,實現安裝指定版本的k8s,並在這裡提供兩個示例:安裝k8s v1.16和k8s v1.14。
  • Kubeadm部署Kubernetes-v1.19.0群集
    Kubeadm:v1.19.0注意:在k8-smaster、k8s-node-1和k8s-node-2中安裝Kubeadm。] vim /etc/yum.repos.d/kubernetes.repo[kubernetes]name=Kubernetesbaseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64enabled=1gpgcheck=0[root@k8s-master ~] yum clean all[root@k8s-master