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.0M 100 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.8M 100 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