文章目录

  • 前言
  • 软件版本
  • 1、grafana + influxDB + heapster 可视化监控
  • 1.1 简介
  • 1.2 踩坑1:grafana 未连接influxDB
  • 1.2 踩坑2:grafana 默认连接influxDB,却没有数据
  • 2、日志收集工具
  • 2.1 简介
  • 2.2 踩坑1:版本要求
  • 2.3 踩坑2:启动报错,无数据
  • 3 PV PVC
  • 安装mysql应用无法创建文件


前言

本文内容并非安装项目的总体步骤,而是介绍按照正常步骤执行遇到的一些坑和解决方法。

软件版本

docker : 18.9.0
k8s: 1.12.3

1、grafana + influxDB + heapster 可视化监控

1.1 简介

grafana :监控可视化
influxDB :时序数据库
heapster :资源采集器
heapster资源采集器本身只存储2分钟数据,不过可以将采集的数据保存至三方elasticaserch或 influxDB等数据库内,grafana 通过连接数据库将监控结果以各种图标以不同时间间隔进行统计可视化展示。

1.2 踩坑1:grafana 未连接influxDB

apply后,grafana没自动连接influxDB,即grafana没有数据。使用yaml安装后,influxDB无操作页面,要配置数据库需要进入容器,非常不友好。通过问题排查,和高手请教,influxDB进行数据库创建时候,使用域名进行连接,而我刚装好的k8s,并没有安装dns服务,就按照步骤安装了coredns服务,再重新启动就OK了。

1.2 踩坑2:grafana 默认连接influxDB,却没有数据

另外有伙伴安装了coredns进行可视化监控安装,grafana自动连接了influxDB,但是却发现k8s版本高于1.12.3,并且因为电脑配置问题使用了kubeadm进行部署的k8s。所以如果要使用可视化监控,需要简单方案安装,如果非学习目的,最好使用二进制安装包进行安装,并且按照指定的版本进行安装,新版本可能会有一些新的功能,会出现这样那样的问题,导致部署不按照正常执行。

/google_containers/heapster-grafana-amd64:v4.4.3
	/google_containers/heapster-amd64:v1.5.3
	/google_containers/heapster-influxdb-amd64:v1.3.3

2、日志收集工具

2.1 简介

elasticsearch :日志存储
kibana-oss:日志可视化统计
fluentd-elasticsearch :日志收集器
原理同资源监控一样。这里不再赘述

2.2 踩坑1:版本要求

首先安装的版本为elasticsearch:v6.2.5,安装完后kibana提示版本必须为6.3.2,大家在安装的时候可能也会遇到,在 是elasticsearch搜不到并没有6.3.2版本。通过搜索,有elastic/elasticsearch:6.3.2 版本。则安装问题很快解决

elastic/elasticsearch:6.3.2
xiaochunping/kibana-oss:6.3.2
/google_containers/fluentd-elasticsearch:v2.2.0
2.3 踩坑2:启动报错,无数据

安装后第二天进去发现fluentd-elasticsearch 报错重启,且无法启动正常,这个问题目前并没有好的结局方法,日志采集非常耗费内存,如果内存偏低小于1G左右,会出现无法正常启动,另外fluented只对有标签的node进行日志采集,我通过对另外一个node进行打标签采集问题才得以解决。如果没给任何node打标签,则fluentd将不会启动,同样页面也不会采集到数据。

#添加标签
kubectl label nodes node2 /fluentd-ds-ready=true
# 删除标签
kubectl label nodes node2 /fluentd-ds-ready-

3 PV PVC

安装mysql应用无法创建文件

PVC 使用的其实是NFS,也就是在像在本地一样使用网络中其他硬盘。安装mysql,使用到PVC,却发现一只都是未开始启动,最后无意间发现在我定义NFS的盘符中有一个我测试创建的文件夹,将文件夹删掉后问题解决,并且安装过程中,请勿随意删除pv或pvc可能会导致数据丢失。