日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

全网最新 Skywalking 6.1.0部署进k8s 包含springcloud测试用例

發布時間:2025/5/22 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 全网最新 Skywalking 6.1.0部署进k8s 包含springcloud测试用例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

skywalking-kubernetes

該項目可以迅速將skywalking 6.1.0部署進kubernetes(k8s)

包含ui oap es模塊和完整的springcloud測試用例

此外將agent整合到sidecar中,也就是說每個pod中有兩個應用 app+agent sidecar,更加適合于生產環境

描述

我弄這個主要是為了學習整合skywalking作為kubernetes線下環境的APM

但是skywalking官方apache/skywalking-kubernetes的一些配置在apache孵化后過期 沒有最新的6.1.0版本 而6.1.0的性能提升比較大,此外也支持6.3.2 非常值得學習。 此外一些配置面向云環境,不適合本地開發測試


安裝使用

git地址 evanxuhe/skywalking-kubernetes cd 6.1.0

kubectl apply -f namespace.yml kubectl apply -f elasticsearch kubectl apply -f oap kubectl apply -f ui kubectl apply -f apm-springcloud-demo 復制代碼

注意修改elasticsearch/01-pv.yml中的路徑為本地路徑;節點名為本機hostname

瀏覽器打開http://127.0.0.1:31234/查看服務詳情

如果部署了測試用例 訪問http://127.0.0.1:30082/item 會發現UI拓撲圖多了兩個服務 如下

成果展示

NAME READY STATUS RESTARTS AGE apm-eureka-799b8d5449-72npx 1/1 Running 0 99m apm-item-bdf545d9c-kjqxd 1/1 Running 0 94m elasticsearch-0 1/1 Running 0 119m oap-6b56f8bbf5-7fjvb 1/1 Running 0 118m oap-6b56f8bbf5-7tldw 1/1 Running 0 118m oap-6b56f8bbf5-qzdx2 1/1 Running 0 118m ui-deployment-f4799496c-m5xw6 1/1 Running 0 117m 復制代碼

模塊概述

模塊概述

componentdescripiton
namespace創建skywalking命名空間
elasticsearch映射本地磁盤卷的es集群
oapcollector 收集agent上傳的數據并整合
uiRocketUI展示前端數據
apm-springcloud-demospringcloud應用demo,eureka+item service 產生數據供展示(可選)
busybox.yml裝了很多調試工具,比如net-tools等,方便定位k8s內問題

版本描述

componentversion
kubernetes1.14.2
docker18.06
skywalking6.1.0
elasticsearch6.4.0

鏡像

imageversiondescripiton
evanxuhe/skywalking-oap-server6.1.0修正時區為東八區
evanxuhe/skywalking-agent-sidecar6.1.0sidecar 里面裝載了agent文件夾
apache/skywalking-ui6.1.0官方ui鏡像
elasticsearch-oss6.3.2官方es鏡像

使用說明

應用全部掛在在skywalking namepace下,所以大家使用時不要忘記切換namespace 比如加-n skywalking

此外之前遇到過很奇怪的問題 oap可以正常收集數據,ui沒顯示,并且請求oap報錯IDs can't be null其實就是pod時間不對,導致查詢范圍不匹配 查看kubectl get pods -n skywalking

配置修改

es使用statefulset方式部署,oap,ui使用deployment部署 因而想要修改副本數,內存,磁盤等請修改對應目錄下的03-statefulset.yml或者03-deployment.yml

服務起停

由于k8s deployment會在pod停止后一直重啟 因而修改停止的正確做法是

kubectl edit statefulset elasticsearch -n skywalking kubectl edit deployment oap -n skywalking kubectl edit deployment ui-deployment -n skywalking 復制代碼

修改對應的replicates為0,拓展應用將replicates修改為對應副本數即可,想刷新配置也可以用這種辦法


修改內容

基于skywalking官方apache/skywalking-kubernetes 修改為:

  • oap,ui鏡像更新為最新 apache/skywalking-oap-server,apache/skywalking-ui鏡像,解決原有鏡像過期問題,修改時區為東八區
  • elasticsearch存儲卷配置gce修改為local,增加01-pv.yaml 大家需要制定自己的本地路徑
  • ui負載均衡從云環境loadbalace改為適用于本地的nodeport

故障排除

顯示pod不存在 kubectl config set-context $(kubectl config current-context) --namespace=skywalking 或者在所有命令后指定namespace 如 kubectl get pods -n skywalking 服務出現Error 查看event是否有錯誤信息

kubectl describe pod [pod名] 復制代碼

如果沒有,說明進程已經掛掉,查看日志是否有錯誤信息

kubectl log [pod名] 復制代碼

dns域名解析錯誤 遇到一個問題,es一直正常運行,但是oap報錯找不到es,這是由于域名解析問題 k8s登錄elasticsearch,查看hostname ip地址 登錄另一個可用pod,如ui 看是否能ping 通ip(網絡問題),能否ping通elasticsearch主機名(dns問題) 最后發現是coredns服務沒能正常啟動,導致所有dns不用這個錯誤很常見。。。

kubectl get pods -n kube-system 復制代碼

解決方案詳見coredns服務一直處于 CrashLoopBackOff狀態

聯系方式

歡迎大家查看我的博客評論交流

由于本人是k8s新人,難免存在很多問題,歡迎大家反饋 我的郵箱 xuhe@chehejia.com

轉載于:https://juejin.im/post/5ce699bee51d45777621baec

總結

以上是生活随笔為你收集整理的全网最新 Skywalking 6.1.0部署进k8s 包含springcloud测试用例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。