欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > k8s离线安装安装skywalking9.4

k8s离线安装安装skywalking9.4

2024/10/24 8:28:45 来源:https://blog.csdn.net/2301_79691134/article/details/140157157  浏览:    关键词:k8s离线安装安装skywalking9.4

目录

  • 概述
  • 资源下载
  • Skywalking功能介绍
  • 成果速览
  • 实践
    • rbac
    • oap
    • oap-svc
    • ui
    • ui-svc
  • 结束

概述

   k8s 离线安装安装 skywalking9.4 版本,环境:k8s版本为:1.27.x 、spring boot 2.7.x spring cloud :2021.0.5 、spring.cloud.alibab:2021.0.4.0 、jkd: 1.8

完整的整合视频测试:k8s整合gitlab使用芋道做微服务的cicd

在这里插入图片描述

  • 探针 基于不同的来源可能是不一样的, 但作用都是收集数据, 将数据格式化为 SkyWalking 适用的格式.
  • 平台后端, 支持数据聚合, 数据分析 以及驱动数据流从探针到用户界面的流程。分析包括 Skywalking 原生追踪和性能指标以及第三方来源,包括 Istio 及 Envoy telemetry , Zipkin 追踪格式化等。 你甚至可以使用 Observability Analysis Language 对原生度量指标 和 用于扩展度量的计量系统 自定义聚合分析。
  • 存储 通过开放的插件化的接口存放 SkyWalking 数据. 你可以选择一个既有的存储系统, 如 ElasticSearch, H2 或 MySQL 集群(Sharding-Sphere 管理),也可以选择自己实现一个存储系统. 当然, 我们非常欢迎你贡献新的存储系统实现。
  • UI 一个基于接口高度定制化的Web系统,用户可以可视化查看和管理 SkyWalking 数据。

资源下载

镜像可以自己准备,懒人速递:skywalking-oap-server-9.4离线镜像可安装版本 skywalking-ui-9.4离线镜像安装版本 busybox镜像离线安装包stable-musl版本

Skywalking功能介绍

  • 多种监控手段,可以通过语言探针和service mesh获得监控的数据
  • 支持多重语言的自动探针,包括JAVA, .NET Core和NodeJS
  • 轻量高效,无需大数据平台和大量的服务器资源
  • 模块化,UI ,存储,集群管理都有多种机制可选
  • 支持告警
  • 优秀的可视化解决方案

成果速览

9.4版本的功能还是很强大的,如下图所示。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

实践

rbac

# vim rbac.yaml
apiVersion: v1
kind: ServiceAccount
metadata:labels:app: skywalkingname: skywalking-oapnamespace: default
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:name: skywalkingnamespace: defaultlabels:app: skywalking
rules:
- apiGroups: [""]resources: ["pods", "endpoints", "services", "nodes"]verbs: ["get", "watch", "list"]
- apiGroups: ["extensions"]resources: ["deployments", "replicasets"]verbs: ["get", "watch", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:name: skywalkingnamespace: defaultlabels:app: skywalking
roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: skywalking
subjects:
- kind: ServiceAccountname: skywalking-oapnamespace: default

oap

# vim dp.yaml
---
apiVersion: apps/v1
kind: Deployment
metadata:labels:app: oapname: oapnamespace: default
spec:replicas: 1selector:matchLabels:app: oaptemplate:metadata:labels:app: oapspec:serviceAccountName: skywalking-oap# affinity:#   nodeAffinity:#     requiredDuringSchedulingIgnoredDuringExecution:#       nodeSelectorTerms:#       - matchExpressions:#         - key: app1#           operator: In#           values:#           - skywalking# initContainers:# - name: wait-for-elasticsearch#   image: harbor.easzlab.io.local:8443/library/busybox:stable-musl#   imagePullPolicy: IfNotPresent#   command: ['sh', '-c', 'for i in $(seq 1 60); do nc -z -w3 elasticsearch.default.svc.cluster.local 9200 && exit 0 || sleep 5; done; exit 1']containers:- name: oapimage: harbor.easzlab.io.local:8443/library/skywalking-oap-server:9.4.0imagePullPolicy: IfNotPresentlivenessProbe:tcpSocket:port: 12800initialDelaySeconds: 15periodSeconds: 20readinessProbe:tcpSocket:port: 12800initialDelaySeconds: 15periodSeconds: 20ports:- containerPort: 11800name: grpc- containerPort: 1234name: prometheus-port- containerPort: 12800name: restenv:- name: JAVA_OPTSvalue: "-Dmode=init-only -Xmx2g -Xms2g"- name: TZ                                       # 设置时区value: Asia/Shanghai- name: SW_OTEL_RECEIVERvalue: "default"- name: SW_ENABLE_UPDATE_UI_TEMPLATE             # 开启试图可编辑,默认为:falsevalue: "true"- name: SW_CLUSTERvalue: kubernetes- name: SW_CLUSTER_K8S_NAMESPACEvalue: "default"- name: SW_CLUSTER_K8S_LABELvalue: "app=oap"- name: SKYWALKING_COLLECTOR_UIDvalueFrom:fieldRef:fieldPath: metadata.uid- name: SW_STORAGE                               # 使用es作为存储value: elasticsearch- name: SW_STORAGE_ES_CLUSTER_NODES              # es地址value: "elasticsearch.default.svc.cluster.local:9200"# - name: SW_ES_USER                               # es用户#   value: "elastic"# - name: SW_ES_PASSWORD                           # es密码#   value: "admin123"- name: SW_TELEMETRYvalue: "prometheus"

oap-svc


apiVersion: v1
kind: Service
metadata:name: oap-svcnamespace: defaultlabels:app: oap
spec:type: ClusterIPports:- port: 11800name: grpc- port: 1234name: prometheus-port- port: 12800name: restselector:app: oap

ui

# vim ui-dp.yaml
---
apiVersion: apps/v1
kind: Deployment
metadata:name: uinamespace: defaultlabels:app: ui
spec:replicas: 1selector:matchLabels:app: uitemplate:metadata:labels:app: uispec:# affinity:containers:- name: uiimage: harbor.easzlab.io.local:8443/library/skywalking-ui:9.4.0imagePullPolicy: IfNotPresentports:- containerPort: 8080name: pageenv:- name: SW_OAP_ADDRESSvalue: http://oap-svc:12800            # 根据oap的svc一致

ui-svc

# vim ui-svc.yaml
---
apiVersion: v1
kind: Service
metadata:labels:app: uiname: ui-svcnamespace: default
spec:type: ClusterIPports:- port: 80targetPort: 8080protocol: TCPselector:app: ui

结束

k8s离线安装安装skywalking9.4总结。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com