1. 程式人生 > >Kubernetes 1.3 從入門到進階 安裝篇(1)

Kubernetes 1.3 從入門到進階 安裝篇(1)

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

                       

Kubernetes 1.3 從入門到進階 安裝篇:minikube

 

Kubernetes單機執行環境一直是一個沒有得到重視的問題。現在我們有了minikube,一個用go語言開發的可以在本地執行kubernetes的利器,不過目前應該只是支援kubernetes1.3。如果你只有一臺機器或者虛擬機器又想試驗一下Kubernetes的新的功能,或者作kubernetes上開發的本地環境,minikube可能是你不錯的選擇。

下載minikube並設定

 

下載的時候突然發現版本已經是0.7.0了,發現是6個小時之前剛剛更新的,速度好快,從第一次釋出的5/31的0.1版,到現在的第七次版本的迭代,基本上平均是一週一個版本的速度,這就是網際網路時代的平均數度。當普通的企業推出新機能的時候,一般是在和使用者的耐心在賽跑。但是一週一次的版本更新基本上是在脫著使用者前進的節奏。下載來看看吧。

# curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.7.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                 Dload
  Upload   Total   Spent    Left  Speed100 72.0100 72.0M    0     0   866k      0  0:01:25  0:01:25 --:--:--  889k[root@liumiao tmp]#
  • 1
  • 2
  • 3
  • 4
  • 5

確認minikube

# which minikube/usr/local/bin/minikube# minikube versionThere is a newer version of minikube available (v0.7.0).  Download it here:https://github.com/kubernetes/minikube/releases/tag/v0.7.0To disable this notification, add WantUpdateNotification: False to the json config file at /root/.minikube/config(you may have to create the file config.json in this folder if you have no previous configuration)minikube version: v0.6.0#
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
 

簡單解釋
  curl -Lo 會把minikube下載到本地
  chmod +x 給其加上執行許可權
  mv kubectl /usr/local/bin下是因為普通使用者的path中預設的有/usr/local/bin
  minikube version: v0.6.0 ?這是個什麼節奏,我只是想看個版本號。
  按照提示,建立了其提示的目錄,明確提示是0.6.0的版本。

# mkdir -p /root/.minikube/config# minikube versionminikube version: v0.6.0#
   
  • 1
  • 2
  • 3
  • 4
 

找到一臺能夠連線google機器,一樣做了一遍,版本正常顯示。0.6也好0.7也罷,繼續前進。

# minikube versionminikube version: v0.7.0#
   
  • 1
  • 2
  • 3

下載kubectl並設定

 

我們還需要下載kubectl並設定

# curl -Lo kubectl http://storage.googleapis.com/kubernetes-release/release/v1.3.0/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                 Dload  Upload   Total   Spent    Left  Speed100 53.8100 53.8M    0     0   688k      0  0:01:20  0:01:20 --:--:--  874k#
   
  • 1
  • 2
  • 3
  • 4
  • 5

確認kubectl

# which kubectl/usr/local/bin/kubectl# kubectl versionClient Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.0", GitCommit:"283137936a498aed572ee22af6774b6fb6e9fd94", GitTreeState:"clean", BuildDate:"2016-07-01T19:26:38Z", GoVersion:"go1.6.2", Compiler:"gc", Platform:"linux/amd64"}The connection to the server localhost:8080 was refused - did you specify the right host or port?#
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
 

我們已經看到了新的版本資訊了,Client Version: version.Info{Major:”1”, Minor:”3”, GitVersion:”v1.3.0”, Marjor的版本號1,Minor的3,1.3.0的kubernetes。但是為什麼被8080refused了呢。彆著急,還沒有啟動呢,這是沒有成功連線kubernetes apiserver的節奏,一切正常,到目前為止,我們只是下載了一個可執行檔案設定了許可權而已。

安裝條件

 

google官方是這樣寫的,Minikube requires the latest Virtualbox to be installed on your system,那麼我們看看不安裝會怎樣。

# minikube startStarting local Kubernetes cluster...E0726 05:33:07.585166    4210 start.go:78] Error starting host:  Error creating. Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"#
   
  • 1
  • 2
  • 3
  • 4
 

好的,我們會好好安裝的。有Virtualbox的可以跳過此步,minikube start不出錯,就可以使用了。

CentOS上安裝VB5.10# cd /etc/yum.repos.d/# wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo# yum update# yum install binutils qt gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms# export KERN_DIR=/usr/src/kernels/3.10.0-327.22.2.el7.x86_64注意此處根據具體情況3.10.0-327.22.2.el7.x86_64可能有所變化# yum install VirtualBox-5.1log的確認:/var/log/vbox-install.log
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

BIOS或者虛擬機器設定:VT-X/AMD-v

# minikube startStarting local Kubernetes cluster...E0727 06:27:17.242507   66718 start.go:78] Error starting host:  Error creating. Error with pre-create check: "This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory"#
   
  • 1
  • 2
  • 3
  • 4
 

vmware的設定方法:VM => “Settings…” => Processors => 選中複選框Virtualize Intel VT-x/EPT or AMD-V/RVI 
  注意:只能在VM停下來的時候才能設定
  BIOS的設定請根據機器型號自行google

啟動:VirtualBox版本提示錯誤

# minikube startStarting local Kubernetes cluster...E0727 06:41:54.512097    3933 start.go:78] Error starting host:  Error creating. Error with pre-create check: "We support Virtualbox starting with version 5. Your VirtualBox install is \"WARNING: The vboxdrv kernel module is not loaded. Either there is no module\\n         available for the current kernel (3.10.0-327.22.2.el7.x86_64) or it failed to\\n         load. Please recompile the kernel module and install it by\\n\\n           sudo /sbin/vboxconfig\\n\\n         You will not be able to start VMs until this problem is fixed.\\n5.1.2r108956\". Please upgrade at https://www.virtualbox.org"#
   
  • 1
  • 2
  • 3
  • 4
 

被提示The vboxdrv kernel module is not loaded, 啟動一下Virtualbox的Service吧

# /usr/lib/virtualbox/vboxdrv.sh setupvboxdrv.sh: Starting VirtualBox services.
   
  • 1
  • 2

啟動:成功

# minikube startStarting local Kubernetes cluster...Kubernetes is available at https://192.168.99.100:8443.Kubectl is now configured to use the cluster.#
   
  • 1
  • 2
  • 3
  • 4
  • 5

總結

 

看起來很美好,目前用起來不是太方便。沒有防火牆和內網限制的可以自由的使用非常方便。

安裝指令碼

#!/bin/bashMINI_VERSION="0.8.0"KUBE_VERSION="1.3.0"MACHINE_VERSION="0.8.1"curl -L https://github.com/docker/machine/releases/download/v${MACHINE_VERSION}/docker-machine-`uname -s`-`uname -m` >/usr/local/bin/docker-machine && \chmod +x /usr/local/bin/docker-machinewhich docker-machinedocker-machine versioncurl -Lo minikube https://storage.googleapis.com/minikube/releases/v${MINI_VERSION}/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/which minikubeminikube versioncurl -Lo kubectl http://storage.googleapis.com/kubernetes-release/release/v${KUBE_VERSION}/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/kubectl versioncd /etc/yum.repos.d/wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repoyum update -yyum install -y binutils qt gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkmsDIR=`ls -lrt /usr/src/kernels/|tail -n1 |awk '{print $NF}'`export KERN_DIR="/usr/src/kernels/${DIR}"yum install VirtualBox-5.1/usr/lib/virtualbox/vboxdrv.sh setupminikube start
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述