介紹
你曾經(jīng)花過一整天時間嘗試入門Kubernetes嗎?多虧最近新出現(xiàn)的一些工具,你可以不用再為此大費周章了。
這篇文章中,我將向你展示使用 kind 在單個 Docker 容器中啟動一個集群的步驟。
什么是 kind
因為 kind 是 go 語言實現(xiàn)的,請確保安裝了最新版本的 golang。根據(jù)開發(fā)者文檔,推薦使用 go1.11.5 及以上版本。為了安裝 kind,請運行這些命令(可能需要運行一段時間)
kind(Kubernetes IN Docker) 是一個基于 docker 構(gòu)建 Kubernetes 集群的工具,非常適合用來在本地搭建基于 Kubernetes 的開發(fā)/測試環(huán)境。
go get -u sigs.k8s.io/kind
kind create cluster
然后確認(rèn) “kind” 集群是可用的。
設(shè)置 kubectl
同樣的,使用 Homebrew 或者 Chocolatey 安裝最新版本的 kubernetes-cli。最新版本的 Docker 包含了Kubernetes的功能,但使用的是老版本的 kubectl。
運行該命令檢查它的版本號。
kubectl version
請確保顯示 GitVersion: "v1.14.1" 或更高版本。
如果你發(fā)現(xiàn)通過 Docker 運行的 kubectl,試著使用 brew link 或?qū)Νh(huán)境變量重新排序。
一旦 kubectl 和 kind 安裝就緒,打開 bash 控制臺運行這些命令。
export KUBECONFIG=”$(kind get kubeconfig-path)”
kubectl cluster-info
如果 kind 正確的配置了,會顯示一些信息出來。現(xiàn)在你就可以繼續(xù)開始下面的工作了。耶!
部署第一個應(yīng)用程序
我們需要部署什么到集群上呢?一個很好的選擇就是 Wordpress 因為它包括 MySQL 和 PHP 應(yīng)用程序。
幸運的是,有一個官方的入門介紹并且描述的非常棒。我們可以嘗試使用剛才創(chuàng)建的 kind 集群來操作里面的大多數(shù)步驟。
https://kubernetes.io/docs/tut ... lume/
首先,從這個頁面上下載 mysql-deployment.yaml 和 wordpress-deployment.yaml。
運行兩個 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í)行你會看到如下的輸出:
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)。
然后,運行這個命令來獲取服務(wù)。
kubectl port-forward svc/wordpress 8080:80
然后打開http://localhost:8080/
瞧!如果你想查看數(shù)據(jù)庫,檢查你的pod,像這樣運行一個命令,然后打開你的客戶端應(yīng)用。
kubectl port-forward wordpress-mysql-bc9864c58-ffh4c 3306:3306
結(jié)論
kind 對 minikube 來說是一個好的選擇因為它只使用單個 Docker 容器。
通過跟集成到Kubernetes1.14 的 Kustomze 結(jié)合使用,在你本地的機器上嘗試使用 Kubernetes 會更加簡單。
到此這篇關(guān)于使用 kind 和 Docker 啟動本地的 Kubernetes環(huán)境的文章就介紹到這了,更多相關(guān)kind 和 Docker 啟動本地 Kubernetes內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!