使用 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.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 , 执行以下命令
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
打包完成后会在当前目录的同级目录生成 .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
总结
- 点击查看我的Github
- 点击查看我的个人Blog
- 日拱一卒,不期速成
四种方式都可以进行部署,如果你想要自定义chart ,需要使用上述两种本地方法及harbor 存储的方式来进行部署.
使用 chart 部署 skywalking的更多相关文章
- 使用docker部署skywalking
使用docker部署skywalking Intro 之前在本地搭建过一次 skywalking + elasticsearch ,但是想要迁移到别的机器上使用就很麻烦了,于是 docker 就成了很 ...
- Kubernetes 与 Helm:使用同一个 Chart 部署多个应用
k8s 集群搭建好了,准备将 docker swarm 上的应用都迁移到 k8s 上,但需要一个一个应用写 yaml 配置文件,不仅要编写 deployment.yaml 还要编写 service.y ...
- 使用 Helm Chart 部署及卸载 istio
部署 istio 1.添加 istio 官方的 helm 仓库 helm repo add istio https://storage.googleapis.com/istio-release/rel ...
- 基于docker部署skywalking实现全链路监控
一.概述 简介 skywalking是一个开放源码的,用于收集.分析,聚合,可视化来自于不同服务和本地基础服务的数据的可观察的平台,skywalking提供了一个简单的方法来让你对你的分布式系统甚至是 ...
- Linux 环境部署Skywalking支持Elasticsearch
一.环境准备 1.Java JKD 1.8(建议) 2.Elasticsearch 3.Skywalking 二. 环境搭建 安装Skywalking分为两个步骤: a.安装Backend后端服务 b ...
- docker部署skywalking
https://www.cnblogs.com/xiao987334176/p/13530575.html
- 部署Chart应用并使用.net core读取Kubernetes中的configMap
上一篇文章讲了 k8s使用helm打包chart并上传到腾讯云TencentHub,今天就讲一下使用Helm部署应用并使用configMap代替asp.net core 中的appsettings.j ...
- skywalking8.1.0(一) 安装与部署
skywalking部署 背景介绍 目前公司后端服务全部为微服务并运行在kubernetes集群上,而大量的微服务的背后拥有很复杂的调用关系,纵使你是公司的资深开发也很难理清每一个后端服务之间的依赖关 ...
- 链路追踪_SkyWalking的部署及使用
关于链路追踪,目前比较主流是Cat,Zipkin,SkyWalking等这些工具.这篇文章主要介绍关于SkyWalking工具的. 为什么用SkyWalking,因为它基本没有代码侵入,只这一点就足够 ...
随机推荐
- 小米 OJ 编程比赛 02 月常规赛 3 Logic Gatekeeper CDQ分治
link:https://code.mi.com/problem/list/view?id=139 题意: 有一个1e6 * 1e6 大的格子,现在有两种操作:1,给一个子矩阵中的每个格子加上k.2, ...
- CF - 1111D Destroy the Colony DP
题目传送门 题意: 这个题目真的是最近遇到的最难读. 有一个长度n的字符串,每一位字符都代表的是该种种类的敌人. 现在如果一个序列合法的话,就是同一种种类的敌人都在字符串的左半边或者右半边. 现在有q ...
- react页面内嵌微信二维码 和 自定义样式 以及 微信网页共用unionId问题
在react页面内嵌“微信二维码”,实现PC端通过微信扫码进行登录.首先去微信开放平台注册一个账号,创建一个网站应用,提交网站备案审核,获取appid和appsecret:其他开发流程根据微信文档来进 ...
- 微信小程序一步一步获取UnionID,实现自动登录
思路: 1.小程序端获取用户ID,发送至后台 2.后台查询用户ID,如果找到了该用户,返回Token,没找到该用户,保存到数据库,并返回Token 小程序端如何获取用户ID: 小程序端 wx.getU ...
- 关于JQuery.form.js异步上传文件点滴
好久没动代码了,前几天朋友委托我帮忙给做几个页面,其中有个注册带图片上传的页面.已之前的经验应该很快就能搞定,没想到的是搞了前后近一天时间.下面就说说异步上传的重要几个点,希望自己下次遇到此类问题的时 ...
- Python作业本——第5章 字典和结构化数据
习题 1. {} 2. {'fow': 42} 3.字典是无序的 4.报错 (KeyError) 5.第一种是既搜索键又搜索值,第二种值搜索键 没有区别,in操作符检查一个值是不是字典的一 ...
- java中存储机制堆栈。
一.java的六种存储地址及解释 1) 寄存器(register):这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部.但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配.你不 ...
- [系列] go-gin-api 路由中间件 - Jaeger 链路追踪(五)
概述 首先同步下项目概况: 上篇文章分享了,路由中间件 - 捕获异常,这篇文章咱们分享:路由中间件 - Jaeger 链路追踪. 啥是链路追踪? 我理解链路追踪其实是为微服务架构提供服务的,当一个请求 ...
- ThreadLocal的认知与见解
ThreadLocal:提高一个线程的局部变量,访问某个线程拥有自己局部变量(很难理解.看看下面这句话,顺便再讲个例子). 当使用ThreadLocal维护变量时,ThreadLocal为每一个使用该 ...
- HABSE表结构理解
也分为行列,行是索引,锁定数据,查找数据只能通过行 列:建表时必须知道列族,真实列(列簇)在插入数据时候可以指定 查找指定列,必须带列族,列族1:name