使用 kind 和 Docker 啟動本地的 Kubernetes環(huán)境
介紹
你曾經(jīng)花過一整天時間嘗試入門Kubernetes嗎?多虧最近新出現(xiàn)的一些工具,你可以不用再為此大費(fèi)周章了。
這篇文章中,我將向你展示使用 kind 在單個 Docker 容器中啟動一個集群的步驟。
什么是 kind
因?yàn)?kind 是 go 語言實(shí)現(xiàn)的,請確保安裝了最新版本的 golang。根據(jù)開發(fā)者文檔,推薦使用 go1.11.5 及以上版本。為了安裝 kind,請運(yùn)行這些命令(可能需要運(yùn)行一段時間)
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” 集群是可用的。
kind get clusters
設(shè)置 kubectl
同樣的,使用 Homebrew 或者 Chocolatey 安裝最新版本的 kubernetes-cli。最新版本的 Docker 包含了Kubernetes的功能,但使用的是老版本的 kubectl。
運(yùn)行該命令檢查它的版本號。
kubectl version
請確保顯示 GitVersion: "v1.14.1" 或更高版本。
如果你發(fā)現(xiàn)通過 Docker 運(yùn)行的 kubectl,試著使用 brew link 或?qū)Νh(huán)境變量重新排序。
一旦 kubectl 和 kind 安裝就緒,打開 bash 控制臺運(yùn)行這些命令。
export KUBECONFIG=”$(kind get kubeconfig-path)” kubectl cluster-info
如果 kind 正確的配置了,會顯示一些信息出來?,F(xiàn)在你就可以繼續(xù)開始下面的工作了。耶!
部署第一個應(yīng)用程序
我們需要部署什么到集群上呢?一個很好的選擇就是 Wordpress 因?yàn)樗?MySQL 和 PHP 應(yīng)用程序。
幸運(yùn)的是,有一個官方的入門介紹并且描述的非常棒。我們可以嘗試使用剛才創(chuàng)建的 kind 集群來操作里面的大多數(shù)步驟。
https://kubernetes.io/docs/tut ... lume/
首先,從這個頁面上下載 mysql-deployment.yaml 和 wordpress-deployment.yaml。
運(yùn)行兩個 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)。
然后,運(yùn)行這個命令來獲取服務(wù)。
kubectl port-forward svc/wordpress 8080:80
瞧!如果你想查看數(shù)據(jù)庫,檢查你的pod,像這樣運(yùn)行一個命令,然后打開你的客戶端應(yīng)用。
kubectl port-forward wordpress-mysql-bc9864c58-ffh4c 3306:3306
結(jié)論
kind 對 minikube 來說是一個好的選擇因?yàn)樗皇褂脝蝹€ Docker 容器。
通過跟集成到Kubernetes1.14 的 Kustomze 結(jié)合使用,在你本地的機(jī)器上嘗試使用 Kubernetes 會更加簡單。
到此這篇關(guān)于使用 kind 和 Docker 啟動本地的 Kubernetes環(huán)境的文章就介紹到這了,更多相關(guān)kind 和 Docker 啟動本地 Kubernetes內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker服務(wù)關(guān)停的實(shí)現(xiàn)步驟
在我看來所謂的優(yōu)雅關(guān)閉,就是在系統(tǒng)關(guān)閉時,預(yù)留一些時間,讓你有機(jī)會來善后一些事情,本文就來介紹一下docker服務(wù)如何正確關(guān)停,感興趣的可以了解一下2023-10-10docker-compose:未找到命令的檢查步驟和修復(fù)
最近在使用docker時,有不少人遇到了一個問題,在容器中找不到docker命令,這個問題可能會導(dǎo)致一些困惑和疑惑,這篇文章主要介紹了docker-compose:未找到命令的檢查步驟和修復(fù)的相關(guān)資料,需要的朋友可以參考下2024-08-08詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境
這篇文章主要介紹了詳解如何使用Docker部署Django+MySQL8開發(fā)環(huán)境,文中通過示例代碼以及圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07docker 中的–mount 和-v 參數(shù)區(qū)別解析
這篇文章主要介紹了docker 中的–mount 和-v 參數(shù)區(qū)別解析,--mount 更為靈活,適用于更復(fù)雜的掛載需求,使用哪種方式主要取決于個人或團(tuán)隊(duì)的偏好和具體的使用場景,需要的朋友可以參考下2023-12-12docker中使用mysql數(shù)據(jù)庫實(shí)現(xiàn)局域網(wǎng)訪問
在本篇內(nèi)容里小編給大家整理了關(guān)于docker中使用mysql數(shù)據(jù)庫實(shí)現(xiàn)局域網(wǎng)訪問相關(guān)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2020-03-03