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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/253409.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能优化算法应用:基于蜜獾算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于蜜獾算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于蜜獾算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.蜜獾算法4.实验参数设定5.算法结果6.参考文献7.MATLAB…

python+requests+excel 接口测试

1、EXCEL文件接口保存方式,如图。 2、然后就是读取EXCEL文件中的数据方法,如下: 1 import xlrd2 3 4 class readExcel(object):5 def __init__(self, path):6 self.path path7 8 property9 def getSheet(self): 10 …

【JavaWeb学习笔记】6 - Tomcat

项目代码 零、在线文档 Apache Tomcat 8 (8.0.53) - Documentation Index WEB开发 1. WEB,在英语中web表示网/网络资源(页面,图片,css,js)意思,它用于表示WEB服务器(主机)供浏览器访问的资源 2. WEB服务器(主机)上供外界访问的Web资源分为: 静态web…

区块链创新应用场景不断拓展,实现去中心化

小编介绍:10年专注商业模式设计及软件开发,擅长企业生态商业模式,商业零售会员增长裂变模式策划、商业闭环模式设计及方案落地;扶持10余个电商平台做到营收过千万,数百个平台达到百万会员,欢迎咨询。 区块…

python自动化测试框架:unittest测试用例编写及执行

本文将介绍 unittest 自动化测试用例编写及执行的相关内容,包括测试用例编写、测试用例执行、测试报告等内容。 官方文档: https://docs.python.org/zh-cn/3/library/unittest.mock.html 1. 测试用例编写 在 unittest 中,一个测试用例通常…

外包干了3个月,技术倒退2年。。。

先说情况,大专毕业,18年通过校招进入湖南某软件公司,干了接近6年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试&#xf…

01-Redis核心数据结构与高性能原理

一、Redis的单线程和高性能 1. Redis是单线程吗? Redis的单线程主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的(说白了也就是执行命令的时候是由一个线程来完成的),这也是 Redis 对外提供键值存储服务的主要流程。…

DALI1.0学习——BIT解码

最近在学习DALI调光相关知识并下载了Microchip提供的基于ATMega88PA的软件工程及硬件设计参考方案。写这些文章的目的就是把自己对知识的理解作一些梳理。 芯片厂果然专业,考虑得相当周到,为了芯片销量连软件和硬件方案全都提供了。芯片厂关于DALI1.0实…

蓝桥杯day04——查询后矩阵的和

1.题目 给你一个整数 n 和一个下标从 0 开始的 二维数组 queries ,其中 queries[i] [typei, indexi, vali] 。 一开始,给你一个下标从 0 开始的 n x n 矩阵,所有元素均为 0 。每一个查询,你需要执行以下操作之一: …

JavaSE基础50题:6. 求出0~999之间的所有“水仙花数”并输出

概念 “水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身。 如:153 135333,则153是一个“水仙花数”。 【方法】 如何获得每一位的数:如(153) 个位: 153 % 10 3 十位: 153 / 10 15 15 % 10 5 百位: 153 / 100 1 代码 pu…

书-用数组存储高于60低于70的人单独存起来

#include<stdio.h> # define N 10 //书-用数组存储高于60低于70的人单独存起来 int main(){float s[N]{68.2,62.3,63.4,34.5,45.6,56.7,67.8,78.9,89.0,100};int i;float diyu[100];int j0;for(i0;i<N;i){if(s[i]>60 && s[i]<70)diyu[j]s[i];//这里的范…

消息队列zookeeper集群+kafka

消息队列zookeeper集群kafka kafka 3.0之前依赖于zookpeeper zookeeper开源分布式架构&#xff0c;提供协调服务&#xff08;Apache项目&#xff09; 基于观察者模式设计的分布式服务管理架构 存储和管理数据。分布式节点的服务结束观察者的注册&#xff0c;一旦分布式节点…

docker搭建logstash和使用方法

配置logstash 查询下载镜像【固定和elasticsearch一样的版本】 [roothao ~]# docker search logstash NAME DESCRIPTION STARS OFFICIAL AUTOMATED logstash …

【数据分享】11个城市的出租车(网约车)数据(免费获取)

出租车&#xff08;网约车&#xff09;GPS数据是我们最常使用的交通大数据之一&#xff0c;但是出租车&#xff08;网约车&#xff09;GPS数据没有公开的获取渠道&#xff0c;有些学者可能能通过与相关机构合作拿到数据&#xff0c;但是对于绝大多数普通人是没有这个机会的&…

LeetCode Hot100 200.岛屿数量

题目&#xff1a; 给你一个由 1&#xff08;陆地&#xff09;和 0&#xff08;水&#xff09;组成的的二维网格&#xff0c;请你计算网格中岛屿的数量。 岛屿总是被水包围&#xff0c;并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外&#xff0c;你可以…

2023年最详细介绍Linux 系统目录结构!你确定不来了解一下吗?

&#x1f4da;&#x1f4da; &#x1f3c5;我是默&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; ​​​ &#x1f31f;在这里&#xff0c;我要推荐给大家我的专栏《Linux》。&#x1f3af;&#x1f3af; &#x1f680;无论你是编程小白&#xff0c;还是有…

AWS CodeWhisperer:基于机器学习的代码建议工具

#AWS CodeWhisperer&#xff1a;基于机器学习的代码建议工具 AWS CodeWhisper概述 Amazon CodeWhisperer 是一种基于机器学习&#xff08;ML&#xff09;的服务&#xff0c;它可以根据Amazon CodeWhisperer 是一种基于机器学习&#xff08;ML&#xff09;的服务&#xff0c;它…

Java---接口讲解

文章目录 1. 接口概述2. 接口特点3. 接口成员特点4. 小案例应用5. 类和接口的关系6. 抽象类和接口区别 1. 接口概述 1. 接口是一种公共的规范标准&#xff0c;只要符合规范标准&#xff0c;大家都可以通用。Java中的接口更多的是体现在对行为的抽象。 2. 参考生活中的接口可以理…

玩弄GPTs:人人都会的Prompt模板

角色定义 分享一个自用的Prompt模板&#xff0c;只要学会了这个模板&#xff0c;当遇到新场景时&#xff0c;直接套用就行。 简单总结&#xff1a; 角色定义(Master)背景(Background)规则(rule)技能(skill)限制(constaints)工作流(workflow) 经过实际测试发现&#xff0c;这…

Gti GUI添加标签

通过Git Gui打开项目&#xff0c;通过菜单打开分支历史&#xff0c;我这里是名为"develop"的分支 选中需要打标签的commit&#xff0c;右键-Create tag即可 但貌似无法删除标签&#xff0c;只能通过git bash