deepflow本地部署过程

本地服务器配置,32C,48G内存
整个过程需要配置k8s,安装helm, 安装grafana, 安装deepflow以及deepflow-ctl,以及部署demo

在采用sealos进行ALL-IN-ONE部署之前,

grafana

先安装它
wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key
apt-get install -y apt-transport-https

将下方内容写入 /etc/apt/sources.list.d/grafana.list

deb [signed-by=/usr/share/keyrings/grafana.key] https://mirrors.tuna.tsinghua.edu.cn/grafana/apt/ stable main

然后

apt-get update
apt-get install grafana

然后启动grafana

获取需要的nodeIP和port

NODE_PORT=$(kubectl get --namespace deepflow -o jsonpath="{.spec.ports[0].nodePort}" services deepflow-grafana)
NODE_IP=$(kubectl get nodes -o jsonpath="{.items[0].status.addresses[0].address}")
echo -e "Grafana URL: http://$NODE_IP:$NODE_PORT  \nGrafana auth: admin:deepflow"

miniKube部署

尝试在本地 8G 2C虚拟机上部署,结果kubectl get pod -A会发现一些pod总是出错,猜测可能是内存不足,后来放弃在虚拟机上部署

先尝试了在服务器上minikube部署,结果deepflow-ctl报错
显示curl (http://192.168.123.198:30417/v1/vtaps/) failed, (Get “http://192.168.123.198:30417/v1/vtaps/”: dial tcp 192.168.123.198:30417: connect: connection refused),这个ip地址刚好是服务器网卡的ip地址,原因不明

值得注意的是,需要输入minikube start --force才能启动minikube k8s,甚至不会

minikube部署可以参考文章
完整指南:如何编译、打包和部署二次开发的 DeepFlow
https://mp.weixin.qq.com/s/-jWYq2rTRaTueuN0sAb3lA

以及:
https://deepflow.io/docs/zh/ce-install/all-in-one/

最终清空minikube环境可以参考
http://www.zhaowenyu.com/kubernetes-doc/install/kubeadm/kubeadm-k8s1.24-containderd.html

minikube delete --purge --all
sudo dpkg -P minikube

以及这篇:
Linux卸载minikube命令整理
http://t.csdnimg.cn/54QHY

sealos部署

主要参考https://deepflow.io/docs/zh/ce-install/all-in-one/

如果机器上已经有docker环境,需要全部清除干净才能安装sealos,否则会报错。

清除docker环境可以参考

https://blog.csdn.net/qq_45495857/article/details/113743109

接下来sudo sealos reset,防止出现Error: cluster status is not ClusterSuccess这个错误

然后设置本机的一个不常用的网卡ip为192.168.1.123
ifconfig ens4f0 192.168.1.123

然后接下来就可以

# install sealos
curl -o /usr/bin/sealos https://deepflow-ce.oss-cn-beijing.aliyuncs.com/sealos/sealos && \
    chmod +x /usr/bin/sealos

# install All-in-One kubernetes cluster
IP_ADDR="192.168.1.123"  # FIXME: Your IP address
PASSWORD="1"       # FIXME: Your SSH root password
sealos run labring/kubernetes:v1.24.0 labring/calico:v3.22.1 --masters $IP_ADDR -p $PASSWORD

之后的操作可以完全参考官方文档了

这样下来,deepflow-ctl可以正常使用
之前使用minikube的报错curl (http://192.168.123.198:30417/v1/vtaps/) failed, (Get “http://192.168.123.198:30417/v1/vtaps/”: dial tcp 192.168.123.198:30417: connect: connection refused)也消失了,很神奇

部署demo

参考
https://deepflow.io/docs/zh/features/distributed-tracing/spring-boot-demo/

grafana页面在这里插入图片描述

点击表中的span,可以看到火焰图,flame graph

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值