使用 chart 部署 skywalking

使用 chart 部署 skywalking

本文主要講述的是如何使用 Helm Charts 將 SkyWalking 部署到 Kubernetes 集羣中,相關文檔可以參考skywalking-kubernetes backend-k8s 文檔

目前推薦的四種方式:

  • 使用 helm 2 提供的 helm serve 啓動本地 helm repo
  • 使用本地 chart 文件部署
  • 使用 harbor 提供的 repo 功能
  • 直接從官方 repo 進行部署

注意:目前 skywalking 的 chart 還沒有提交到官方倉庫,請先參照前兩種方式進行部署

Helm 2 提供的 helm serve

打包對應版本的 skywalking chart

1.配置 helm 環境,參考 Helm 環境配置 ,如果你要部署helm2 相關chart 可以直接配置 helm2 的相關環境

2.克隆/下載ZIP skywalking-kubernetes 這個倉庫,倉庫關於chart的目錄結構如下

helm-chart

  • helm2

    • 6.0.0-GA
    • 6.1.0
  • helm3

    • 6.3.0
    • 6.4.0

克隆/下載ZIP 完成後進入指定目錄打包對應版本的chart

cd skywalking-kubernetes/helm-chart/<helm-version>/<skywalking-version>

注意:helm-version 爲對應的helm版本目錄,skywalking-version 爲對應的 skywalking 版本目錄,下面以helm3 和 skywalking 6.3.0 爲例

cd skywalking-kubernetes/helm-chart/helm3/6.3.0

3.由於skywalking 依賴 elasticsearch 作爲存儲庫,執行以下命令更新依賴,默認會從官方repo進行拉取

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.sto...
Deleting outdated charts

如果官方 repo 不存在,請先添加官方倉庫

helm repo add stable https://kubernetes-charts.storage.googleapis.com
"stable" has been added to your repositories

4.打包 skywalking , 執行以下命令

helm package skywalking/
Successfully packaged chart and saved it to: C:codeinnerpeacez_githubskywalking-kuberneteshelm-charthelm36.3.0skywalking-0.1.0.tgz

打包完成後會在當前目錄的同級目錄生成 .tgz 文件

 ls
skywalking/ skywalking-0.1.0.tgz
啓動 helm serve

由於上文配置的 helm 爲 helm3 ,但是helm 3中移除了 helm serve 的相關命令,所以需要另外一個環境配置helm2 的相關環境,下載 helm 2.14.3 的二進制文件,配置基本上沒有大的差別,不在贅述

初始化 helm

helm init

將上文生成的 skywalking-0.1.0.tgz 文件複製到 helm 相關目錄 /root/.helm/repository/local,啓動 serve

helm serve --address <ip>:8879 --repo-path /root/.helm/repository/local

注意: ip 爲要能夠被上文配置 helm 3 環境的機器訪問到

可以訪問一下看看服務 serve 是否啓動成功

curl ip:8879
部署 skywalking

1.在helm3 環境中添加啓動的本地 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 打包完成之後,直接使用以下命令進行部署

helm -n test install skywalking skywalking-0.1.0.tgz

harbor 作爲 repo 存儲 charts

harbor 目前已經提供了,charts repo 的能力,這樣就可以將 docker 鏡像和 chart 存儲在一個倉庫中了,方便維護,具體harbor 的部署方法參考 Harbor 作爲存儲倉庫存儲 chart

官方 repo 部署

目前沒有發佈到官方 repo 中,後續發佈完成後,只需要執行下面命令即可

helm install -n test stable/skywalking

總結

四種方式都可以進行部署,如果你想要自定義chart ,需要使用上述兩種本地方法及harbor 存儲的方式來進行部署.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章