k8s v1.14 weave-scope

前沿

        Kubernetes 集群并部署容器化应用只是第一步。一旦集群运行起来,我们需要确保一起正常,所有必要组件就位并各司其职,有足够的资源满足应用的需求。Kubernetes 是一个复杂系统,运维团队需要有一套工具帮助他们获知集群的实时状态,并为故障排查提供及时和准确的数据支持。

weave scope 介绍

        Weave Scope是Docker和Kubernetes的可视化和监控工具。它提供了一个自上而下的应用程序以及整个基础架构视图,并允许您在部署到云提供商时实时诊断分布式容器化应用程序的任何问题。

功能介绍

  • pod拓扑映射
  • 图形或表格模式
  • 灵活过滤
  • 强大的搜索功能
  • 实时应用和容器指标
  • 排除故障并管理容器
  • 使用Plugin API生成自定义指标

介绍参考

安装

在 K8s 集群中安装 Scope 的方法很简单,使用下面的命令

1
2
3
4
5
6
7
8
9
# kubectl apply -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d '\n')"
namespace/weave created
serviceaccount/weave-scope created
clusterrole.rbac.authorization.k8s.io/weave-scope created
clusterrolebinding.rbac.authorization.k8s.io/weave-scope created
deployment.apps/weave-scope-app created
service/weave-scope-app created
deployment.apps/weave-scope-cluster-agent created
daemonset.extensions/weave-scope-agent created

检查

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# kubectl get pod,svc,deploy -n weave
NAME READY STATUS RESTARTS AGE
pod/weave-scope-agent-2t4m5 1/1 Running 0 15m
pod/weave-scope-agent-6tfp5 1/1 Running 0 15m
pod/weave-scope-agent-fxj5f 1/1 Running 0 15m
pod/weave-scope-agent-gkxc6 1/1 Running 0 15m
pod/weave-scope-agent-qnbbv 1/1 Running 0 15m
pod/weave-scope-app-b99fb9585-wld6n 1/1 Running 0 15m
pod/weave-scope-cluster-agent-77bc946585-8fcjj 1/1 Running 0 15m

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/weave-scope-app ClusterIP 10.254.184.106 <none> 80/TCP 15m

NAME READY UP-TO-DATE AVAILABLE AGE
deployment.extensions/weave-scope-app 1/1 1 1 15m
deployment.extensions/weave-scope-cluster-agent 1/1 1 1 15m

创建weave-scope ingress

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# cat weave-scope.yaml 
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: weave-web-ui
namespace: weave
annotations:
kubernetes.io/ingress.class: traefik
spec:
rules:
- host: weave-scope.xxlaila.cn
http:
paths:
- path: /
backend:
serviceName: weave-scope-app
servicePort: 80

# kubectl apply -f weave-scope.yaml
ingress.extensions/weave-web-ui created

在浏览输入weave-scope.xxlaila.cn即可访问
img

拓扑结构

        Scope 会自动构建应用和集群的逻辑拓扑。比如点击顶部 Pods,会显示所有 Pod 以及 Pod 之间的依赖关系
img
点击 Hosts,会显示各个节点之间的关系,可以在 Scope 中查看资源的 CPU 和内存使用情况。
img

在线操作

        Scope 还提供了便捷的在线操作功能,比如选中某个 Host,点击 >_按钮可以直接在浏览器中打开节点的命令行终端:
img

  • 点击 Deployment 的 + 可以执行新增一个pod实列
    img

  • 查看pod的日志
    img

  • attach、restart、stop 容器,以及直接在 Scope 中排查问题
    img

更多功呢个请参考官方,或者实操

错误: 如果系统内核版本低于4.4。weave-scope pod 就会提示错误,但是适用了一下不影响正常使用,不知道后期是否会影响。错误如下:

1
<probe> WARN: 2019/11/28 08:44:07.263039 Error setting up the eBPF tracker, falling back to proc scanning: kernel not supported: got kernel 3.10.0-693.el7.x86_64 but need kernel >=4.4
坚持原创技术分享,您的支持将鼓励我继续创作!
0%