k8s实践:监控工具Weave Scope详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s实践:监控工具Weave Scope详解相关的知识,希望对你有一定的参考价值。
环境说明:
主机名 | 操作系统版本 | ip | docker version | kubelet version | 配置 | 备注 |
---|---|---|---|---|---|---|
master | Centos 7.6.1810 | 172.27.9.131 | Docker 18.09.6 | V1.14.2 | 2C2G | master主机 |
node01 | Centos 7.6.1810 | 172.27.9.135 | Docker 18.09.6 | V1.14.2 | 2C2G | node节点 |
node02 | Centos 7.6.1810 | 172.27.9.136 | Docker 18.09.6 | V1.14.2 | 2C2G | node节点 |
一、Weave Scope简介
Weave Scope自动生成应用程序的映射,使您能够直观地理解、监视和控制基于容器化微服务的应用程序。
Weave Scope可以监控kubernetes集群中的一系列资源的状态、资源使用情况、应用拓扑、scale、还可以直接通过浏览器进入容器内部调试等,其提供的功能包括:
- 交互式拓扑界面
- 图形模式和表格模式
- 过滤功能
- 搜索功能
- 实时度量
- 容器排错
- 插件扩展
Weave Scope由App和Probe
两部分组成:
- Probe 负责收集容器和宿主的信息,并发送给 App
- App 负责处理这些信息,并生成相应的报告,并以交互界面的形式展示
二、Weave Scope安装
1.安装Weave Scopea
[root@master ~]# kubectl apply -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d ‘
‘)"
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.apps/weave-scope-agent created
2.资源查看
[root@master ~]# kubectl get all -n weave
NAME READY STATUS RESTARTS AGE
pod/weave-scope-agent-hx4t2 1/1 Running 0 103s
pod/weave-scope-agent-vmbqr 1/1 Running 0 103s
pod/weave-scope-agent-zd8x7 1/1 Running 0 103s
pod/weave-scope-app-b99fb9585-77rld 1/1 Running 0 104s
pod/weave-scope-cluster-agent-58f5b5454-vnckm 1/1 Running 0 103s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/weave-scope-app ClusterIP 10.99.31.182 <none> 80/TCP 105s
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/weave-scope-agent 3 3 3 3 0 <none> 104s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/weave-scope-app 1/1 1 1 105s
deployment.apps/weave-scope-cluster-agent 1/1 1 1 105s
NAME DESIRED CURRENT READY AGE
replicaset.apps/weave-scope-app-b99fb9585 1 1 1 105s
replicaset.apps/weave-scope-cluster-agent-58f5b5454 1 1 1 105s
3.对外访问
修改service/weave-scope-app,将其模式由ClusterIP修改为NodePort,使其可以直接通过NodeIP:Port方式访问
[root@master ~]# kubectl edit service -n weave weave-scope-app
service/weave-scope-app edited
4.登录
登录url:http://172.27.9.131:30022/
三、使用Weave Scope
1.资源查看的两种方式
以pod为例查看资源,资源有两种展现形式:
图形式性:
图形方式还会展示pod之间的拓扑关系
表格形式:
Weave Scope监控对象有进程、容器、pods、主机等,监控项有cpu、内存、平均负载等。
2.查看资源使用详情
点击某个pod,会展示状态、资源使用、进程等详细信息
3.pod日志查看
资源使用详情中点击‘Get logs‘
4.pod描述查看
5.资源伸缩
点击deployment类型的Controllers,可以进行deployment的伸缩和查看
6.容器操作
可以对容器进行attach、exec shell、restart、paus和stop操作
进入容器,执行df -h操作
7.展示条件选择
左下角可按条件展示,有容器类型(系统或者应用)、容器状态(停止或者运行)、命名空间等。
8.搜索功能
按容器名搜索
按资源使用搜索
以上是关于k8s实践:监控工具Weave Scope详解的主要内容,如果未能解决你的问题,请参考以下文章
部署Weave-Scope服务——Docker和k8s的故障排除和监控利器