kubesphere部署weavescope

2022-10-27 15:05:33 浏览数 (3)

1、kubesphere开启weavescope功能

        weavescope是一款Docker 和 Kubernetes 的可视化和监控工具,WeaveScope 监控展示了主机、容器、进程的众多常用数据和状态,并提供 WebUI 帮助我们进行基本的管理操作,并且在整个过程中不需要进行额外的配置,易于上手使用。同时,WeaveScope 提供插件和插件机制方便我们进行扩展,可以说,WeaveScope 是我们初期搭建容器监控管理系统的极佳选择。

        其agent则是通过ebpf实现的,所以需要确保在对应k8s部署集群开启对应ebpf所用的权限。

具体kubesphere开启weavescope可以参考kubesphere官方文档

您可以启用服务拓扑图以集成 Weave Scope(Docker 和 Kubernetes 的可视化和监控工具)。Weave Scope 使用既定的 API 收集信息,为应用和容器构建拓扑图。服务拓扑图显示在您的项目中,将服务之间的连接关系可视化。

安装前启用服务拓扑图

在 Linux 上安装

在 Linux 上多节点安装 KubeSphere 时,您需要创建一个配置文件,该文件会列出所有 KubeSphere 组件。

  1. 在 Linux 上安装 KubeSphere 时,您需要创建一个默认文件 config-sample.yaml。执行以下命令修改该文件: vi config-sample.yaml 备注 如果您采用 All-in-one 安装,则不需要创建 config-sample.yaml 文件,因为可以直接创建集群。一般来说,All-in-one 模式针对那些刚接触 KubeSphere 并希望熟悉系统的用户。如果您想在该模式下启用服务拓扑图(比如用于测试),请参考下面的部分,查看如何在安装后启用服务拓扑图。
  2. 在该文件中,搜索 network.topology.type,并将 none 改为 weave-scope。完成后保存文件。 network: topology: type: weave-scope # 将“none”更改为“weave-scope”。
  3. 执行以下命令使用该配置文件创建集群: ./kk create cluster -f config-sample.yaml

在 Kubernetes 上安装

当您在 Kubernetes 上安装 KubeSphere 时,需要先在cluster-configuration.yaml 文件中启用服务拓扑图。

  1. 下载 cluster-configuration.yaml 文件并进行编辑。 vi cluster-configuration.yaml
  2. 在 cluster-configuration.yaml 文件中,搜索 network.topology.type,将 none 更改为 weave-scope 以启用服务拓扑图。完成后保存文件。 network: topology: type: weave-scope # 将“none”更改为“weave-scope”。
  3. 执行以下命令开始安装: kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.3.0/kubesphere-installer.yaml kubectl apply -f cluster-configuration.yaml

在安装后启用服务拓扑图

  1. 以 admin 用户登录控制台。点击左上角的平台管理,然后选择集群管理
  2. 点击定制资源定义,然后在搜索栏中输入 clusterconfiguration。点击搜索结果查看其详情页。信息定制资源定义(CRD)允许用户在不新增 API 服务器的情况下创建一种新的资源类型,用户可以像使用其他 Kubernetes 原生对象一样使用这些定制资源。
  1. 自定义资源中,点击 ks-installer 右侧的 图标 如下图所示:
  1. ,然后选择编辑 YAML
  2. 在该配置文件中,搜寻到 network,将 network.topology.type 更改为 weave-scope。完成后,点击右下角的确定保存配置。 network: topology: type: weave-scope # 将“none”更改为“weave-scope”。
  3. 在 kubectl 中执行以下命令检查安装过程: kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

验证组件的安装

  • 在仪表板中验证组件的安装
  • 通过 kubectl 验证组件的安装

进入一个项目中,导航到应用负载下的服务,即可看到服务拓扑页签下服务的拓扑图。

2、对应物理机开始kprobe_events功能

笔者所用系统为ubuntu20.04,以下皆为该系统的操作命令:

1、执行命令:echo "" |sudo tee /sys/kernel/debug/tracing/kprobe_events

备注:如下命令解决权限问题:

/sys/kernel/debug/tracing/kprobe_events: read-only file system

cannot write  to kprobe_events: write /sys/kernel/debug/tracing/kprobe_events: file exists

2、重启weavescope agent服务,使用admin账号登陆

3、查看weavescope页面

0 人点赞