溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用kind和Docker啟動(dòng)本地的Kubernetes環(huán)境

發(fā)布時(shí)間:2020-07-28 13:48:33 來(lái)源:億速云 閱讀:120 作者:小豬 欄目:服務(wù)器

這篇文章主要講解了如何使用kind和Docker啟動(dòng)本地的Kubernetes環(huán)境,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。

什么是 kind

因?yàn)?kind 是 go 語(yǔ)言實(shí)現(xiàn)的,請(qǐng)確保安裝了最新版本的 golang。根據(jù)開(kāi)發(fā)者文檔,推薦使用 go1.11.5 及以上版本。為了安裝 kind,請(qǐng)運(yùn)行這些命令(可能需要運(yùn)行一段時(shí)間)

kind(Kubernetes IN Docker) 是一個(gè)基于 docker 構(gòu)建 Kubernetes 集群的工具,非常適合用來(lái)在本地搭建基于 Kubernetes 的開(kāi)發(fā)/測(cè)試環(huán)境。

go get -u sigs.k8s.io/kind 
kind create cluster

然后確認(rèn) “kind” 集群是可用的。

kind get clusters

設(shè)置 kubectl

同樣的,使用 Homebrew 或者 Chocolatey 安裝最新版本的 kubernetes-cli。最新版本的 Docker 包含了Kubernetes的功能,但使用的是老版本的 kubectl。

運(yùn)行該命令檢查它的版本號(hào)。

kubectl version

請(qǐng)確保顯示 GitVersion: "v1.14.1" 或更高版本。

如果你發(fā)現(xiàn)通過(guò) Docker 運(yùn)行的 kubectl,試著使用 brew link 或?qū)Νh(huán)境變量重新排序。

一旦 kubectl 和 kind 安裝就緒,打開(kāi) bash 控制臺(tái)運(yùn)行這些命令。

export KUBECONFIG=”$(kind get kubeconfig-path)”
kubectl cluster-info

如果 kind 正確的配置了,會(huì)顯示一些信息出來(lái)?,F(xiàn)在你就可以繼續(xù)開(kāi)始下面的工作了。耶!

部署第一個(gè)應(yīng)用程序

我們需要部署什么到集群上呢?一個(gè)很好的選擇就是 Wordpress 因?yàn)樗?MySQL 和 PHP 應(yīng)用程序。

幸運(yùn)的是,有一個(gè)官方的入門介紹并且描述的非常棒。我們可以嘗試使用剛才創(chuàng)建的 kind 集群來(lái)操作里面的大多數(shù)步驟。

https://kubernetes.io/docs/tut ... lume/ 

首先,從這個(gè)頁(yè)面上下載 mysql-deployment.yaml 和 wordpress-deployment.yaml。

運(yùn)行兩個(gè) cat 命令創(chuàng)建 kustomization.yaml。一旦這些 yaml 文件準(zhǔn)備好之后,將文件按照下面顯示的那樣放到相應(yīng)的目錄里面。

k8s-wp/
kustomization.yaml 
mysql-deployment.yaml 
wordpress-deployment.yaml

然后應(yīng)用到你的集群當(dāng)中。

cd k8s-wp 
kubectl apply -k ./

如果命令成功執(zhí)行你會(huì)看到如下的輸出:

secret/mysql-pass-7tt4f27774 created
service/wordpress-mysql created
service/wordpress created
deployment.apps/wordpress-mysql created
deployment.apps/wordpress created
persistentvolumeclaim/mysql-pv-claim created
persistentvolumeclaim/wp-pv-claim created

讓我們輸入這些命令檢查下集群的狀態(tài):

kubectl get secrets
kubectl get pvc
kubectl get pods
kubectl get services wordpress

等待所有的 pod 變成 Running 狀態(tài)。

然后,運(yùn)行這個(gè)命令來(lái)獲取服務(wù)。

kubectl port-forward svc/wordpress 8080:80

然后打開(kāi)http://localhost:8080/

瞧!如果你想查看數(shù)據(jù)庫(kù),檢查你的pod,像這樣運(yùn)行一個(gè)命令,然后打開(kāi)你的客戶端應(yīng)用。

kubectl port-forward wordpress-mysql-bc9864c58-ffh5c 3306:3306

結(jié)論

kind 對(duì) minikube 來(lái)說(shuō)是一個(gè)好的選擇因?yàn)樗皇褂脝蝹€(gè) Docker 容器。

通過(guò)跟集成到Kubernetes1.14 的 Kustomze 結(jié)合使用,在你本地的機(jī)器上嘗試使用 Kubernetes 會(huì)更加簡(jiǎn)單。

看完上述內(nèi)容,是不是對(duì)如何使用kind和Docker啟動(dòng)本地的Kubernetes環(huán)境有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI