Kubernetes(k8s)完整安裝教程

Kubernetes(k8s)完整安裝教程


(阿里雲雙11優惠價,最低86元/年)node

本文是一篇手把手指導的Kubernetes安裝和運行教程,經過本文,您能夠在Windows、Linux或MacOS系統中打造一個完整的本地Kubernetes集羣環境。linux

咱們會用下面的工具來運行本地的Kubernetes集羣:git

  • Docker for Mac
  • Minikube
  • virtualbox
  • kubectl

1 安裝

若是您的系統是Mac,請提早安裝 Homebrew 包管理工具及其Cask 擴展,Cask擴展安裝方式:brew tap caskroom/caskgithub

1.1 安裝 Docker

Docker 是容器的建立、管理和運行工具。咱們會在Kubernetes的Pod中構建docker容器。sql

如下是各個系統安裝Docker的方式:docker

1.2 安裝 VirtualBox

VirtualBox 是一個虛擬機工具,可讓咱們在一種系統中安裝其餘的操做系統,好比在Windows中安裝Linux,或者Mac中安裝Windows。ubuntu

Ubuntu/Debian系統安裝方式:windows

~ sudo apt-get install virtualbox

CentOS/Fedaro系統安裝方式:centos

~ yum install VirtualBox

Mac咱們經過brew cask來安裝:

~ brew cask install virtualbox

這一步可能會遇到「Cask 'virtualbox' is already installed.」和「Error: Failure while executing;」的問題,解決方式請看《MacOS brew cask安裝VirtualBox遇到的問題》。

Windows系統安裝Virtualbox:

1.3 安裝 kubectl

kubectl 是一個用於管理 Kubernetes 的命令行工具。

Linux安裝kubectl(使用以下其中一種方式):

# 使用國內阿里雲源安裝 ~ curl -LO http://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/`curl -s http://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/kubectl # 使用谷歌源安裝(國內網路會很慢) ~ curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/kubectl

MacOS安裝kubectl(使用以下其中一種方式):

# 經過brew方式安裝
~ brew install kubectl # 經過國內阿里雲源安裝 ~ curl -LO http://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/`curl -s http://kubernetes.oss-cn-hangzhou.aliyuncs.com/kubernetes-release/release/stable.txt`/bin/darwin/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/kubectl # 經過谷歌源安裝(國內網路會很慢) ~ curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/darwin/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/kubectl

Windows安裝kubectl:

安裝完成後,查看版本:

~ kubectl version

1.4 安裝 Minikube

minikube 是一個本地Kubernetes集羣的實現,支持MacOS、Linux和Windows系統。minikube的主要目標是,成爲本地開發Kubernetes和支持Kubernetes所有特性的最佳工具。

Linux安裝:

# 經過國內阿里雲安裝
~ curl -Lo minikube http://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.2.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/ # 經過谷歌源安裝 curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube && sudo install minikube /usr/local/bin 

MacOS安裝:

# 經過brew方式安裝
~ brew install kubectl

# 經過國內阿里雲方式安裝 ~ curl -Lo minikube http://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.2.0/minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/ # 經過谷歌源安裝 curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

Windows安裝:

下載minikube-windows-amd64.exe:

2 測試

到這一步應該基本均可以工做了,啓動Minikube集羣:

~ minikube start  
 😄  minikube v1.2.0 on darwin (amd64) ✅  using image repository registry.cn-hangzhou.aliyuncs.com/google_containers 💿  Downloading Minikube ISO ...  129.33 MB / 129.33 MB [============================================] 100.00% 0s 🔥  Creating virtualbox VM (CPUs=2, Memory=2048MB, Disk=20000MB) ... 🐳  Configuring environment for Kubernetes v1.15.0 on Docker 18.09.6 💾  Downloading kubelet v1.15.0 💾  Downloading kubeadm v1.15.0 🚜  Pulling images ... 🚀  Launching Kubernetes ...  ⌛  Verifying: apiserver proxy  etcd  scheduler controller dns 🏄  Done! kubectl is now configured to use "minikube" 

查看 api 版本:

 ~ kubectl api-versions
 admissionregistration.k8s.io/v1beta1
 apiextensions.k8s.io/v1beta1 apiregistration.k8s.io/v1 apiregistration.k8s.io/v1beta1 apps/v1 apps/v1beta1 apps/v1beta2 authentication.k8s.io/v1 authentication.k8s.io/v1beta1 ...

這些輸出說明安裝成功,一切工做正常了。

更多命令以下:

minikube start                           # 啓動minikube minikube ip # 查看IP minikube status # 查看狀態 minikube stop # 關閉集羣 minikube delete # 刪除集羣。若是啓動出錯,同時刪除 ~/.minikube目錄 再minikube start kubectl config use-context minikube # 使用minikube集羣做爲當前上下文 kubectl cluster-info # 查看集羣信息

3 它們都是什麼?

上面咱們安裝了好幾個工具,那麼這些工具之間有什麼聯繫嗎?接着,咱們稍微闡述下這些概念。

  • VirtualBox 是一個運行虛擬機的通用工具。使用VirtaulBox,咱們能夠在MacOS系統中運行Linux(如Ubuntu、CentOS)、Windows等系統。
  • Minikube 是一個Kubernetes專用包,用來在本機中運行Kubernetes集羣。這個本機的集羣擁有一個獨立的節點(node)和一些便於本機開發的特性。Minikube 通知 VirtualBox 什麼時候如何運行。固然,經過額外的配置,Minikube也能夠支持使用其餘虛擬化工具,各系統支持狀況:
    • Linux: VirtualBoxKVM
    • Mac: VirtualBoxhyperkitVMWare
    • Windows: VirtualBoxHyper-V。(在Windows環境下,若是開啓了Hyper-V,不支持VirtualBox方式)
  • kubectl 是一個用於與Minikube Kubernetes集羣交互的命令行工具。它發送請求給集羣中的Kubernetes API服務器,實現管理Kubernetes環境的目的。kubectl 和 Mac 電腦上的其餘應用同樣,它僅僅發送HTTP請求到集羣上的Kubernetes API。

 

參考地址:

« Scrapy的remove_tags_with_content方法沒法刪除img標籤? MacOS brew cask安裝VirtualBox遇到的問題 »

相關文章
相關標籤/搜索