K8s 部署 Weave Scope
简介
Weave Scope由三部分组成:探针、应用程序和用户界面。范围可以部署在独立配置中,您可以自己运行所有内容,也可以使用 Weave Cloud,在这种情况下,只有探针在您的环境中运行,并且应用程序和 UI 由 Weave Cloud 托管。
Weave Scope 是一款 Docker 和 Kubernetes 的可视化监控工具。它提供了自上而下的应用程序视图以及整个基础架构视图,用户可以轻松对分布式的容器化应用进行实时监控和问题诊断,以确保容器应用程序的稳定性和性能。
Weave Scope 可以监控 Kubernetes 集群中的一系列资源的状态、资源使用情况、应用拓扑、scale,还可以通过浏览器直接进入容器内部调试等。
安装
克隆项目
git clone https://github.com/weaveworks/scope
cd scope
或者直接下载.zip包
K8s部署运行服务
修改svc.yaml
文件,增加Ingress便于访问
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: weave-scope-xxx-com
namespace: weave
labels:
app: weave-scope-xxx-com
spec:
rules:
- host: weave-scope.xxx.com
http:
paths:
- backend:
service:
name: weave-scope-app
port:
number: 80
pathType: Prefix
path: /
如果是内网环境需要提前下载好镜像:
weaveworks/scope:1.13.2
执行命令:kubectl apply -f examples/k8s
进行部署
[root@k8s-m01 guolj]# kubectl get all -n weave
NAME READY STATUS RESTARTS AGE
pod/weave-scope-agent-f4zlr 1/1 Running 0 12h
pod/weave-scope-agent-j4w7z 1/1 Running 0 12h
pod/weave-scope-app-75c96d7567-65k4g 1/1 Running 0 12h
pod/weave-scope-cluster-agent-cb7f96547-bnkql 1/1 Running 0 12h
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/weave-scope-app ClusterIP 10.43.192.36 <none> 80/TCP 12h
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/weave-scope-agent 2 2 2 2 2 <none> 12h
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/weave-scope-app 1/1 1 1 12h
deployment.apps/weave-scope-cluster-agent 1/1 1 1 12h
NAME DESIRED CURRENT READY AGE
replicaset.apps/weave-scope-app-75c96d7567 1 1 1 12h
replicaset.apps/weave-scope-cluster-agent-cb7f96547 1 1 1 12h
访问测试
注意:weave scope作为web ui目前缺少登录验证,可以利用
Ingress
的basic验证做安全管控。
参考
1.https://www.weave.works/docs/scope/latest/installing/#k8s
2.https://github.com/weaveworks/scope/tree/v1.13.2