歡迎您光臨本站 註冊首頁

使用 kind 和 Docker 啟動本地的 Kubernetes環境

←手機掃碼閱讀     ljg58026 @ 2020-05-08 , reply:0

介紹
你曾經花過一整天時間嘗試入門Kubernetes嗎?多虧最近新出現的一些工具,你可以不用再為此大費周章了。
這篇文章中,我將向你展示使用 kind 在單個 Docker 容器中啟動一個集群的步驟。
什麼是 kind
因為 kind 是 go 語言實現的,請確保安裝了最新版本的 golang。根據開發者文檔,推薦使用 go1.11.5 及以上版本。為了安裝 kind,請運行這些命令(可能需要運行一段時間)
kind(Kubernetes IN Docker) 是一個基於 docker 構建 Kubernetes 集群的工具,非常適合用來在本地搭建基於 Kubernetes 的開發/測試環境。
go get -u sigs.k8s.io/kind kind create cluster
然後確認 “kind” 集群是可用的。
kind get clusters
設置 kubectl
同樣的,使用 Homebrew 或者 Chocolatey 安裝最新版本的 kubernetes-cli。最新版本的 Docker 包含了Kubernetes的功能,但使用的是老版本的 kubectl。
運行該命令檢查它的版本號。
kubectl version
請確保顯示 GitVersion: "v1.14.1" 或更高版本。
如果你發現通過 Docker 運行的 kubectl,試著使用 brew link 或對環境變量重新排序。
一旦 kubectl 和 kind 安裝就緒,打開 bash 控制檯運行這些命令。
export KUBECONFIG=”$(kind get kubeconfig-path)” kubectl cluster-info
如果 kind 正確的配置了,會顯示一些信息出來。現在你就可以繼續開始下面的工作了。耶!
部署第一個應用程序
我們需要部署什麼到集群上呢?一個很好的選擇就是 Wordpress 因為它包括 MySQL 和 PHP 應用程序。
幸運的是,有一個官方的入門介紹並且描述的非常棒。我們可以嘗試使用剛才創建的 kind 集群來操作裡面的大多數步驟。
https://kubernetes.io/docs/tut ... lume/
首先,從這個頁面上下載 mysql-deployment.yaml 和 wordpress-deployment.yaml。
運行兩個 cat 命令創建 kustomization.yaml。一旦這些 yaml 文件準備好之後,將文件按照下面顯示的那樣放到相應的目錄裡面。
k8s-wp/ kustomization.yaml mysql-deployment.yaml wordpress-deployment.yaml
然後應用到你的集群當中。
cd k8s-wp kubectl apply -k ./
如果命令成功執行你會看到如下的輸出:
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
讓我們輸入這些命令檢查下集群的狀態:
kubectl get secrets kubectl get pvc kubectl get pods kubectl get services wordpress
等待所有的 pod 變成 Running 狀態。
然後,運行這個命令來獲取服務。
kubectl port-forward svc/wordpress 8080:80
然後打開http://localhost:8080/
瞧!如果你想查看數據庫,檢查你的pod,像這樣運行一個命令,然後打開你的客戶端應用。
kubectl port-forward wordpress-mysql-bc9864c58-ffh4c 3306:3306
結論
kind 對 minikube 來說是一個好的選擇因為它只使用單個 Docker 容器。
通過跟集成到Kubernetes1.14 的 Kustomze 結合使用,在你本地的機器上嘗試使用 Kubernetes 會更加簡單。


[ljg58026 ] 使用 kind 和 Docker 啟動本地的 Kubernetes環境已經有456次圍觀

http://coctec.com/docs/docker/show-post-233355.html