文章目录

  • 部署
  • 微服务接入
    • 调用 oap
    • 制作镜像
    • 制作微服务的 deployment.yml
    • 制作微服务的 Dockerflie

部署

官方文档:https://github.com/apache/skywalking-kubernetes

加入仓库

helm repo add skywalking https://apache.jfrog.io/artifactory/skywalking-helm

开始部署

helm install skywalking skywalking/skywalking -n component  --set oap.image.tag=8.8.1 --set oap.storageType=elasticsearch --set ui.image.tag=8.8.1  --set elasticsearch.imageTag=7.5.1

也可以执行 values-es7.yaml

helm install skywalking skywalking/skywalking -n component -f values-my-es7.yaml

自定义 values.yaml

oap:image:tag: "8.8.1"storageType: elasticsearchui:image:tag: "8.8.1"ingress:enabled: truehosts: - skywalking-ui.prodsaas.api.gd-xxx.comannotations:kubernetes.io/ingress.class: nginxelasticsearch:imageTag: "7.5.1"

镜像较大,第一次部署可能等到时间较长,不用慌,等待即可

微服务接入

调用 oap

微服务和sky walking不在同一集群内,为了联通,映射 11800 端口到 31800端口

也可配置 ingress 映射 oap 的 11800 端口

制作镜像

下载官方压缩包,官网地址:https://skywalking.apache.org/downloads/

wget https://dlcdn.apache.org/skywalking/java-agent/8.10.0/apache-skywalking-java-agent-8.10.0.tgz --no-check-certificate

解压

tar -zxvf apache-skywalking-java-agent-8.10.0.tgz

制作 Dockerfile

FROM busybox:latest
LABEL maintainer="fat"
COPY / /usr/skywalking/agent/

目录结构如下

打包镜像并上传到 Harbor

docker build -t skywalking-agent:latest  .
docker login  <harbor-host> -u admin -p Harbor12345
docker tag skywalking-agent:latest <harbor-host>/<project-name>/skywalking-agent:latest
docker images
docker push <harbor-host>/<project-name>/skywalking-agent:latest

制作微服务的 deployment.yml

apiVersion: apps/v1
kind: Deployment
metadata:name: demolabels:app: demo
spec:replicas: 1selector:matchLabels:app: demostrategy:rollingUpdate:maxSurge: 25%maxUnavailable: 25%type: RollingUpdatetemplate:metadata:labels:app: demospec:initContainers:- image: <harbor-host>/<project-name>/skywalking-agent:latestname: sw-agent-sidecarimagePullPolicy: IfNotPresentcommand: ["sh"]args:["-c","mkdir -p /skywalking/agent && cp -r /usr/skywalking/agent/* /skywalking/agent",]volumeMounts:- mountPath: /skywalking/agentname: sw-agentcontainers:- name: demoimage: "<harbor-host>/<project-name>/dev-converter:v5"imagePullPolicy: IfNotPresentports:- name: tcp-8082containerPort: 8082protocol: TCPenv:- name: JAVA_OPTSvalue: -Dspring.profiles.active=dev- name: SW_AGENT_NAMEvalue: converter-service- name: SW_AGENT_COLLECTOR_BACKEND_SERVICESvalue: 192.168.140.xx:31800volumeMounts:- mountPath: /usr/skywalking/agentname: sw-agentvolumes:- name: sw-agentemptyDir: {}

initContainers :初始化容器,配置 skywalking agent
initContainers.image:就是上面构建好推送到 harbor 的那一个
args:在制作 Dockerflie 时把文件复制到了 /usr/skywalking/agent 目录下,这段命令的意思是 新建 /skywalking/agent 目录,把 /usr/skywalking/agent 目录下全部复制到 /skywalking/agent ,这样才能让微服务读取 /usr/skywalking/agent/skywalking-agent.jar
containers:微服务的容器配置
SW_AGENT_COLLECTOR_BACKEND_SERVICES:收集的数据传到某服务端

重点配置

制作微服务的 Dockerflie

FROM openjdk:11.0-jre
MAINTAINER fat
COPY target/app.jar app.jar
EXPOSE 8082
ENV TIME_ZONE Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime
ENTRYPOINT  java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -javaagent:/usr/skywalking/agent/skywalking-agent.jar -jar /app.jar

注意:这里的 ENTRYPOINT 加了一个属性 :-javaagent:/usr/skywalking/agent/skywalking-agent.jar
路径和 containers.volumeMounts.sw-agent 一致

K8S 部署 skywalking相关推荐

  1. K8S部署skywalking

    文章目录 一.安装K8S集群 kubeadm部署K8s集群V1.19.0 二.部署skywalking `2.1.创建命名空间` `2.2.给节点打标签` `2.3.skywalking-oap.ym ...

  2. ZipKin原理学习(分布式实时数据追踪系统)+window部署zipkin+k8s部署zipkin

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 ZipKin入门介绍 Zipkin是一款开源的分布式实时数据追踪系统(Distributed Tracking System),基于 Google D ...

  3. K8S部署工具:KubeOperator集群导入

    K8S部署工具:KubeOperator集群导入 基本信息⚓︎ 输入要导入集群的名称.Api Server.Router.Token 示例 Api Server: https://172.16.10. ...

  4. K8S部署工具:KubeOperator集群部署

    K8S部署工具:KubeOperator集群部署 集群信息⚓︎ 项目: 选择集群所属项目 供应商: 支持裸金属(手动模式)和部署计划(自动模式) 版本: 支持版本管理中最新的两个 Kubernetes ...

  5. K8S部署工具:KubeOperator集群规划-手动模式

    K8S部署工具:KubeOperator集群规划-手动模式 KubeOperator 支持两种 Kubernetes 集群部署方式,一种是手动模式,另外一种是自动模式.手动模式下,用户需要自行准备主机 ...

  6. K8S部署工具:KubeOperator集群规划-自动模式

    K8S部署工具:KubeOperator集群规划-自动模式 KubeOperator 支持两种 Kubernetes 集群部署方式,一种是自动模式,另外一种是手动模式,我们推荐使用自动模式.在自动模式 ...

  7. K8S部署工具:KubeOperator系统设置

    K8S部署工具:KubeOperator系统设置 系统设置⚓︎ 仓库协议: 支持 http 和 https,默认 http 仓库 IP: 默认为部署 KubeOperator 的服务器 IP.将使用该 ...

  8. K8S部署工具:KubeOperator安装部署

    K8S部署工具:KubeOperator安装部署 硬件要求⚓︎ 最小化配置 角色 CPU核数 内存 系统盘 数量 部署机 4 8G 100G 1 Master 4 8G 100G 1 Worker 4 ...

  9. K8S部署工具:KubeOperator主要概念

    K8S部署工具:KubeOperator主要概念 部署模式⚓︎ 手动模式: 用户需要自己准备物理机或虚拟机,存储可选择 NFS 持久化存储,外部 ceph 存储等 自动模式: 用户只需要绑定云平台(比 ...

最新文章

  1. 4个月原生weex混合开发终结()
  2. redhat6.4中手动创建oracle11g数据库
  3. 给C#开发者的代码审查清单
  4. 14行代码AC——1017 A除以B (20分)(大数运算+讲解)
  5. C++中string、char[]、char*之间的转换
  6. 一个基于 osip 库的 UAC 和 UAS 的代码整理(转)
  7. arduino uno r3引脚图_Arduino入门: 安装和熟悉Arduino IDE
  8. 仿手环运动app的html,连接手环.html
  9. [RK3399][Android7.1] DRM中的Component System
  10. 游戏测试就天天打游戏?老司机给你深度解惑
  11. 介绍一个可以轻松下载病毒样本的数据库
  12. python内存泄漏_诊断和修复Python中的内存泄漏
  13. 关于原生table表单在vue中的遍历和合并行
  14. [统计模型] 基于R的潜在剖面分析(LPA)
  15. IO(BIO),NIO,AIO的深度解析和区别
  16. python真实收入曝光_程序员工资很高吗?资深HR透露真实收入,网友:说的很现实...
  17. 西北工业大学 计算机学院 姜,姜学锋(计算机学院)老师 - 西北工业大学 - 院校大全...
  18. java 后台开发中model与entity(实体类)的区别
  19. Chrome浏览器开发新截图工具,安全浏览器截图方法
  20. mysql 有数据就修改,无数据则新增

热门文章

  1. U-Boot参数设置 .
  2. bose蓝牙音箱使用说明_性价比甄选 推荐这5款超值得入手的蓝牙音箱
  3. 打开掌柜宝怎么显示服务器繁忙,掌柜宝网关系统
  4. can总线rollingcounter_[翻译]识别 CAN 总线上的攻击
  5. vcenter中修改vm配置硬盘失败问题分析处理
  6. 华为p40支持鸿蒙,华为P40来袭,支持鸿蒙系统,花粉直呼惊喜
  7. AI制作粒子消散文字效果
  8. performance API 中什么指标可以衡量首屏时间
  9. 人民广场,上海博物馆
  10. Arduino控制RGB灯(WS2812B)