使用 chart 部署 skywalking
本文主要講述的是如何使用 Helm Charts 將 SkyWalking 部署到 Kubernetes 集群中,相關(guān)文檔可以參考skywalking-kubernetes 和 backend-k8s 文檔 。
目前推薦的四種方式:
- 使用 helm 2 提供的 helm serve 啟動本地 helm repo
- 使用本地 chart 文件部署
- 使用 harbor 提供的 repo 功能
- 直接從官方 repo 進(jìn)行部署
注意:目前 skywalking 的 chart 還沒有提交到官方倉庫壶笼,請先參照前兩種方式進(jìn)行部署
Helm 2 提供的 helm serve
打包對應(yīng)版本的 skywalking chart
1.配置 helm 環(huán)境仪或,參考 Helm 環(huán)境配置 肆良,如果你要部署helm2 相關(guān)chart 可以直接配置 helm2 的相關(guān)環(huán)境
2.克隆/下載ZIP skywalking-kubernetes 這個倉庫窗市,倉庫關(guān)于chart的目錄結(jié)構(gòu)如下
helm-chart
- helm2
- 6.0.0-GA
- 6.1.0
- helm3
- 6.3.0
- 6.4.0
克隆/下載ZIP 完成后進(jìn)入指定目錄打包對應(yīng)版本的chart
cd skywalking-kubernetes/helm-chart/<helm-version>/<skywalking-version>
注意:helm-version 為對應(yīng)的helm版本目錄栗菜,skywalking-version 為對應(yīng)的 skywalking 版本目錄林束,下面以helm3 和 skywalking 6.3.0 為例
cd skywalking-kubernetes/helm-chart/helm3/6.3.0
3.由于skywalking 依賴 elasticsearch 作為存儲庫像棘,執(zhí)行以下命令更新依賴,默認(rèn)會從官方repo進(jìn)行拉取
helm dep up skywalking
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "stable" chart repository
Update Complete. ?Happy Helming!?
Saving 1 charts
Downloading elasticsearch from repo https://kubernetes-charts.storage.googleapis.com/
Deleting outdated charts
如果官方 repo 不存在壶冒,請先添加官方倉庫
helm repo add stable https://kubernetes-charts.storage.googleapis.com
"stable" has been added to your repositories
4.打包 skywalking , 執(zhí)行以下命令
helm package skywalking/
Successfully packaged chart and saved it to: C:\code\innerpeacez_github\skywalking-kubernetes\helm-chart\helm3\6.3.0\skywalking-0.1.0.tgz
打包完成后會在當(dāng)前目錄的同級目錄生成 .tgz 文件
ls
skywalking/ skywalking-0.1.0.tgz
啟動 helm serve
由于上文配置的 helm 為 helm3 ,但是helm 3中移除了 helm serve 的相關(guān)命令缕题,所以需要另外一個環(huán)境配置helm2 的相關(guān)環(huán)境,下載 helm 2.14.3 的二進(jìn)制文件胖腾,配置基本上沒有大的差別烟零,不在贅述
初始化 helm
helm init
將上文生成的 skywalking-0.1.0.tgz 文件復(fù)制到 helm 相關(guān)目錄 /root/.helm/repository/local
,啟動 serve
helm serve --address <ip>:8879 --repo-path /root/.helm/repository/local
注意: ip 為要能夠被上文配置 helm 3 環(huán)境的機(jī)器訪問到
可以訪問一下看看服務(wù) serve 是否啟動成功
curl ip:8879
部署 skywalking
1.在helm3 環(huán)境中添加啟動的本地 repo
helm repo add local http://<ip>:8879
2.查看 skywalking chart 是否存在于本地倉庫中
helm search skywalking
NAME CHART VERSION APP VERSION DESCRIPTION
local/skywalking 0.1.5 6.3.0 Apache SkyWalking APM System
3.部署
helm -n test install skywalking local/skywalking
這樣 skywalking 就部署到了 k8s 集群中的 test 命名空間了瘪松,至此本地安裝skywalking 就完成了。
本地文件部署
如果你不想存儲到 chart 到倉庫中也可以直接使用本地文件部署 skywalking,按照上面的步驟將skywalking chart 打包完成之后锨阿,直接使用以下命令進(jìn)行部署
helm -n test install skywalking skywalking-0.1.0.tgz
harbor 作為 repo 存儲 charts
harbor 目前已經(jīng)提供了宵睦,charts repo 的能力,這樣就可以將 docker 鏡像和 chart 存儲在一個倉庫中了墅诡,方便維護(hù)壳嚎,具體harbor 的部署方法參考 Harbor 作為存儲倉庫存儲 chart
官方 repo 部署
目前沒有發(fā)布到官方 repo 中,后續(xù)發(fā)布完成后末早,只需要執(zhí)行下面命令即可
helm install -n test stable/skywalking
總結(jié)
- 點(diǎn)擊查看我的Github
- 點(diǎn)擊查看我的個人Blog
- 日拱一卒烟馅,不期速成
四種方式都可以進(jìn)行部署,如果你想要自定義chart ,需要使用上述兩種本地方法及harbor 存儲的方式來進(jìn)行部署.